
Security News
Ruby's Bundler 4.0.18 Extends Cooldown to bundle lock and bundle cache
The supply chain control that delays freshly published gems now covers lockfile generation and gem vendoring in Ruby projects.
figma-mcp-express
Advanced tools
Compact Figma MCP with validated batch ops through a local plugin bridge.

Fast, quota-free, stable Figma automation for coding agents. figma-mcp-express lets Claude Code, Codex, and other local agents read, edit, migrate, audit, screenshot, and prototype inside the real Figma Desktop file. It is built for serious design-system work: batch edits, multi-file routing, large-file reads, visible multi-agent activity, and prototype wiring without burning through official Figma MCP tool-call quotas.
Use it when screenshots and comments are not enough. The agent can inspect actual nodes, components, variables, styles, frames, prototype reactions, and connected files, then make targeted changes in the file designers already use.
Follow AI agents live as they fix issues, edit layouts, and design screens directly in Figma.
vkhanhqui/figma-mcp-go@fe6cd768 (the intermediate fork baseline used for this measurement), the default tools/list drops from 73 tools / 12,214 o200k_base tokens to 21 tools / 3,283 tokens (73.1% smaller) — less context burned before the agent does any work.Plugin install is the shortest path.
Claude Code
claude plugin marketplace add sunhome243/figma-mcp-express
claude plugin install figma-mcp-express@figma-mcp-express
Codex
codex plugin marketplace add sunhome243/figma-mcp-express
codex plugin add figma-mcp-express@figma-mcp-express
plugin.zip or build from source.Plugins -> Development -> Import plugin from manifest....manifest.json from the unzipped plugin folder or from this repo's plugin/ directory.Plugins -> Development -> Figma MCP Express.fetch_library_catalog is the main REST-only exception and requires FIGMA_TOKEN.import_component_by_key can use them.For other MCP clients, or if you want to modify the server:
git clone https://github.com/sunhome243/figma-mcp-express.git
cd figma-mcp-express
make build
This produces bin/figma-mcp-express and plugin/dist/.
Add it to your .mcp.json:
{
"mcpServers": {
"figma-mcp-express": {
"command": "/absolute/path/to/bin/figma-mcp-express",
"args": ["--port", "1994"]
}
}
}
Restart your MCP client after building.
FIGMA_TOKENMost workflows do not need a token. Live read/write tools talk directly to Figma Desktop through the plugin.
You only need FIGMA_TOKEN for REST-backed library catalog lookups such as fetch_library_catalog.
Account Settings -> Personal access tokensIf you installed from the marketplace, set it in your shell profile:
echo 'export FIGMA_TOKEN=your_token_here' >> ~/.zshrc
source ~/.zshrc
If you built from source, you can either export it in your shell or place it in a local .env file:
cat <<'EOF' > .env
FIGMA_TOKEN=your_token_here
EOF
Shell environment variables take precedence over .env.
| Variable | Default | Description |
|---|---|---|
FIGMA_TOKEN | - | Required only for fetch_library_catalog. |
FIGMA_MCP_TOOL_PROFILE | core | core keeps the compact default tool surface. full restores the legacy compatibility/debugging surface. |
FIGMA_MCP_TOOL_SCHEMA_MODE | compact | compact trims tools/list descriptions to reduce MCP context tokens. Use verbose for full in-schema guidance. |
FIGMA_MCP_BATCH_MAX_OPS | 200 | Maximum top-level batch.ops entries accepted before plugin execution. |
FIGMA_MCP_BATCH_MAX_BYTES | 2097152 | Maximum encoded batch.ops payload size in bytes before plugin execution. |
FIGMA_MCP_STDIO_WORKERS | 16 | Number of stdio tool-call workers. Server-local tools can run concurrently; plugin-facing calls still serialize per Figma file. |
FIGMA_MCP_STDIO_QUEUE | 1000 | Buffered stdio tool-call queue size before mcp-go falls back to synchronous handling. |
FIGMA_MCP_SPILL_BYTES | 25000 | Response size threshold. Larger responses spill to .figma-mcp-cache/. |
FIGMA_MCP_TIMEOUT | 120 | Inactivity ceiling in seconds for lightweight ops. Resets on each progress heartbeat. |
FIGMA_MCP_READ_TIMEOUT | 600 | Inactivity ceiling in seconds for heavy reads and batch. Resets on each progress heartbeat. |
FIGMA_MCP_STALL_THRESHOLD | 45 | Seconds an op may hold a channel's serial slot with no progress before a new call on that channel is fast-rejected. |
The original bridge architecture and implementation underlying this project were created by GETHOPP LTD in gethopp/figma-mcp-bridge@82b28bc and released under the MIT License.
figma-mcp-express was initially created from an intermediate fork without knowing this earlier provenance. After learning the full lineage, we restored GETHOPP LTD's copyright notice and now credit the original project directly. We value a healthy, transparent open-source ecosystem and aim to make authorship and derivation explicit.
Required third-party copyright notices are preserved in LICENSE. figma-mcp-express is MIT-licensed and permits commercial use.
FAQs
Compact Figma MCP with validated batch ops through a local plugin bridge.
The npm package figma-mcp-express receives a total of 304 weekly downloads. As such, figma-mcp-express popularity was classified as not popular.
We found that figma-mcp-express demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
The supply chain control that delays freshly published gems now covers lockfile generation and gem vendoring in Ruby projects.

Security News
During a UK cyber test, a Mythos 5 agent used sockpuppets, social engineering, and prompt injection to try to get a maintainer to merge malware.

Company News
Socket is now in the AWS Security Hub Extended plan. Adopt it through AWS, apply committed spend, and block malicious open source packages.