figma-bridge-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| FIGMA_MCP_HOST | No | Bind address. Changing it exposes an unauthenticated bridge — avoid. | 127.0.0.1 |
| FIGMA_MCP_PORT | No | Bridge port. If taken, the next 9 ports are tried. | 47451 |
| FIGMA_MCP_LONG_POLL_MS | No | How long an idle poll is held open. | 8000 |
| FIGMA_MCP_ALLOW_PRIVATE_FETCH | No | Set to `1` to let `loadImage` reach private/loopback hosts (e.g. a local asset server). |
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 | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| figma_statusA | Check whether the Figma plugin bridge is connected. Always call this first to confirm the plugin is running before any other tool. |
| figma_writeA | Execute JavaScript code to CREATE or MODIFY designs in Figma. ⚠️ MANDATORY: Call figma_docs BEFORE writing any design code. Skipping figma_docs causes hardcoded colors, wrong sizing, broken layouts, and low-quality UI. Use the |
| figma_readA | READ design data from Figma — extract node trees, colors, typography, spacing, and screenshots. Use to understand an existing design before generating code, or to inspect what's on the canvas. |
| figma_docsA | Get the API reference and design rules for figma_write. Call with no args first — returns quick-start guide + critical rules. Then load specific sections as needed: section='rules' (design principles, token rules, layer order, component-first), section='layout' (auto-layout, button/card/badge/progress/mobile rules), section='api' (create/modify/delete/clone/batch/read operations + workflow), section='tokens' (variables, multi-mode, paint styles, text styles), section='icons' (loadImage, loadIcon, loadIconIn, icon libraries, coloring, sizing). Always call figma_docs BEFORE any figma_write code. |
| figma_rulesA | Generate a design system rule sheet from the current Figma file — aggregates color tokens, typography styles, variables (all modes), and component catalog into a single markdown block. Equivalent to official Figma MCP's create_design_system_rules. Call once at the start of a design-to-code session to give the AI full context: what tokens to use, what text styles exist, which components are available. Re-run when the design system changes. |
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 5 tools
The read/write/status triad is clearly distinct and docs-loading is separated from execution. The main friction is between figma_docs (which includes a 'rules' section with design principles) and figma_rules (which generates a rule sheet from the current file); an agent could reasonably load the wrong one for design guidance.
All tools share the uniform figma_ prefix with a single lowercase token, which is easy to scan. The convention mixes verbs (write, read) with nouns (status, docs, rules), so it's predictable in style but not a strict verb_noun pattern.
Five tools is a tight, well-scoped set for a Figma plugin bridge and each tool clearly earns its place. However, figma_write is a mega-tool absorbing dozens of operations (tokens, prototyping, variants, layout), so the effective surface is much larger than the count suggests.
The surface covers connection check, reading (trees, colors, screenshots), writing (create/modify/delete/group, tokens, prototyping, variants), API docs, and design-system rule extraction. Minor gaps remain—no explicit asset export/download tool and no comments/annotations access—but core lifecycle coverage is solid.