home / mcp / cursortalk mcp server
MCP server store
Configuration
View docs{
"mcpServers": {
"andreycretsu-cursor-talk-to-figma-mcp-main": {
"command": "bunx",
"args": [
"cursor-talk-to-figma-mcp@latest"
]
}
}
}You can connect Cursor MCP with Figma to read designs, inspect nodes, and apply edits programmatically. This MCP server acts as the bridge between Cursor and Figma, exposing a set of tools that let you query documents, read and modify design data, manage annotations, prototype connections, and automate common design tasks through a consistent API.
You use this MCP server by running the MCP server itself and the WebSocket facilitator, then connecting a Cursor MCP client to the running channel. Start your WebSocket server first, then launch the MCP server, and finally connect the Figma plugin through the Cursor MCP client to begin sending commands.
Prerequisites you need before installation:
- Bun: a fast JavaScript runtime and package manager.
- Cursor installed and prepared to accept MCP servers in your active project.
Step-by-step commands to set up and run the MCP server and WebSocket server are provided here so you can start experimenting quickly.
curl -fsSL https://bun.sh/install | bash
bun setup
bun socket
bunx cursor-talk-to-figma-mcp@latest
```
To install the Figma plugin locally for development:
```bash
# In Figma, install the Cursor MCP plugin by pointing to the local plugin directory
```
Windows + WSL users should follow the dedicated steps to enable network access within WSL and then run the same server commands.MCP Server configuration for Cursor integration is stored in Cursor’s MCP config file. The example below shows how to add the TalkToFigma MCP server, using Bun to run the MCP server package.
{
"mcpServers": {
"TalkToFigma": {
"command": "bunx",
"args": ["cursor-talk-to-figma-mcp@latest"]
}
}
}Always join a channel before sending commands to ensure you are communicating with the correct Figma context. Validate the current document and selection before applying edits, and use batch operations for large design changes to minimize disruptions.
If you cannot connect from the Figma plugin, verify that the WebSocket server is running (bun socket) and that you have started the MCP server (bunx cursor-talk-to-figma-mcp@latest). For Windows/WSL, ensure hostname exposure is enabled by uncommenting hostname: "0.0.0.0" in the socket configuration. If you encounter authentication or channel issues, rejoin the channel and retry the command sequence.
Use the MCP tools to read document information, inspect selections, and modify nodes with safety checks. When making bulk changes, prefer batch operations (e.g., set_multiple_text_contents) and verify results with targeted exports (e.g., export_node_as_image). Utilize text scanning and component instance operations to minimize manual edits and preserve design structure.
The MCP server exposes a rich set of tools to interact with Figma, including document and selection queries, text operations, layout adjustments, styling controls, node management, and component/variant handling. These tools enable end-to-end design automation from Cursor.
Retrieve information about the current Figma document.
Retrieve information about the current selection in the document.
Fetch detailed node information about the current selection without additional parameters.
Get detailed information about a specific node by its ID.
Get detailed information about multiple nodes by providing an array of node IDs.
Obtain all annotations in the current document or a specific node.
Create or update an annotation with markdown support.
Batch create or update multiple annotations efficiently.
Scan for nodes matching specific types to target annotation or analysis.
Retrieve prototype reactions from nodes with visual highlight animation.
Set the default FigJam connector style for creating connections.
Create FigJam connector lines between nodes based on prototype flows or mappings.
Create a new rectangle with position, size, and optional name.
Create a new frame with position, size, and optional name.
Create a new text node with customizable font properties.
Set the text content of a single text node.
Batch update multiple text nodes efficiently.
Set layout mode and wrap behavior for an auto-layout frame.
Set padding values for an auto-layout frame.
Set primary and counter axis alignment for auto-layout frames.
Set sizing modes for auto-layout frames.
Set the distance between children in an auto-layout frame.
Set the fill color of a node.
Set the stroke color and weight of a node.
Set the corner radius of a node.
Move a node to a new position.
Resize a node with new dimensions.
Delete a node.
Delete multiple nodes in one operation.
Create a copy of an existing node with optional offset.
Get information about local styles.
Get information about local components.
Create an instance of a component.
Extract overrides from a selected component instance.
Apply extracted overrides to target instances.
Export a node as an image (PNG/JPG/SVG/PDF) with basic support.