Installation Methods
You can install the plugin in two ways:- From Figma Community (Recommended for most users)
- Local Development Plugin (For contributors or customization)
Installing from Figma Community
1
Open the plugin page
Visit the Cursor Talk to Figma MCP Plugin on Figma Community.
2
Install the plugin
Click the “Install” button on the plugin page.
3
Open Figma
Open any Figma or FigJam file where you want to use the plugin.
4
Run the plugin
- Right-click on the canvas or use the menu
- Go to Plugins → Cursor MCP Plugin
- The plugin UI will appear
Installing for Local Development
For plugin development or customization:1
Clone the repository
2
Open Figma plugin development
In Figma Desktop:
- Go to Plugins → Development → New Plugin
- Choose “Link existing plugin”
3
Link the plugin manifest
Navigate to and select:The plugin will now appear in your development plugins list.
4
Run the development plugin
- Go to Plugins → Development → Cursor MCP Plugin
- The plugin UI will open
Plugin Configuration
The plugin requires a WebSocket connection to communicate with your MCP server.Plugin Manifest
The plugin is configured viamanifest.json:
- editorType: Works in both Figma and FigJam
- networkAccess: Connects to localhost WebSocket server on port 3055
- documentAccess:
dynamic-pageallows access to the current page
Using the Plugin
1
Start the WebSocket server
Before using the plugin, ensure the WebSocket server is running:You should see:
2
Open the plugin in Figma
Run the Cursor MCP Plugin from the Plugins menu.
3
Connect to WebSocket
In the plugin UI:
- The default WebSocket URL is
ws://localhost:3055 - Click “Connect” to establish the connection
- Enter a channel name (e.g., “test” or “my-project”)
- Click “Join Channel”
4
Verify connection
You should see a success message indicating you’ve joined the channel. The WebSocket server logs will also show the connection.
5
Join the same channel in your AI agent
In Cursor or Claude Code, use the
join_channel tool with the same channel name.Channel-Based Communication
The plugin uses channels to isolate communication between different sessions:- Each channel is independent
- Multiple users can use different channels simultaneously
- Only clients in the same channel can communicate
- Use descriptive channel names for different projects
Example workflow:
Plugin Architecture
The plugin consists of three main files:code.js (Main Thread)
Handles all Figma API operations:- Reads and modifies Figma nodes
- Executes 30+ commands (create, update, delete, export)
- Manages chunking for large operations
- Sends results back through WebSocket
ui.html (Plugin UI)
Provides the user interface:- WebSocket connection management
- Channel selection
- Connection status display
- Real-time message logging
manifest.json (Configuration)
Defines plugin metadata and permissions:- Network access configuration
- Editor compatibility (Figma/FigJam)
- Document access permissions
Troubleshooting
Plugin won’t connect
WebSocket server not running
WebSocket server not running
Ensure
bun socket is running before launching the plugin.Check the terminal for:Port 3055 blocked
Port 3055 blocked
If port 3055 is in use, you can specify a different port:Update the plugin UI to connect to the new port.
Firewall blocking connection
Firewall blocking connection
Ensure your firewall allows localhost connections on port 3055.
Commands not executing
Not in the same channel
Not in the same channel
Verify both the plugin and your AI agent are in the same channel.
Plugin not responding
Plugin not responding
Try:
- Closing and reopening the plugin
- Restarting the WebSocket server
- Rejoining the channel
Permission errors
Permission errors
Some operations require:
- Selected nodes (for modification commands)
- Edit access to the file
- Proper node types (e.g., can’t set text on rectangles)
Windows + WSL specific issues
See the Windows + WSL Setup Guide for platform-specific troubleshooting.Development Notes
Plugin is not built/bundled
The plugin files are used directly:code.jsis vanilla JavaScript (no build step)ui.htmlis plain HTML with inline JavaScript- No transpilation or bundling required
Making changes
When developing the plugin locally:1
Edit the files
Modify
code.js or ui.html in src/cursor_mcp_plugin/2
Reload the plugin
In Figma:
- Close the plugin if it’s running
- Go to Plugins → Development → Cursor MCP Plugin
- The changes will be reflected immediately
Next Steps
Available Tools
Explore all 50+ MCP tools available
Best Practices
Learn effective design automation patterns
Advanced Configuration
Custom WebSocket URL
For non-standard setups, you can modify the WebSocket URL in the plugin UI:- Different port:
ws://localhost:4000 - Remote server:
ws://your-server.com:3055 - Secure connection:
wss://your-server.com:3055