figmingo-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| FIGMA_API_KEY | Yes | Your Figma Personal Access Token. Get one from Figma Settings > Security > Personal access tokens. |
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 |
|---|---|
| get_design_contextA | Get the simplified design context for a Figma file or node: layout (absolute bounds, auto-layout), fills/strokes/effects, and text styles. Use format=compact for a small token footprint. |
| get_metadataA | Lightweight tree of a Figma file/node (id, name, type, bounds) for orientation before a deep fetch. Output as XML (default) or JSON. |
| get_screenshotA | Render a Figma node to an image via GET /v1/images/:fileKey (scale 0.01–4, png|jpg|svg|pdf). Returns the image inline (base64) and/or saves it to disk. |
| download_assetsA | Batch-export nodes as files (up to N ids, chunked) plus raw image fills from GET /v1/files/:key/images. Saves everything into a directory and returns a manifest. Temp Figma URLs are downloaded immediately and cached. |
| get_variable_defsA | Get design tokens: tries the Enterprise variables/local endpoint first; on 403 falls back to published styles + tokens inferred from node fills/text styles. Every output is marked with source. |
| search_design_systemA | Search the file's design system: components, component sets, and published styles. Local index, no extra API quota beyond one file fetch. |
| get_code_connect_mapB | Read figmingo.components.json (local component→code mapping) and return the code targets for components found in the requested node subtree. |
| whoamiA | Token sanity check via GET /v1/me, plus rate-limit observations and disk-cache status. |
| get_html_replica_specB | Build a replica-optimized spec from a Figma file/node: sections/elements with absolute rects, computed typography (family/style/size/letter-spacing/line-height/text-case), hex+alpha colors, gradient data, and an asset manifest (icons→svg, image fills→urls, logo hints). Output schema matches verify_html_parity input. |
| render_html_screenshotA | Playwright (chromium) screenshot of a local/remote HTML page or an element selector. Waits for images to load, can hide fixed/sticky elements, supports full-page or selector-local captures. |
| verify_html_parityA | The acceptance gate. Compares rendered HTML against a Figma replica spec: content gate (copy/font/color tolerances: font size ±1px, letter-spacing ±0.5px, line-height ±2px, color ±2/255), structural gate (position/size ±4px), visual gate (pixelmatch diff ratio ≤ 1%, 2px crop tolerance). Emits a JSON report + diff images. |
| compare_html_to_imageA | One-shot visual comparison: renders an HTML page/element with Playwright (chromium) and pixel-diffs it against a reference image (e.g. a Figma export). passed = diffRatio <= maxRatio (default 0.01 = 1%; raise maxRatio for rework/triage loops where you only need localization, not a strict gate). Returns diff ratio, anti-alias accounting (see methodology in the response), and per-band diff localization — equal-height bands or custom bandEdges so one band can map to one design element. Replaces the manual render_html_screenshot → write-a-diff-script two-step. |
| bridge_statusA | Is the figmingo companion plugin connected? Reports client info, pending/queued command counts, and the bridge address. |
| execute_plugin_commandA | Send a command envelope to the companion Figma plugin over the local bridge. Commands: create_frame, create_text, create_rectangle, set_fills, set_effects, set_auto_layout, insert_image, move_node, resize_node, delete_node, get_selection, get_file_info, get_page_children, export_node. Use |
| import_html_replicaA | Import an HTML page or a replica spec into Figma as native frames via the plugin bridge. Give it an HTML file (htmlPath) or URL (htmlUrl) and it extracts layout + computed styles with headless Chromium, then rebuilds: main frame → section frames → nested containers / text / image nodes with absolute positions, border-radius, borders, shadows, gradients, and real image bytes. Alternatively pass a ready-made spec (spec/specPath, from get_html_replica_spec or hand-written). All degradations (missing fonts, SVG assets, failed images) are reported in the warnings array. Supports dryRun to preview the command plan. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/wenym8/figmingo-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server