FigmaMCP

Edit Figma with Claude Code

Yes. Claude Code can edit a live Figma file if it is connected to a tool that can act inside Figma. FigmaMCP is a free one: Claude Code talks to a small local MCP server, the server talks to a development plugin open in your Figma desktop app, and the edits appear in your file. It needs macOS, the desktop app, and no API token.

Set up

  1. Run setup

    In a terminal:

    npx figmamcp setup
  2. Import once in Figma

    In the desktop app: Plugins, Development, Import plugin from manifest. Pick the manifest that setup points to.

  3. Open it in your file

    Run FigmaMCP from Plugins, Development. Choose the one page or frame Claude Code may edit. Leave the panel open.

If you prefer to register the server yourself, the command is claude mcp add figmamcp -- npx -y figmamcp. For Codex, add a server named figmamcp with command npx and arguments -y, figmamcp to your Codex MCP configuration.

Prompts that work well

You askWhat happens
“On this page, rename every layer called Frame 12 to match its heading.”Claude Code reads the page, then renames the matching layers in one validated batch.
“Replace the old product name in all text layers in this frame.”It finds the text layers in the frame and rewrites them together.
“Build a pricing card with three tiers using our variables.”It creates frames and text with auto layout, bound to your variables if you have allowed variable edits.
“Delete this color variable.”Refused if layers still use it, so you do not get broken references.

Guardrails you control

Limits of this setup

Questions

Does Claude Code need a Figma token to edit a file?
Not with FigmaMCP. It works through the Figma desktop app on your Mac, so there is no access token to create.
Does the file need to be open?
Yes. The file must be open in the Figma desktop app, with the FigmaMCP panel open in it.
Can Claude Code edit a file I did not open?
No. It edits the live file in front of you, within the page or frame you chose.
What if an edit is refused?
The tool returns a structured error explaining why, for example the layer name did not match or the target is outside your chosen scope. Claude Code can then correct the request.
Does this work with Codex?
Yes. Codex is a supported target. See the setup note below.