loading…
Search for a command to run...
loading…
Converts Figma to Markdown. Strips out visual noise to drastically reduce LLM token consumption.
Converts Figma to Markdown. Strips out visual noise to drastically reduce LLM token consumption.
Current version: 2.0.0
figma-to-markdown-mcp is an MCP server for Figma-link workflows. It fetches Figma design context internally, compacts it inside the server, and returns reduced Markdown to the calling agent instead of the full upstream payload.
This project is for teams that want agents to work from Figma node URLs without exposing the full upstream Figma MCP payload to the caller model whenever the bridge can safely handle the request.
The intended flow is simple:
get_figma_as_markdown.The main reason to use this server is token reduction.
Raw Figma MCP responses can be large enough to consume a meaningful part of the caller model context before implementation even begins. This bridge keeps that upstream payload inside the server whenever possible, compacts it first, and only returns the reduced result to the agent.
This server sits between your agent and the local Figma Desktop MCP server.
User prompt with Figma link
-> Agent calls get_figma_as_markdown
-> figma-to-markdown-mcp connects to local Figma Desktop MCP
-> get_design_context / get_metadata
-> internal compaction
-> compacted Markdown returned to the agent
The public entrypoint is get_figma_as_markdown.
figma_url: required full Figma node URLinclude_metadata: optional, default truemax_output_chars: optional explicit output budget; if omitted, the bridge does not force truncationWhen the bridge succeeds, it returns compacted Markdown. When the bridge cannot safely fetch or compact the node, it returns a fallback handoff so the agent can continue with standard Figma MCP tools directly.
Example URL shape:
https://www.figma.com/design/FILE_KEY/FILE_NAME?node-id=NODE_ID&m=dev
To use the Figma-link bridge flow, you need:
Default upstream Figma MCP endpoint:
http://127.0.0.1:3845/mcp
Override with:
FIGMA_MCP_URL
Install globally:
npm install -g figma-to-markdown-mcp
Or run with npx:
npx figma-to-markdown-mcp
Register this server in your MCP client.
Example using npx:
{
"mcpServers": {
"figma-to-markdown": {
"command": "npx",
"args": ["-y", "figma-to-markdown-mcp"]
}
}
}
Example using a global install:
{
"mcpServers": {
"figma-to-markdown": {
"command": "figma-to-markdown-mcp",
"args": []
}
}
}
Your client may use JSON, TOML, or another config format, but the command registration model is the same.
figma-to-markdown-mcp in your MCP client.get_figma_as_markdown first.In practice:
max_output_chars when you intentionally want a hard output budget.Добавь это в claude_desktop_config.json и перезапусти Claude Desktop.
{
"mcpServers": {
"figma-to-markdown-mcp": {
"command": "npx",
"args": []
}
}
}