Figma MCP Server
# Figma MCP (Model Context Protocol)
A complete solution for creating and modifying Figma designs through Cursor Agent using the Model Context Protocol.
Blog: [https://xflux.us/2025/04/06/ai-powered-design-automation-building-a-figma-mcp-with-cursor/](https://xflux.us/2025/04/06/ai-powered-design-automation-building-a-figma-mcp-with-cursor/)
[](https://www.youtube.com/watch?v=FdjjRR0h5l4)
## Overview
This project enables AI-powered design creation in Figma using natural language prompts through Cursor Agent. It consists of two main components:
1. **MCP Server**: A Bun + TypeScript server that implements the Model Context Protocol and communicates with the Figma plugin via WebSockets.
2. **Figma Plugin**: A plugin that runs in Figma and executes design operations based on instructions from the MCP server.
With this integration, you can use natural language to:
- Create basic design elements (shapes, text, etc.)
- Design complete page layouts with multiple sections
- Modify existing designs
## Repository Structure
- **figma-mcp-server/**: The MCP server implementation
- **figma-plugin/**: The Figma plugin for executing design operations
## Quick Start
### 1. Set up the MCP Server
```bash
cd figma-mcp-server
cp .env.example .env # Edit this file to add your Figma token
bun install
bun run index.ts
```
### 2. Set up the Figma Plugin
```bash
cd figma-plugin
npm install
npm run build
```
Then import the plugin into Figma:
1. Open Figma
2. Go to Plugins > Development > Import plugin from manifest
3. Select the `figma-plugin/manifest.json` file
### 3. Connect to Cursor Agent
In Cursor:
1. Go to Settings > Agent > MCP Servers
2. Add a new server with URL: `http://localhost:3000/api/mcp/schema`
## Detailed Documentation
For more detailed instructions, see:
- [MCP Server README](./figma-mcp-server/README.md)
- [Figma Plugin Setup Guide](./figma-plugin/README.md)
## Example Usage
Once everything is set up, you can use Cursor Agent to create designs with prompts like:
```
Create a landing page with a header, hero section with heading "Our Product" and subheading "The best solution for your needs", 3 features in the features section, and a footer with contact information.
```
## How It Works
1. Cursor Agent receives a natural language prompt
2. It sends a structured MCP request to the MCP server
3. The MCP server processes the request and sends instructions to the Figma plugin via WebSocket
4. The Figma plugin executes the design operations in Figma
## License
MIT
TDQS
Scored across 5 tools
Each tool has a clearly distinct purpose with no overlap: adding files, posting comments, reading comments, replying to comments, and viewing nodes. The descriptions make it easy to differentiate between these operations, eliminating any risk of misselection.
All tool names follow a consistent verb_noun pattern using snake_case, such as 'add_figma_file', 'post_comment', and 'view_node'. This uniformity makes the tool set predictable and easy to understand at a glance.
With 5 tools, this server is well-scoped for handling Figma files, comments, and nodes. Each tool serves a specific, necessary function without being excessive or insufficient for the domain, fitting the typical 3-15 tool range perfectly.
The tool set covers core workflows for file management and comment interactions, but there are minor gaps such as updating or deleting comments, or more advanced file operations like editing nodes. Agents can likely work around these with the provided tools.