Talk to Figma - Claude Desktop App Integration
This project enables Claude Desktop App to control Figma through the MCP (Model Context Protocol) and WebSocket communication. It extends the original cursor-talk-to-figma-mcp to work with Claude Desktop App via stdio.
YT Video: https://www.youtube.com/watch?v=-LA_Ew7GhC4
https://github.com/user-attachments/assets/68dcc372-3605-477f-ab43-8fe076eed99c
Screenshots
Prerequisites
- Node.js 14+ and npm
- Figma desktop application
Installation
-
Clone this repository:
git clone https://github.com/gaganmanku96/talk-with-figma-claude.git cd talk-with-figma-claude -
Install dependencies:
npm install -
Make the startup scripts executable (Linux/macOS):
chmod +x run-figma-claude.sh
Usage
Quick Start
On Linux/macOS:
./bin/claude-figma-connect.sh
On Windows:
bin\\claude-figma-connect.bat
This will start all necessary components:
- WebSocket server (background)
- MCP server (background)
- Claude bridge (foreground)
Using with Claude Desktop App
- Start the integration using one of the scripts above
- Open Claude Desktop App
- In Claude, use the following tool commands:
- First use
join_channelto establish a connection - Then use various Figma tools like
create_rectangle,get_document_info, etc.
- First use
Adding plugin in Figma
- Go to Actions in Figma
- Click on import from manifest
- Select the manifest file
talk-with-figma-claude > src > figma_plugin > manifest.json
Connecting with Claude
You'll have to add following in Claude MCP Config
{
"mcpServers": {
"TalkToFigma": {
"command": "node",
"args": [
"~/talk_to_figma_claude/src/mcp-server/mcp-server.js"
],
"env": {}
}
}
}
talk_to_figma_claude\src\mcp-server\mcp-server.js
Available Tools
Basic Figma tools:
- Document information tools (
get_document_info,get_selection, etc.) - Creation tools (
create_rectangle,create_frame,create_text, etc.) - Styling tools (
set_fill_color,set_corner_radius, etc.) - Component tools (
create_component,update_instance_properties, etc.)
Enhanced tools:
enhanced_create_component_instance: Better component instance creationenhanced_set_fill_color: Improved color handlingcreate_multiple_instances: Batch creation of instances
Logs
Logs are stored in the logs directory with timestamped files for each component.
Monitoring
A server monitoring dashboard is available at http://localhost:3650 when the server is running.
Troubleshooting
If you encounter issues:
- Check the log files in the
logsdirectory - Make sure Figma is running with the plugin installed
- Try running the
health_checkorconnection_statustools from Claude - Restart the integration if needed
License
MIT License - See LICENSE file for details.
Recommend MCP Servers 💡
@playwright/mcp
A Model Context Protocol (MCP) server providing browser automation capabilities using Playwright, enabling LLMs to interact with web pages through structured accessibility snapshots.
Skyvern
Skyvern's MCP server connects AI applications to the browser, enabling form filling, file downloading, and web research.
rundeck-mcp-server
A Model Context Protocol (MCP) server for interacting with Rundeck CLI, enabling AI to perform Rundeck operations without direct command line interaction.
@apify/mcp-server-rag-web-browser
A MCP Server for the RAG Web Browser Actor
mcp-server-hc3
A Model Context Protocol (MCP) server integrating LLM applications with Fibaro HC3 smart home systems, enabling natural language control of devices and scenes.
mcp-server-apple-shortcuts
A Model Context Protocol (MCP) server that lets AI assistants like Claude control Apple Shortcuts automations. This enables AI models to trigger shortcuts and automate tasks on macOS in a safe and controlled way.