The official Figma MCP server is pretty underwhelming at best. It is very intentionally one way only. You can pull context about your design, but you can’t manipulate the design itself.
That’s unfortunate because there’s still a LOT of manual minutiae involved with maintaining systems in Figma. Lots of clicking and dragging and renaming things. Things that are completely unrelated to the actual craft of design and just waste time. Things that can be completely automated.
It’s cool that Figma got ahead and were among the first to offer an MCP, but their MCP is so useless that it’s clear that it only exists as a means for Figma to control the narrative—after all, if you can use AI to generate designs, well you know what comes next.
A Better Way
Asking Claude to generate a complicated button component with multiple variants, states, and variables
It doesn’t have to be that way. It turns out that Figma exposes their entire plugin API right in the browser. Meaning, if you want to let Claude1 rip over your design, all you need to do is give it access to a browser. Once in a file, Claude can interact with the Figma plugin API itself by writing and executing code instead of manually clicking and dragging.
!!! SECURITY WARNING !!! Before you try this, it’s important to understand the risk. When you give your LLM access to a browser, it can do all sorts of things like delete your file or, if you’re not looking, go into your admin account and turn on some setting that sends you a bill for sending guest links or something. This is no worse than using the official Claude For Chrome plugin, but it’s important to read what it’s trying to do before approving any tool calls. And the cool thing is, if you don’t understand what it means, just keep asking it to explain.
Installation
For this to work, you only need a single MCP—a browser. There are a lot of options, I like the Chrome Devtools CDP. You can install it in Claude Code with:
claude mcp add chrome-devtools npx chrome-devtools-mcp@latest
Then all you need to do is prompt. Literally, just copy and paste this, login to Figma, navigate to your file, and ask Claude to do whatever. This really works best with Claude Code, but don’t be put off by the terribly-named, gatekept “Code” product name2. Claude Code can be used for so much more than just cranking out code.
That’s all you need. No third party plugins or websocket servers. Just have Claude open a browser and write code.
Plugin
To make it a little easier to install, I wrapped this (markdown file) in a claude code plugin:
/plugin marketplace add markacianfrani/claude-code-figma
/plugin install figma-friend
Use Cases
- Creating and maintaining components
- Auditing usage across multiple files
- Triaging designs, random organization, and documentation
- Comparing implementations against code
- Literally whatever
This obviously doesn’t replace designers. And you can clearly see in my example where it got things wrong if you pay attention. It’s another tool in the toolbox that you can thoughtfully reach for. At least until Figma completely shuts this down.