figma
ECOSYSTEM REFERENCEAUTH REQUIREDProprietaryOpen SourceSource: @makemehappy· community reference
Connect your AI coding assistant to Figma. Extract design context, generate code from frames, capture live UI as Figma layers, and write native content back to the canvas — all through natural language in VS Code, Cursor, Claude Code, and more.
This server requires your own API credentials or OAuth tokens to function. You can install it via `npx agenticmarket install figma` and provide your credentials during setup, or use the manual config guide below.
Setup Guide
{
"mcpServers": {
"figma": {
"url": "https://mcp.figma.com/mcp",
"type": "http"
}
}
}Tools
get_design_context
Extract design context and code from a Figma frame or layer by URL. Returns layout, styling, components, and variables. Default output is React + Tailwind, customizable via prompt. Enhanced with Code Connect for design-system-accurate component output.
get_variables
Return all variables and styles used in a Figma selection — colors, spacing, typography, and other design tokens.
get_metadata
Return a sparse XML outline of the current Figma selection with layer IDs, names, types, positions, and sizes. Useful for large designs to reduce context size before calling get_design_context.
get_figjam_metadata
Return metadata for FigJam diagram nodes in XML format, including layer properties and screenshots of nodes.
get_code_connect_suggestions
Detect and suggest mappings between selected Figma component instances and code components in the codebase using Code Connect.
confirm_code_connect
Confirm Code Connect mappings after reviewing suggestions from get_code_connect_suggestions.
generate_diagram
Generate FigJam diagrams from Mermaid syntax or natural language. Supports flowcharts, Gantt charts, state diagrams, and sequence diagrams. Creates in a new FigJam file or adds to an existing one.
generate_figma_design
Capture the live UI of a web app as design layers in Figma, or write native Figma content (frames, components, variables, auto layout) directly from an MCP client. Remote server only. Free during beta.
create_design_rule
Create a rules file that gives the AI agent context to translate Figma designs into codebase-aware frontend code aligned with the team's design system and tech stack.
Compatibility
About
Figma MCP Server
Short description: Connect your AI coding assistant to Figma. Extract design context, generate code from frames, capture live UI as Figma layers, and write native content back to the canvas — all through natural language in VS Code, Cursor, Claude Code, and more.
What This Server Does
The Figma MCP server is Figma's official Model Context Protocol server. It bridges your AI agent directly to your Figma design files, giving it access to layout data, variables, components, styles, and Code Connect mappings — so the code your agent generates matches not just how a design looks, but how it's actually built.
Ask your AI agent things like:
- "Implement this Figma frame as a React component."
- "What color variables and spacing tokens are used in this design?"
- "Generate a flowchart for the user authentication flow."
- "Capture the live UI of my app and send it to my Figma file."
- "Create a new screen in Figma using my existing design system components."
No more copying screenshots or manually translating design specs into code. Your agent reads directly from Figma's structured design data.
Two Ways to Connect
Remote MCP Server (recommended)
Hosted by Figma at https://mcp.figma.com/mcp. No desktop app required. Broadest feature set including write-to-canvas. Requires Figma OAuth login.
Desktop MCP Server
Runs locally via the Figma desktop app at http://127.0.0.1:3845/mcp. Intended for specific organization and enterprise use cases. Selection-based prompting (no link needed). Narrower feature set.
Use the remote server unless you have a specific reason to use the desktop version.
Installation
VS Code
Use the command palette (⌘ Shift P) → search MCP: Add Server → select HTTP → paste the URL:
https://mcp.figma.com/mcp
Set the Server ID to figma. Choose global or workspace scope. Your mcp.json will contain:
json{ "servers": { "figma": { "type": "http", "url": "https://mcp.figma.com/mcp" } } }
Requires GitHub Copilot enabled on your account.
Cursor
Recommended: Install the Figma plugin inside Cursor's agent chat:
/figma-plugin install
Or add manually via Settings → Cursor Settings → MCP → Add new global MCP server:
json{ "mcpServers": { "figma": { "url": "https://mcp.figma.com/mcp" } } }
Claude Code
Recommended: Install via the official Figma plugin (includes Agent Skills):
bashclaude plugin install figma@claude-plugins-official
Or add the server directly:
bashclaude mcp add --transport http figma https://mcp.figma.com/mcp
To make it available across all projects (not just the current one):
bashclaude mcp add --scope user --transport http figma https://mcp.figma.com/mcp
Codex
bashcodex mcp add figma --url https://mcp.figma.com/mcp
Windsurf / Zed / Gemini CLI / Other clients
Any MCP client supporting Streamable HTTP can connect. Add the server URL:
https://mcp.figma.com/mcp
Check your client's documentation for the exact configuration format.
Desktop MCP Server (alternative)
If you need the desktop server, enable it from within the Figma desktop app:
- Open the Figma desktop app and open a Design file
- Switch to Dev Mode (
Shift + D) - In the MCP server section of the inspect panel, click Enable desktop MCP server
- Copy the server URL (
http://127.0.0.1:3845/mcp)
Configure your IDE to point to this local URL:
json{ "mcpServers": { "figma-desktop": { "url": "http://127.0.0.1:3845/mcp" } } }
VS Code (mcp.json):
json{ "servers": { "figma-desktop": { "type": "http", "url": "http://127.0.0.1:3845/mcp" } } }
Authentication
The remote server uses OAuth. On first connect, your MCP client will open a browser window where you log in to Figma and grant access. No personal access token or API key required.
Available Tools
Design Context (Read)
| Tool | Description |
|---|---|
get_design_context | Extract design context and code from a Figma frame or layer via link. Default output is React + Tailwind; customizable via prompt. Works with Code Connect for component-level accuracy. |
get_variables | Return all variables and styles used in a Figma selection — colors, spacing, typography, and other design tokens. |
get_metadata | Return a sparse XML outline of the selection with layer IDs, names, types, positions, and sizes. Useful for large designs where get_design_context produces too much context. |
get_figjam_metadata | Return metadata for FigJam diagrams in XML format, including screenshots of nodes. Similar to get_metadata but for FigJam content. |
Code Connect
| Tool | Description |
|---|---|
get_code_connect_suggestions | Detect and suggest mappings between Figma components and code components in your codebase using Code Connect. |
confirm_code_connect | Confirm Code Connect mappings after reviewing suggestions from get_code_connect_suggestions. |
Diagrams (FigJam)
| Tool | Description |
|---|---|
generate_diagram | Generate FigJam diagrams from Mermaid syntax or natural language. Supports flowcharts, Gantt charts, state diagrams, and sequence diagrams. Creates in a new FigJam file or adds to an existing one. |
Write to Canvas (Remote server only — free during beta, paid after)
| Tool | Description |
|---|---|
generate_figma_design | Capture the live UI of a web app or site and send it as design layers to a new or existing Figma file. Also supports creating and modifying native Figma content (frames, components, variables, auto layout) directly from your agent. |
Design System
| Tool | Description |
|---|---|
create_design_rule | Create a rules file that gives your agent the right context to translate designs into high-quality, codebase-aware frontend code. Saves to your rules or instructions path for agent access during code generation. |
Tools JSON
json[ {"name": "get_design_context", "description": "Extract design context and code from a Figma frame or layer by URL. Returns layout, styling, components, and variables. Default output is React + Tailwind, customizable via prompt. Enhanced with Code Connect for design-system-accurate component output."}, {"name": "get_variables", "description": "Return all variables and styles used in a Figma selection — colors, spacing, typography, and other design tokens."}, {"name": "get_metadata", "description": "Return a sparse XML outline of the current Figma selection with layer IDs, names, types, positions, and sizes. Useful for large designs to avoid overloading the context window before calling get_design_context."}, {"name": "get_figjam_metadata", "description": "Return metadata for FigJam diagram nodes in XML format, including layer properties and node screenshots."}, {"name": "get_code_connect_suggestions", "description": "Detect and suggest mappings between selected Figma component instances and code components in the codebase using Code Connect."}, {"name": "confirm_code_connect", "description": "Confirm Code Connect mappings after reviewing suggestions returned by get_code_connect_suggestions."}, {"name": "generate_diagram", "description": "Generate FigJam diagrams from Mermaid syntax or natural language descriptions. Supports flowcharts, Gantt charts, state diagrams, and sequence diagrams. Creates in a new FigJam file or adds to an existing one."}, {"name": "generate_figma_design", "description": "Capture the live UI of a web app or site as design layers in a new or existing Figma file. Also enables writing native Figma content (frames, components, variables, auto layout, FigJam boards) directly from an MCP client. Remote server only. Free during beta."}, {"name": "create_design_rule", "description": "Create a rules file that gives the AI agent the right context to translate Figma designs into high-quality, codebase-aware frontend code aligned with the design system and tech stack."} ]
How to Use: Getting Design Context
The remote Figma MCP server is link-based. You provide a Figma URL, and the agent extracts the node ID and fetches design data.
Steps:
- In Figma Design, select the layer or frame you want
- Right-click → Copy link to selection (or copy the URL from your browser's address bar)
- Paste the URL into your MCP client and prompt:
Implement the design at this URL: https://www.figma.com/file/...
The agent will call get_design_context automatically and generate code based on the design.
Example prompts:
Implement the card component at <figma-link> as a React component using Tailwind.
What color tokens and spacing variables are used in <figma-link>?
Generate a flowchart for the checkout user flow using the Figma MCP generate_diagram tool.
Capture the UI of my app at localhost:3000 and create frames in <figma-file-link>.
Code Connect Integration
For the best code output, set up Code Connect to map your Figma library components to your actual codebase components.
With Code Connect active, get_design_context returns your real component code (not generic React), making generated output consistent with how your team actually builds.
Code Connect supports multiple frameworks per component — React, SwiftUI, Jetpack Compose, and more.
Rate Limits
| Seat type | Limit |
|---|---|
| Starter plan / View or Collab seats on paid plans | 6 tool calls per month |
| Dev or Full seat on Professional, Organization, or Enterprise | Per-minute limits (same as Figma REST API Tier 1) |
Write-to-canvas tools are currently exempt from rate limits during the beta period.
Tips for Best Results
- Break designs into smaller parts — implement individual components (Card, Header, Sidebar) rather than entire screens. Large selections slow down tool calls and reduce accuracy.
- Use Code Connect — without it, the agent generates generic React. With it, it reuses your actual components.
- Be specific in your prompts — specify framework, styling system, and any constraints up front.
- Use
get_metadatafirst for large files — get the outline, then callget_design_contextonly on the sections you need. - Install Agent Skills — Figma's official skills teach your agent the right tool sequences for common workflows (implement design, connect components, create design rules).
Supported IDEs
- VS Code (with GitHub Copilot)
- Cursor
- Claude Code
- Codex
- Windsurf
- Zed
- Gemini CLI
- Any client supporting Streamable HTTP MCP
FAQ
Do I need a paid Figma plan?
The remote server is available on all plans. However, write-to-canvas features require a Full or Dev seat on a paid plan. Starter plan and View/Collab seat users are limited to 6 tool calls per month.
Do I need the Figma desktop app?
Not for the remote server. The desktop server requires the Figma desktop app, but the remote server connects via https://mcp.figma.com/mcp without it.
Why does my agent keep generating React + Tailwind?
That is the default output of get_design_context. Specify your framework in the prompt (e.g. "use Vue 3 with CSS Modules") or set up Code Connect to map components to your codebase.
What is the difference between tools and skills?
Tools are individual actions the server can perform. Skills are higher-level instructions that tell your agent which tools to use, in what order, and how to apply the results — like a workflow playbook built on top of the tools.
Is write-to-canvas free?
Currently free during the beta period. Figma has stated it will become a usage-based paid feature in the future.
Can I use this with a FigJam file?
Yes. get_figjam_metadata and generate_diagram work with FigJam. You can also reference FigJam diagrams as context when asking your agent to generate application logic.
Related Resources
Install and Troubleshooting Intent Coverage
Developer-install and troubleshooting intent for community MCP server listings.
install mcp server / mcp server setup guide
mcp json config example / vscode mcp setup
mcp server not working / mcp tools not showing
mcp server compatibility matrix / cursor vs vscode mcp compatibility
mcp server monetization options / convert community mcp server to paid listing
Related Setup, Debug, and Learning Links
Server registry requirements
Devtool listings often graduate from explore to registry.
Publish server guide
Action path for maintainers ready to list production versions.
CLI installation guide
Install baseline for all IDEs before listing-specific setup.
Using servers guide
Covers runtime usage patterns and auth flow.
Cursor setup walkthrough
High-intent setup path for developer troubleshooting journeys.
Troubleshooting: server not working
Common failure modes for install and runtime issues.
Troubleshooting: tools not showing
Covers discovery/listing failures across major IDEs.
Related explore entry: Memory
Keeps same-intent users on matched category and tool shape.
Related explore entry: Roundtable MCP
Keeps same-intent users on matched category and tool shape.
Related explore entry: Sequential Thinking
Keeps same-intent users on matched category and tool shape.
Related explore entry: Everything MCP Server
Keeps same-intent users on matched category and tool shape.
Install this server with the AgenticMarket CLI — you'll be prompted for your API credentials or OAuth tokens during setup. No manual JSON editing.
$npx agenticmarket install figmaMemory
Give your AI assistant persistent memory across conversations. The Memory server stores entities, relations, and observations in a local knowledge graph that persists between sessions.
Roundtable MCP
Multi-model AI council MCP server that enables collaborative reasoning for architecture, debugging, code review, and engineering decisions.
Sequential Thinking
Enhance your AI assistant's reasoning with structured, step-by-step thinking. Supports revisions, branching, and dynamic adjustment of reasoning depth.
Everything MCP Server
The official MCP reference server that exercises every protocol feature — prompts, tools, resources, sampling, and all transports. Built for MCP client developers and testing.
AgenticMarket