AI MCP for Product Designers | Make your Figma design system machine-readable and MCP-enabled
What you need to know about Model Context Protocol
👋 Hello, it’s Niki here! Welcome to this ✨ free edition ✨ of The Product Microscope newsletter, where we deep-dive into the world of UX, sharing practical tips and insights that will take your product, UX design, and user research skills to the next level, enabling you to make a greater impact as a design practitioner and accelerate your career growth.
If you prefer this article in a video (or audio) format, watch it here:
You’ve just spent three days perfecting a new navigation component.
Every state is documented.
Every variant is labelled.
You’ve written detailed specs, annotated your Figma file, and even recorded a quick video explaining the interaction patterns.
You hand it off to your developer.
They start building.
Two weeks later, you’re in staging, and the padding is wrong.
The hover states don’t match.
The mobile breakpoint is using the wrong token.
You ping your dev: “Hey, just a few quick tweaks…” But they’re already three features deep into the next sprint.
Sound familiar?
This is the design-dev handoff we all know so well. And it’s expensive; not just in terms of time, but also in context switching, relationship strain, and the slow erosion of your design system’s integrity.
We’ve been trying to solve a “design-to-code translation/interpretation” problem with better documentation.
What if the problem isn’t our documentation at all?
What if it’s the fact that developers have to manually convert (build) our designs into code in the first place?
MCP: The missing link in your workflow
MCP (Model Context Protocol) is a new standard that enables AI agents to read and interpret the structured information in your design files, including components, properties, tokens, and documentation, and use that information to generate code, update systems, and bridge the gap between design and development.
Basically, MCP teaches your design files to “speak developer.”
Not through better annotations or clearer specs, but by making the structure of your designs directly machine-readable.
When your button component has clear variants, consistent naming, and proper tokens applied, MCP can expose all this information to AI coding tools, such as Claude Code, which can then generate the actual implementation (it codes your design).
The real problem we’re solving
Let’s be honest about what actually happens during handoffs:
The documentation gap: You document 90% of the component. The developer implements based on that 90%. The missing 10% gets filled in with assumptions.
The translation/interpretation gap: Even when documentation is perfect, humans interpret things differently. Your “8px padding” might become “0.5rem” which renders as 7px on their setup.
The context gap: By the time bugs surface, you’ve moved on. The developer has moved on. Nobody remembers why that decision was made, and now fixing it requires archeology.
The momentum gap: Each back-and-forth conversation between design and dev adds days or weeks. Multiply that across dozens of components and hundreds of changes, and you’re looking at months of accumulated delay.
MCP doesn’t eliminate these gaps entirely.
But it shrinks them dramatically by removing one entire layer of human translation.
How it actually works
Here’s the simplest way to think about MCP:
Traditional flow:
You design a component in Figma
You write documentation explaining how it should work
A developer reads your documentation
They build their interpretation in code
You QA and find mismatches
Repeat steps 4–5 until it’s right
MCP-enabled flow:
You design a component in Figma with clear structure
MCP exposes that structure to AI tools
AI generates code that matches your structure
You and your dev review the generated code together
You catch issues immediately while context is fresh
You both iterate from the same source
The key difference is that MCP moves the translation step earlier: from “after the developer has already built it” to “right after you’ve designed it.”
Real scenarios where MCP changes everything
Scenario 1: Building a new feature
Your PM wants a new dashboard card component. You design it with three size variants (small, medium, large) and four states (default, hover, loading, error).
Without MCP: You document everything, hand it off, and three days later your dev asks “What spacing should I use between the icon and text?” You realize you forgot to specify it. Add another day.
With MCP: You design with proper auto layout. MCP reads your spacing, exposes it to the AI coding assistant, and generates the initial implementation in minutes. Your dev reviews it, you both spot the icon alignment issue immediately, and it’s fixed in the same session.
Scenario 2: Updating design tokens
Your brand refreshes. Primary blue changes from #0066CC to #0052A3. You need to update 47 components.
Without MCP: You update Figma. You update documentation. You update the design system site. Developers update their token files. Inevitably, some components get missed. You discover them three months later.
With MCP: You update your Figma token. MCP-connected tools can automatically detect the change, flag affected components, and help generate the code updates. Everyone works from the same source of truth.
Scenario 3: QA and bug fixes
You’re reviewing a new feature in staging. The spacing feels off, but you can’t quite tell why.
Without MCP: You take screenshots, measure with browser tools, compare to Figma, write up Jira tickets. Your dev investigates, realizes they used margin instead of padding. Fixed next sprint.
With MCP: Because the code was generated from your Figma structure, you can trace the issue back to the source immediately. Was it a design decision or a generation error? You know instantly and can fix it on the spot.
What you need to do right now
MCP is still emerging, but you can prepare your workflow today:
1. Clean up your component structure
Start thinking about your Figma components as data, not just visuals. That means:
Consistent naming conventions across all components
Proper use of variants (not separate components for every state)
Tokens applied systematically, not hard-coded values
Auto layout everywhere when it makes sense
2. Document with machines in mind
Your component descriptions should be structured and consistent. Instead of “This is a button that does stuff,” try:
Purpose: Primary action trigger
Variants: Default, hover, active, disabled, loading
Sizes: Small (32px), Medium (40px), Large (48px)
Tokens: Uses surface-primary, text-inverse, border-radius-md
3. Sync with your dev team on structure
Set up a 30-minute meeting with your developers. Ask:
How do you currently handle design tokens?
What information is most useful in handoff documentation?
Where do things typically get lost in translation?
How do you name components and variants in code?
The goal is alignment. When MCP starts translating between your worlds, having similar mental models makes everything smoother.
4. Start small with one component
Pick your primary button component. Make it bulletproof:
Every variant clearly defined
All states documented
Tokens properly applied
Naming consistent
Properties exposed and labeled
Use this as your MCP-ready template. When MCP matures, you’ll be ready to scale.
The limitations
MCP is great and all, but let’s be clear about what MCP doesn’t do…yet:
It doesn’t understand design intent. MCP can read that your button has 16px of padding, but it can’t know why you chose 16px or when to break that rule. Design reasoning still requires human judgment.
It’s not magic. You still need well-structured components. Garbage in, garbage out. If your Figma file is messy, MCP can’t fix that.
It’s still early. Implementation varies by tool. Not everything is supported yet. You’ll hit rough edges.
It requires buy-in from both sides. If your dev team isn’t interested or your design files aren’t structured, MCP won’t help. This is a collaboration tool, not a replacement for collaboration.
Where this is all heading
Right now, MCP mostly works in one direction: design artifacts to code.
But the real transformation happens when it becomes bidirectional:
Your production app automatically syncs back to your design system
When a developer makes an emergency hotfix to adjust spacing, your Figma file updates to reflect reality
When users trigger a state you didn’t design for, your component library flags the gap
Your design system becomes a living reflection of what’s actually shipped, not just what you intended to ship.
That’s the future.
And the designers and teams who start preparing now using clean structures & conventions, and aligned processes, will be the ones ready to take advantage when that future arrives.
Start tomorrow!
You don’t need to master MCP overnight; I’m still learning about it myself.
But you can start making your design work more machine-readable tomorrow:
Pick one component
Clean up its structure
Document it systematically
Talk to a developer about what they need
Do that, and you’re already ahead of 95% of designers. Because the future of design-dev handoffs isn’t about writing better documentation.
It’s about making documentation obsolete.

