A tool for editing Figma files via MCP.
⚠️ This is a prototype! Use at your own risk! ⚠️
- Node.js v20.0.0 or higher
- pnpm v8.0.0 or higher
- Clone the Repository
git clone https://github.com/ivoilic/figma-edit-mcp.git
cd figma-edit-mcp- Install Dependencies
pnpm installThis command installs dependencies for all workspaces.
- Build the Project
pnpm build
# or
pnpm build:server
# and
pnpm build:plugin- Install the Figma Plugin
To install the Figma plugin locally in development mode:
- Open the Figma desktop app
- From the menu in the top right, select "Plugins" → "Development" → "Import plugin from manifest..."
- Select the figma-plugin/manifest.json file
- The plugin will be installed in development mode
To use this plugin with Cursor, you need to add the MCP server configuration to your MCP settings file (typically ~/.cursor/mcp.json or similar).
Note: You can currently only have this enabled in one Cursor window at a time!
- Add the following JSON snippet to your MCP servers configuration:
"figma-edit-mcp": {
"command": "node",
"args": [
"/path/to/figma-edit-mcp/figma-mcp-server/build/index.js"
],
"env": {
"FIGMA_ACCESS_TOKEN": "your_figma_personal_access_token"
}
}- Replace
/path/to/figma-edit-mcpwith the actual path to the repository. - Replace
your_figma_personal_access_tokenwith your Figma Personal Access Token.
- Log in to Figma
- Click on your profile icon in the top right
- Select "Settings"
- Go to the "Personal access tokens" section in the "Account" tab
- Click "Create a new personal access token"
- Enter a name for the token and click "Create token"
- Copy the displayed token (note that this token will only be shown once)
- Open Figma
- From the menu in the top right, select "Plugins" → "Development" → "Figma MCP Plugin"
- The plugin will launch and connect to the MCP server if it is running
get_mcp_tool_usage: Tool to get usage information for MCP toolsget_file: Tool to retrieve the contents of a Figma file (including node IDs for use with update_node)create_node: Create any Figma node type with any properties. Provides maximum flexibility for creating nodes at the lowest level. Supports using variables in properties.update_node: Update any property of an existing Figma node or delete it. Provides maximum flexibility for modifying nodes at the lowest level. Supports using variables in properties.get_variables: Retrieve all variables from a Figma file. Variables are reusable design tokens.create_variable: Create a new variable in a Figma file. Supports COLOR, FLOAT, STRING, and BOOLEAN types.update_variable: Update an existing variable (name, values, description, scopes).delete_variable: Delete a variable from a Figma file.
Real design should done by humans who care about their craft. AI should only be used to help with tedious tasks.
Based on figma-edit-mcp by asamuzak
Released under the ISC License
Copyright © 2025 by Ivo Ilić
The maintainers of this repo make no claim to the ownership of the brand name "Figma". The name is used purely to denote this softwares compatibility with the Figma platform.
Usage of this software could potentially violate Figma's terms of service or end user license agreement. Use this software at your own risk.