My new Mac arrived eight days ago. I spent the weekend running an AI model locally and plugging it into Figma. Spoiler: the problem wasn't the machine.
Everything works, except the door
Qwen3-Coder-Next, 53 GB loaded 100% on the GPU. Everything works. All that's left is connecting Figma's MCP server. I created the OAuth app, filled in the scopes, registered the client. The flow starts fine, until this response:
Invalid scope: mcp:connect
That scope is only granted to a list of approved clients: Claude Code, Cursor, VS Code. Not mine.
The workaround
So I worked around it. I plugged my local model into the Claude Code extension for VS Code: same identity, the one that's on the list. One environment variable, and it's my model answering behind it.
Authentication successful. Connected to figma.
First call. The model picks the right tool, invokes it correctly. Error.
The next wall: a model that can't see
When you ask Figma to read a screen, it sends you back an image. Qwen3-Coder is a code model: it can't see. A single image in the conversation, and the session is dead.
The weekend sums up in two lines. What works: the model runs, it's fast, nothing leaves my machine, and I installed Open WebUI on top, a chat interface like ChatGPT or Claude, fully local. What's blocking: Figma. Not the compute, not the model. Access.
What's next
Next up: plugging in my own MCP servers, the ones I built to make a brand and a design system readable by an AI.
That's the whole point of going local: you see everything. What the model takes in, what it keeps in memory, what it recomputes every time. The goal isn't a technical stunt, it's getting better by understanding the engine.