Skip to main content
Glama

Figma Bridge

CI M8ven Verified

Let any AI agent design in the Figma desktop app, with no rate limits.

Figma Bridge is a local MCP server plus a Figma plugin. Your agent gets full read and write access to the open file through the Plugin API, not the web API: no tokens, no quotas. (A token is only needed for the optional comments and version history tools.)

Works with Claude Code, Claude Desktop, Codex, Antigravity, Gemini CLI, Cursor, Windsurf and any other MCP client.

Features

  • Build whole layouts in one call from a JSON spec: auto-layout and grid, rich text, icons, images, component sets with variants and properties, prototype links, and professional layer names (Header, Card, Title, PrimaryButton) (naming). The spec is checked first: CSS habits (borderRadius, "16px", rgb(), "100%") are converted and unknown properties come back as warnings with the right name, so nothing is silently ignored.

  • Import any website or HTML as editable auto-layout frames, one per viewport (details).

  • Round-trip the design system: write variables with Light/Dark modes and styles from JSON, W3C tokens or Tailwind; export them to DTCG, CSS, Tailwind v3/v4, SCSS or TypeScript (details).

  • Score and fix design system health: token coverage, contrast, text styles, detached instances, duplicates, naming, with safe automatic fixes.

  • Read existing designs compactly, search every page, and reuse the file's design system.

  • Check its own work with screenshots, a design audit, and a pixel diff against a mockup.

  • Hand off to your codebase: export a frame into your project with its own components, tokens and stack (React, Next, Vue, Svelte, React Native; Tailwind, CSS modules, styled-components; shadcn, MUI, Chakra) (details), plus Dev Mode annotations.

  • Ship to Roblox: turn a frame into native Roblox UI (ScreenGui, UIListLayout, UICorner, UIStroke, UIShadow, 9-slice panels), all in scale with professional names, as an .rbxmx model and a Luau script for a Roblox Studio MCP, with optional asset upload (details).

  • Figma Design, FigJam and Slides: stickies, shapes, connectors, tables, Mermaid flowcharts laid out as diagrams, and slide decks; several files at once (details).

  • 200 000+ icons through Iconify, checkpoints to roll back, and a library of reusable scripts.

  • Zero-friction connection: the plugin connects and reconnects on its own. Each AI command is one Ctrl+Z step, and you can cancel it from the plugin.

Related MCP server: Writable Figma MCP Bridge

How it compares

Figma Bridge

figma-console-mcp

Figwright

Figma MCP server (official)

Setup

npx … setup configures every AI client found and installs the plugin

npx, a personal access token, plugin import

Plugin zip import, MCP config

OAuth (remote) or the desktop app

Figma plan or seat

Any, free included

Any

Any, free included

Writing to the canvas: Full or Dev seat on a paid plan

API token

Not needed (only for comments and versions)

Required

Not needed

OAuth sign-in

Tools

29

121

116

16

Whole layout in one call

✓ build spec (auto-layout, grid, variants, prototype)

Component sets from a variant matrix

—

—

Pixel diff against a mockup

✓ compare, with heatmap

—

Diff against a saved baseline

—

Checkpoints to roll back

✓

—

—

—

Website or HTML → editable layers

✓ any URL, HTML or file, several widths

—

—

Captures UI rendered in a browser

Code that uses your components and tokens

✓ React, Next, Vue, Svelte, React Native

—

✓

✓ with Code Connect

Token export

DTCG, CSS, Tailwind v3/v4, SCSS, TS, JSON

10 formats

—

—

FigJam and Slides

✓ boards, Mermaid diagrams, decks

✓

FigJam, partly

—

Figma → Roblox UI

✓ native UI objects, .rbxmx + Luau, Open Cloud upload

—

—

—

Based on each project's documentation in October 2026; "—" means it isn't documented there. Corrections are welcome in an issue.

Installation

Requires Node.js 20+ and the Figma desktop app.

  1. Run:

    npx @clovis500c/figma-bridge setup

    It adds Figma Bridge to every AI client installed on your machine (originals are backed up), copies the Figma plugin to ~/.figma-bridge/plugin and prints the path of its manifest.

  2. In Figma: Plugins → Development → Import plugin from manifest… and select that manifest.json.

  3. Restart your AI client, open a Figma file and run Plugins → Development → Figma Bridge. A green Live badge means it's connected.

