
Figma Edit Mcp
Bridges AI assistants to Figma's design environment through a WebSocket plugin architecture. Exposes document reading (pages, nodes, selection), node creation (frames, text, rectangles, SVG imports), and comprehensive editing operations including auto-layout configuration, styling, effects, and bulk modifications. The implementation enforces stricter validation than Figma's native UI, preventing actions like deleting in-use variables. Works with Cursor, VS Code Copilot, Claude Desktop, and other MCP hosts. You run a bridge process locally, import the plugin into Figma Desktop, then use natural language to execute batch design updates. Designed for programmatic design system maintenance and eliminating repetitive manual edits across large files.
- GitHub stars
- 14
- tools
- 45
- transport
- STDIO
- last updated
- Aug 4, 2026
Tools
45 toolsPublic tool metadata for what this MCP can expose to an agent.
page_infoList the document's pages; with `pageIds`, return those pages and their top-level children
List the document's pages; with `pageIds`, return those pages and their top-level children
No parameter schema in public metadata yet.
node_infoRead one or more nodes — recursive traversal with `properties`, `filter`, and `maxDepth` (the workhorse read; also returns bound variables / explicit modes)
Read one or more nodes — recursive traversal with `properties`, `filter`, and `maxDepth` (the workhorse read; also returns bound variables / explicit modes)
No parameter schema in public metadata yet.
node_transformMove and/or resize a node by setting absolute `x` / `y` / `width` / `height`
Move and/or resize a node by setting absolute `x` / `y` / `width` / `height`
No parameter schema in public metadata yet.
node_renameRename a node
Rename a node
No parameter schema in public metadata yet.
node_deleteDelete one or more nodes in a single validated batch
Delete one or more nodes in a single validated batch
No parameter schema in public metadata yet.
node_cloneDuplicate a node, optionally at a new position
Duplicate a node, optionally at a new position
No parameter schema in public metadata yet.
view_navigateNavigate the editor view to a page or node(s)
Navigate the editor view to a page or node(s)
No parameter schema in public metadata yet.
node_groupWrap nodes in a new group
Wrap nodes in a new group
No parameter schema in public metadata yet.
node_ungroupDissolve a group, promoting its children
Dissolve a group, promoting its children
No parameter schema in public metadata yet.
node_flattenFlatten a node and its children into a single vector
Flatten a node and its children into a single vector
No parameter schema in public metadata yet.
node_insert_childReparent a node under a new parent at an optional index
Reparent a node under a new parent at an optional index
No parameter schema in public metadata yet.
node_set_auto_layoutConfigure a frame's auto-layout (mode, padding, spacing, alignment, sizing)
Configure a frame's auto-layout (mode, padding, spacing, alignment, sizing)
No parameter schema in public metadata yet.
node_set_fillSet a node's fill to a color or image, or clear it
Set a node's fill to a color or image, or clear it
No parameter schema in public metadata yet.
node_set_strokeSet stroke color and weight (uniform or per-side)
Set stroke color and weight (uniform or per-side)
No parameter schema in public metadata yet.
node_set_corner_radiusSet corner radius (uniform or per-corner)
Set corner radius (uniform or per-corner)
No parameter schema in public metadata yet.
node_set_effectsSet the effect array (shadows, blurs)
Set the effect array (shadows, blurs)
No parameter schema in public metadata yet.
node_apply_styleLink a node to a shared library style (paint/text/effect/grid)
Link a node to a shared library style (paint/text/effect/grid)
No parameter schema in public metadata yet.
node_bind_variableBind a variable to a node property, or set an explicit variable mode
Bind a variable to a node property, or set an explicit variable mode
No parameter schema in public metadata yet.
node_export_visualRender a node to an image (PNG / JPG / SVG / PDF)
Render a node to an image (PNG / JPG / SVG / PDF)
No parameter schema in public metadata yet.
create_shapeCreate a rectangle, ellipse, polygon, or star (`type`) with optional fill/stroke
Create a rectangle, ellipse, polygon, or star (`type`) with optional fill/stroke
No parameter schema in public metadata yet.
create_frameCreate a frame with optional fill/stroke and full auto-layout
Create a frame with optional fill/stroke and full auto-layout
No parameter schema in public metadata yet.
create_textCreate a text node with optional font size/weight/color
Create a text node with optional font size/weight/color
No parameter schema in public metadata yet.
create_svgCreate a node from an SVG markup string
Create a node from an SVG markup string
No parameter schema in public metadata yet.
create_componentConvert an existing frame into a main component
Convert an existing frame into a main component
No parameter schema in public metadata yet.
create_instanceInstantiate a component at a position
Instantiate a component at a position
No parameter schema in public metadata yet.
create_component_setCombine components into a component set (variants)
Combine components into a component set (variants)
No parameter schema in public metadata yet.
style_listList all local styles (paint/text/effect/grid)
List all local styles (paint/text/effect/grid)
No parameter schema in public metadata yet.
style_manageCreate a named style, or update one when `styleId` is given
Create a named style, or update one when `styleId` is given
No parameter schema in public metadata yet.
style_deleteDelete a local style by id (detaches consumers, which keep their resolved values)
Delete a local style by id (detaches consumers, which keep their resolved values)
No parameter schema in public metadata yet.
text_set_contentBatch-set the text of one or more text nodes
Batch-set the text of one or more text nodes
No parameter schema in public metadata yet.
text_set_styleSet any combination of typography properties on a text node
Set any combination of typography properties on a text node
No parameter schema in public metadata yet.
component_listList components, with filtering and scope options
List components, with filtering and scope options
No parameter schema in public metadata yet.
component_manage_propertyAdd or edit a component-property definition (BOOLEAN/TEXT/INSTANCE_SWAP)
Add or edit a component-property definition (BOOLEAN/TEXT/INSTANCE_SWAP)
No parameter schema in public metadata yet.
component_delete_propertyRemove a component-property definition
Remove a component-property definition
No parameter schema in public metadata yet.
instance_set_propertySet one property on an instance (toggle, text, swap, or variant)
Set one property on an instance (toggle, text, swap, or variant)
No parameter schema in public metadata yet.
instance_get_overridesRead the override properties from a source instance
Read the override properties from a source instance
No parameter schema in public metadata yet.
instance_set_overridesApply copied overrides to target instances
Apply copied overrides to target instances
No parameter schema in public metadata yet.
variable_listList variables/collections, or detail by ID; optionally scan consumers
List variables/collections, or detail by ID; optionally scan consumers
No parameter schema in public metadata yet.
variable_manageCreate collections and variables and set values/aliases
Create collections and variables and set values/aliases
No parameter schema in public metadata yet.
variable_deleteDelete variables or a collection (rejected if still in use)
Delete variables or a collection (rejected if still in use)
No parameter schema in public metadata yet.
annotation_listRead annotations on a node; optionally include categories
Read annotations on a node; optionally include categories
No parameter schema in public metadata yet.
annotation_setBatch create or update native annotations (markdown)
Batch create or update native annotations (markdown)
No parameter schema in public metadata yet.
reaction_listRead prototype reactions (click flows, overlays) from nodes
Read prototype reactions (click flows, overlays) from nodes
No parameter schema in public metadata yet.
reaction_updateReplace a node's reactions with a full new array
Replace a node's reactions with a full new array
No parameter schema in public metadata yet.
channel_joinJoin a WebSocket channel to establish communication with the plugin
Join a WebSocket channel to establish communication with the plugin
No parameter schema in public metadata yet.
Sponsors
Readme
Figma Edit MCP
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.
Details
- Repository
- github.com/neozhehan/figma-edit-mcp
- Category
- Design & Creative
- Package
figma-edit-mcp- Transport
- STDIO
- Registry
- MCP registry, active