Figma Bridge MCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| FIGMA_BRIDGE_PORT | No | WebSocket port. If you change it, change it in plugin/manifest.json (devAllowedDomains) and plugin/ui.html (PORT) too | 3055 |
| FIGMA_BRIDGE_OUT_DIR | No | Where exports are written (<dir>/<file name>/…) | <cwd>/figma-exports |
| FIGMA_BRIDGE_TIMEOUT_MS | No | How long to wait for the plugin to answer one request | 120000 |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| figma_statusA | Check the plugin connection and return the open file name/key, current page and selection. |
| figma_list_pagesB | List pages of the file open in Figma. |
| figma_get_treeA | Lightweight outline (id, name, type, box) of a node or the current page, up to a given depth. Use to find node ids. |
| figma_export_jsonB | Export the full JSON of a node to a file on disk and return the path plus a short summary. format "rest" = Figma REST API JSON (JSON_REST_V1), "compact" = trimmed tree with resolved style/variable names, "auto" = rest with compact fallback. |
| figma_export_imageC | Render a node to PNG/JPG/SVG/PDF and save it to disk. |
| figma_export_image_fillsC | Save every raster image used as an IMAGE fill inside a node (original bytes, named by imageHash). |
| figma_run_scriptA | Run arbitrary JavaScript in the plugin with the |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 7 tools
Tools are mostly distinct: status/list_pages/get_tree/run_script each serve a clear purpose. The only mild overlap is between get_tree (lightweight outline) and export_json (full export), but the descriptions clearly differentiate lightweight ID-hunting from full serialization, and export_image vs export_image_fills cleanly separate rendering from extracting source bytes.
Consistent figma_ prefix with snake_case verb_noun pattern across nearly all tools (figma_list_pages, figma_get_tree, figma_export_json, figma_export_image, figma_run_script). The only deviation is figma_status, which omits a verb but remains readable and conventional for a health-check tool.
Seven tools is well-scoped for a Figma plugin bridge: connection check, page listing, node discovery, and three export variants plus a scripting escape hatch. No redundancy and nothing feels thin.
Read/inspection coverage is comprehensive (status, pages, tree, JSON, image render, image fills). Modification is covered only indirectly through figma_run_script rather than dedicated create/update/delete tools, which is workable but a minor ergonomic gap for structured mutations.