Updates are automatic: each time your AI client starts, it runs the latest release and refreshes the plugin. Reopen the plugin in Figma when it shows Update installed. To review each release yourself instead, run npx @clovis500c/figma-bridge setup --pin: your clients then run that exact version until you run setup again.

Download the latest release, unzip it, and run in that folder:

bun install
bun run setup

Then import the manifest.json it prints (in ~/.figma-bridge/plugin) in Figma as in step 2.

npx @clovis500c/figma-bridge setup --print prints these snippets. To target one client: setup --client codex.

Most clients (mcpServers in their JSON config):

{
  "mcpServers": {
    "FigmaBridge": {
      "command": "npx",
      "args": ["-y", "@clovis500c/figma-bridge"]
    }
  }
}

On Windows, use "command": "cmd" and "args": ["/c", "npx", "-y", "@clovis500c/figma-bridge"].

Codex (~/.codex/config.toml):

[mcp_servers.FigmaBridge]
command = 'npx'
args = ['-y', '@clovis500c/figma-bridge']
startup_timeout_sec = 60

Client

Config file

Claude Code

~/.claude.json

Claude Desktop

%APPDATA%\Claude\claude_desktop_config.json

Codex

~/.codex/config.toml

Antigravity

~/.gemini/antigravity/mcp_config.json (or Manage MCP Servers → View raw config)

Gemini CLI

~/.gemini/settings.json

Cursor

~/.cursor/mcp.json

Windsurf

~/.codeium/windsurf/mcp_config.json

Usage

Keep the plugin open (the — button collapses it to a thin bar) and ask your agent, for example:

Design a mobile sign-in screen from scratch on a new page: logo, email and password fields, a primary button and a "Forgot password?" link.

Import https://example.com/pricing at desktop and mobile widths, then rename the layers and use our text styles.

Export the selected card into C:\code\my-app using our existing components, then write it.

Audit our design system, fix what can be fixed safely, and tell me the score before and after.

Clients that support MCP prompts also offer ready-made workflows: new-screen, apply-design-system, reproduce-screenshot, import-website, figma-to-code, audit-and-fix and figma-to-roblox. Ready-made specs and tokens are in examples/.

When your agent needs you to point at something, the plugin shows Your agent is waiting until you select it. A running command has a Cancel button: build stops at the next layer, but a script cannot be interrupted and finishes in the background.

To reopen the plugin later, use Ctrl+Alt+P or the Figma Bridge button in the right panel.

Tools

Tool

Purpose

build

Create a layout in one call: grid, rich text, variants, reactions; FigJam boards and diagrams; slides

import_web

Rebuild a website or HTML as editable layers, one frame per viewport

run_script

Run any Figma Plugin API code

describe

Compact outline of existing layers

find

Search layers on every page by name, text, type, style or component

get_design_system

Local styles, variables and components

design_tokens

Write variables (with modes) and styles from JSON, W3C tokens or Tailwind; export them to DTCG, CSS, Tailwind, SCSS or TS

audit

Lint layers, score the design system's health, and apply safe fixes

screenshot

Export a layer to an image (optionally shown to the agent)

compare

Pixel-diff a layer against a reference image, with a heatmap

wait_for_selection

Ask the user to select layers and wait for it

prototype

Link frames (click, hover, transitions) and set flow starting points

annotate

Add, list or clear Dev Mode annotations

export_code

Export a frame to code; with projectPath, code that uses the project's components and tokens

export_roblox

Export a frame to Roblox UI in scale: .rbxmx, a Luau builder script and PNG assets, optionally uploaded

insert_icon · search_icons

Iconify icons as editable vectors

place_image · import_svg

Images from disk or URL, SVG as vectors

checkpoint

Save layers and restore them later

snippets

Reusable script functions (lib.name() in scripts)

get_context · get_css · list_fonts

File info, generated CSS, installed fonts

comments · versions

Optional, with a Figma token: read, post and answer comments; version history and diffs (setup)

list_sessions · select_session

Choose a file when several are open (or pass file to any tool)

guide

Reference docs the agent reads on demand: workflow, full build spec, run_script, FigJam and Slides, naming, Roblox

