
Figma Edit Mcp
io.github.neozhehan由 GitHub 账号 neozhehan 发布v2.3.3更新于 Oct 24, 2026
Programmatically read, create, and modify Figma designs via MCP.
发布方自己的服务:Figma MCP Server
概览
一个本地 MCP 服务器,通过 Figma 插件把 AI 助手接入 Figma,让助手在安全校验下读取、创建和修改设计元素。
- 可以做什么
- 查看页面和节点,包括递归读取属性与绑定变量,并把编辑器视图导航到页面或节点。创建形状、画框、文本、SVG 节点、组件、实例和组件集。变换、重命名、克隆、删除、编组、扁平化和重新挂载节点,并设置填充、描边、圆角、效果、自动布局和库样式。编辑文本内容与排版,并管理共享样式、组件属性、实例覆盖和变量。读取和写入 Dev Mode 标注与原型交互,并把节点导出为 PNG、JPG、SVG 或 PDF。
- 适用场景
- 适合让助手执行重复或批量的 Figma 工作,例如重命名图层、批量调整样式、替换整页文本,或在组件实例之间复制覆盖,同时由你保留设计判断。
- 运行要求
- 通过 npx 以 stdio 在本地运行,需要 Node.js。需要 Figma 桌面应用,并从 npm 包导入随附插件,还需单独启动并保持运行的 WebSocket 桥接进程。助手必须先调用 channel_join 才能使用其他工具。未声明 API 密钥或环境变量。
安装
在 SourceWeft 中
- 打开 控制台中的 Figma Edit Mcp,将其添加到工作区。
- 为需要使用其工具的对话启用该服务。
Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。
其他 MCP 客户端
参照 仓库 中的启动说明。
README
Figma Edit MCP
[npm version] [npm downloads] [CI] [Featured by IDEO]
Connect AI assistants to Figma via Model Context Protocol to read designs, create and modify elements, and manage design systems programmatically.
This plugin empowers your AI assistant to become a Figma assistant, executing design updates Safer, Cleaner, and Faster than a human ever could.
This plugin allows you as a Designer to focus purely on creative decision-making, leaving the error-prone & repetitive manual changes to the automated systems.
🏆 Featured by IDEO: Letting AI edit live Figma files without trusting it to behave
📖 Documentation: neozhehan.github.io/figma-edit-mcp
What This Does for You
The project has three goals: Safer, Cleaner, and Faster.
- 🛡️ Safer: The plugin checks every action the AI requests before that action runs. If an action would damage the file, the plugin refuses it and tells the AI why. For example, the plugin will not delete a color variable while layers still use it. Figma itself does not warn you when you delete a variable that is in use — the deletion leaves broken references that are very hard to find afterwards.
- ✨ Cleaner: Because damaging actions are refused, the file does not accumulate broken references or leftover values. Bulk updates cover every layer that matches your request, not just the layers a person remembers to check.
- ⚡ Faster: The AI applies one change across hundreds of layers in seconds. For example, it can replace a product name in every text layer on a page, or copy the overrides from one component instance to fifty others.
These goals support each other: when the plugin refuses mistakes, the file stays consistent, and a consistent file is easier for both you and the AI to work with.
Read the full reasoning behind these goals →
What the AI Cannot Do to Your File
AI assistants sometimes invent things. An AI can name a layer that does not exist, or misremember which layer it was editing. This plugin does not depend on the AI being right. The plugin checks every edit itself, inside Figma, and refuses any edit that fails a check. The AI cannot skip these checks.
What the plugin enforces:
- The AI can only edit the area you chose. When you connect, you choose one page or one frame for the session. The plugin refuses any edit outside that area. If you choose no area, the AI can read the file but cannot edit any layers.
- Every edit must name its exact target layer. The plugin compares the layer name the AI supplies with the real layer's name. If the names do not match, the plugin refuses the edit. This stops the AI from editing a layer it invented or misremembered.
- A bulk edit with one bad item changes nothing. The plugin validates every item in a bulk edit before it changes the first one. If any item fails validation, the plugin rejects the entire bulk edit.
- Protected layers stay protected. The plugin refuses edits to locked layers and to assets from shared libraries. It also refuses to add, delete, or move layers inside a component instance.
- The AI cannot delete its own working area. The plugin refuses any action that would delete or replace the page or frame you assigned for the session.
- Variables and styles require separate permission. Editing your variables or styles requires its own checkbox in the plugin, and both checkboxes are off by default. You grant that permission; the AI cannot grant it to itself.
One honest limit: the plugin checks where an edit happens and which layer it touches. It cannot check whether the edit is the one you wanted. A wrong edit that follows all the rules will go through. So you review the AI's work the same way you would review a colleague's work.
The exact rules, and the conditions under which each one holds, are written down in SAFETY.md. That document is for developers. (Your AI assistant loads the same rules at runtime via the figma-edit skill or the figma-edit://guide/* resources.)
How the Work Is Divided
You do not need to know every Figma feature to direct this system. The work splits three ways:
- You decide what the design should be. You describe the change in plain language, and you judge the result. You do not need to know which Figma menu or panel performs the change.
- The AI assistant turns your request into specific Figma operations and carries out the repetitive work across many layers.
- The plugin runs inside Figma, checks each operation, and refuses the unsafe ones.
The AI contributes scale. The plugin contributes protection. You contribute the design judgment.
Supported AI Integrations
- Cursor
- GitHub Copilot (VS Code)
- Google Antigravity
- Claude Code (VS Code & CLI)
- Claude Desktop (Chat, Cowork & Code)
- LM Studio
Quick Start
The quickest way to run Figma Edit MCP is directly from the NPM registry. You do not need to clone this repository.
1. Configure your AI assistant
Add the server to your AI assistant's MCP configuration:
The config file location depends on your host — see Integration-Specific Setup below. Bun users can substitute bunx for npx; both resolve the same package.
2. Start the WebSocket bridge
In a terminal, start the bridge that connects the MCP server to the Figma plugin. Keep this terminal running:
3. Install the Figma plugin
The Figma plugin ships inside the NPM package. Install the package once to materialize the plugin files on disk:
Then in the Figma desktop app:
- Open Plugins → Development → Import plugin from manifest…
- Select
node_modules/figma-edit-mcp/figma_plugin/manifest.jsonfrom the directory above.
The plugin is now available under Plugins → Development in any Figma file.
4. (Optional) Install the agent skill
The package also ships a cross-tool skill that teaches your agent the server's safety constraints, error recovery, and tool selection — loaded on demand, so it costs almost nothing until needed. Agents that support the open SKILL.md standard (Claude Code, GitHub Copilot, OpenAI Codex, Cursor, Gemini CLI, Google Antigravity) discover it once it's in their skills directory:
Clients that don't support skills can still reach the same guidance over the MCP connection as resources under figma-edit://guide/* — no install required.
Running from a local clone? See CONTRIBUTING.md for the contributor-only --local development workflow.
Integration-Specific Setup
Paste the JSON snippet from the Quick Start into your host's MCP config file:
Manual Configuration
If you prefer to edit your host's MCP config directly, paste this snippet into the appropriate config file:
Running from a local clone? See CONTRIBUTING.md for the --local workflow.
Contributing
For local development — building from source, running the bridge from a clone, and the --local integrate workflow — see CONTRIBUTING.md.
Windows + WSL Guide
To allow Figma (running on Windows) to connect to the bridge (running inside WSL), the bridge needs to listen on 0.0.0.0 instead of localhost:
Then point the Figma plugin's WebSocket address at your WSL instance's IP.
Usage
- Start the WebSocket bridge:
npx -y --package figma-edit-mcp figma-edit-mcp-socket - Configure the MCP server in your AI assistant (see Integration-Specific Setup)
- Open Figma and launch the Figma Edit MCP plugin from Plugins → Development
- Use the
channel_joinMCP tool to establish communication - Use your AI assistant to interact with Figma via the available MCP tools
MCP Tools
Tools are grouped into a two-level, underscore-separated namespace (group_action). Reads are *_list / *_info; writes use verb leaves. Anything that mutates a node lives under node_*.
page — pages
node — read, transform, and style any node
create — make new nodes
style — shared styles
text — text content & typography
component — components & variants
instance — component instances
variable — variables & collections
annotation — Dev Mode annotations
reaction — prototype reactions
channel — connection
MCP Prompts
Built-in prompts guide complex multi-step design tasks:
Best Practices
When working with Figma Edit MCP:
- Always join a channel first with
channel_joinbefore sending any other commands.
Notes
Automatic Node ID Normalization
Node IDs copied from Figma URLs use dashes (20485-41), but the plugin API expects colons (20485:41). The MCP server automatically converts dash-format IDs before forwarding, so either format works without manual intervention.
Acknowledgements
Built on prior work by sonnylazuardi and the contributors to grab/cursor-talk-to-figma-mcp. Thank you for the foundation this project builds on.
Thanks to @dusskapark for the following contributions:
- Bulk text content replacement — Batch-update text across large designs efficiently. Demo video
- Instance override propagation — Propagate component instance overrides from a source to multiple targets in a single command, dramatically reducing repetitive design work. Demo video
License
The MIT License (MIT)
Copyright (c) 2025 sonnylazuardi
Copyright (c) 2026 Neo Product LLC
来源:README.md,提交 5d8489c
工具
0版本历史
1- v2.3.3最新Sep 16, 2026
评分
已满足适用检查项的 50%
该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。
- 近 30 天内可连通25 分
请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。
- 已声明认证方式10 分
请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。
- 已列出工具15 分
请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。
- 描述必需15 分
- 图标10 分
- 文档15 分
- 许可证10 分
其他 Figma 集成

Figma MCP Server
com.figma.mcp官方发布者
Figma 官方远程 MCP 服务器,为 AI 编程助手提供 Figma 设计上下文,用于生成和更新代码。

Figma Vector MCP
由 GitHub 账号 workingmodel 发布
本地 MCP 服务器加 Figma 插件,让助手在 Figma 画布上创建和编辑可完全编辑的矢量节点、形状、文本与组件。

Figma CodeKit MCP
由 GitHub 账号 Mehmoodqureshi 发布
把 Figma 画板转换为 HTML、React 或 Next.js 代码,并将渲染结果与设计稿做像素比对,反复迭代直至收敛。

figma-mcp
由 GitHub 账号 Mehmoodqureshi 发布
把 Figma 画板确定性地转换为 HTML、React 或 Next.js 代码,在 Chromium 中渲染并与设计稿做像素比对,直到一致。

figma-vault
由 GitHub 账号 NBhey 发布
本地 MCP 服务器,让助手读取一次性拉取到本地库中的 Figma 设计,离线可用,无需 Figma 令牌,也不受速率限制。