NestDaddy

Figma MCP

io.scalably/figma-mcp · v1.0.1

Figma MCP: list frames in a file and fetch one frame's JSON and image safely. 2 tools.

Connect Runs on your machine

Terminal
claude mcp add figma-mcp -e FIGMA_TOKEN=<FIGMA_TOKEN> -e FIGMA_API_BASE_URL=<FIGMA_API_BASE_URL> -e FIGMA_REQUEST_TIMEOUT_MS=<FIGMA_REQUEST_TIMEOUT_MS> -e FIGMA_MAX_JSON_BYTES=<FIGMA_MAX_JSON_BYTES> -e FIGMA_MAX_FRAME_BYTES=<FIGMA_MAX_FRAME_BYTES> -e FIGMA_OUTPUT_ROOT=<FIGMA_OUTPUT_ROOT> -e FIGMA_ALLOW_HTTP_FOR_TESTS=<FIGMA_ALLOW_HTTP_FOR_TESTS> -- npx -y @scalably-io/[email protected]
claude_desktop_config.json
{
  "mcpServers": {
    "figma-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "@scalably-io/[email protected]"
      ],
      "env": {
        "FIGMA_TOKEN": "<FIGMA_TOKEN>",
        "FIGMA_API_BASE_URL": "<FIGMA_API_BASE_URL>",
        "FIGMA_REQUEST_TIMEOUT_MS": "<FIGMA_REQUEST_TIMEOUT_MS>",
        "FIGMA_MAX_JSON_BYTES": "<FIGMA_MAX_JSON_BYTES>",
        "FIGMA_MAX_FRAME_BYTES": "<FIGMA_MAX_FRAME_BYTES>",
        "FIGMA_OUTPUT_ROOT": "<FIGMA_OUTPUT_ROOT>",
        "FIGMA_ALLOW_HTTP_FOR_TESTS": "<FIGMA_ALLOW_HTTP_FOR_TESTS>"
      }
    }
  }
}
~/.cursor/mcp.json
{
  "mcpServers": {
    "figma-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "@scalably-io/[email protected]"
      ],
      "env": {
        "FIGMA_TOKEN": "<FIGMA_TOKEN>",
        "FIGMA_API_BASE_URL": "<FIGMA_API_BASE_URL>",
        "FIGMA_REQUEST_TIMEOUT_MS": "<FIGMA_REQUEST_TIMEOUT_MS>",
        "FIGMA_MAX_JSON_BYTES": "<FIGMA_MAX_JSON_BYTES>",
        "FIGMA_MAX_FRAME_BYTES": "<FIGMA_MAX_FRAME_BYTES>",
        "FIGMA_OUTPUT_ROOT": "<FIGMA_OUTPUT_ROOT>",
        "FIGMA_ALLOW_HTTP_FOR_TESTS": "<FIGMA_ALLOW_HTTP_FOR_TESTS>"
      }
    }
  }
}
.vscode/mcp.json
{
  "servers": {
    "figma-mcp": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "@scalably-io/[email protected]"
      ],
      "env": {
        "FIGMA_TOKEN": "<FIGMA_TOKEN>",
        "FIGMA_API_BASE_URL": "<FIGMA_API_BASE_URL>",
        "FIGMA_REQUEST_TIMEOUT_MS": "<FIGMA_REQUEST_TIMEOUT_MS>",
        "FIGMA_MAX_JSON_BYTES": "<FIGMA_MAX_JSON_BYTES>",
        "FIGMA_MAX_FRAME_BYTES": "<FIGMA_MAX_FRAME_BYTES>",
        "FIGMA_OUTPUT_ROOT": "<FIGMA_OUTPUT_ROOT>",
        "FIGMA_ALLOW_HTTP_FOR_TESTS": "<FIGMA_ALLOW_HTTP_FOR_TESTS>"
      }
    }
  }
}

Replace the values in angle brackets with your own. Keys stay on your machine; we never see them.

Tools

This server runs locally, so its tools are listed by your MCP client once it starts.

Environment variables

NameDescription
FIGMA_TOKEN
Required, secret
Figma personal access token with file_content:read
FIGMA_API_BASE_URL
Optional
Figma REST API base URL, default https://api.figma.com/v1
FIGMA_REQUEST_TIMEOUT_MS
Optional
Per-request timeout in milliseconds, default 60000
FIGMA_MAX_JSON_BYTES
Optional
Upper bound on a Figma JSON response in bytes, default 104857600
FIGMA_MAX_FRAME_BYTES
Optional
Upper bound on a downloaded frame PNG in bytes, default 104857600
FIGMA_OUTPUT_ROOT
Optional
Directory that all fetch_frame output directories must stay below, default ./figma-output
FIGMA_ALLOW_HTTP_FOR_TESTS
Optional
Test suite only: set to 1 to allow a plain-HTTP loopback API base. Never set it in normal use

Details

Package@scalably-io/[email protected] (NPM, stdio)
Packagehttps://github.com/scalably-io/figma-mcp/releases/download/v1.0.1/figma-mcp.mcpb (MCPB, stdio)
First published9 Sep 2026
Last updated9 Sep 2026
Registry nameio.scalably/figma-mcp

More files and documents servers See all

Listing data from the official MCP registry. Status and tools from NestDaddy's daily check. Browse all MCP servers.