Each tool describes its parameters to the agent, which needs no extra instructions. The server's instructions stay under 2 000 characters (some clients cut longer ones); the details are one guide call away. To hide tools you never use, list them in FIGMA_BRIDGE_DISABLE_TOOLS, e.g. export_roblox,comments,versions.

Troubleshooting

Plugin status

Fix

Offline

The MCP server isn't running: start or restart your AI client and check that FigmaBridge is enabled.

Port busy

Another program uses port 3055. Close it; the plugin reconnects.

Update installed

A newer version was installed: click Reopen, then run the plugin again (Ctrl+Alt+P).

Older server

Your AI client still runs an older release: restart it.

"reopen this plugin to pair it"

The plugin copy doesn't have this machine's pairing token: close and reopen it. If you imported it from another folder, import ~/.figma-bridge/plugin/manifest.json instead.

Logs, screenshots, comparison heatmaps and exported code are written to %TEMP%\figma-bridge. import_web uses your installed Chrome or Edge; set FIGMA_BRIDGE_BROWSER to use another Chromium-based browser.

Development

bun install       # also builds the plugin and dist/server.js
bun run build     # plugin/code.ts → plugin/code.js, src/cli.ts → dist/server.js (Node)
bun run check     # type-check server and plugin, reject syntax Figma cannot run
bun test          # unit tests (bridge, setup, schemas, tokens, code generation, web import, Roblox)
bun run test      # end-to-end test against an open Figma file

To release, change version in package.json and server.json in your PR and merge it: the Release workflow starts on its own, publishes to npm and creates the GitHub release, and every AI client runs the new version at its next start (npx @latest). Actions → Release → Run workflow on main still works by hand. Directory listings (MCP Registry, Glama, Smithery, LobeHub) are described in docs/publishing.md.

Options: FIGMA_BRIDGE_PORT (default 3055), FIGMA_BRIDGE_CHANNEL, FIGMA_BRIDGE_OUT, FIGMA_BRIDGE_SNIPPETS, FIGMA_BRIDGE_BROWSER, FIGMA_BRIDGE_DISABLE_TOOLS, FIGMA_TOKEN for the optional REST tools, and ROBLOX_API_KEY + ROBLOX_CREATOR_ID for Roblox asset upload.

The server listens on 127.0.0.1 only, and browsers can't send it commands. A web page can't pose as the plugin either: a sandboxed iframe sends the same Origin: null as Figma's plugin UI, so the hub also requires a pairing token that only the installed copy in ~/.figma-bridge/plugin carries (written by setup and refreshed at each server start; the token itself is in ~/.figma-bridge/pairing-token). To run the plugin straight from a clone's plugin/ folder, set FIGMA_BRIDGE_PAIRING=0 for the server, or import ~/.figma-bridge/plugin/manifest.json, which the server keeps in step with your build.

Related MCP Connectors

  • The Figma MCP server brings Figma design context directly into your AI workflow.

  • Talk to your public-facing AI from any MCP client — Claude, ChatGPT, Cursor, Cline, Windsurf.

  • The OpenRouter MCP server plugs OpenRouter into the AI tools you already use. Once connected, your assistant can pull live OpenRouter data (models, prices, your credits, rankings, and docs) and send quick test messages, all without leaving your editor.

  • Local Commander connects ChatGPT, Claude, Cursor and other MCP clients to Windows 11 computers you own. Your AI can read approved project files and Git state, run the checks and commands you authorize, and check local services. Your workspace at localcmd.app shows which computer ran each request and how it ended. Once you approve a computer and connect your AI, it can do what your Windows account can do; you can limit it to folders, block commands or switch it off at any time. Free on up to 5 computers; the Team pack adds 10 more for $15 a month.

Related MCP Servers

  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables MCP-compatible AI clients to read and modify the user's currently open Figma file by executing JavaScript in Figma's sandbox, all through a local bridge with status monitoring, node jumping, and automatic rollback on errors.
    1
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables MCP clients to read and modify the currently open Figma design file through a paired local Figma plugin, supporting operations like creating nodes, editing properties, and exporting PNG/SVG.
    37 npm
    2
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables stdio MCP clients such as Cursor and Claude Code to read and modify the currently open Figma Desktop file, export selected nodes as local PNG/SVG files, and create or edit basic canvas nodes using precise layout data for pixel-level reconstruction.
    1,258 npm
    1
    MIT