What it does
Claude reads your Brands and tokens, exports them as code and proposes token changes. Every proposal waits in the Command Center for a person to approve it. The tools are listed at /docs/mcp.
Before you start
- A Stoaken account with at least Viewer on a Brand. On the Free plan agents are read only.
- Claude Code, or Claude Desktop / claude.ai (custom connectors work on every plan; Free allows one, and on Team/Enterprise only an Owner can add one).
- Optional: an API key from Settings > API keys if you don't want to sign in with the browser.
Setup
Claude Code — in your project:
npx stoaken init --client claude-codeThis writes .mcp.json (merged with any servers already there). Start Claude Code, approve the project server, then run /mcp and pick stoaken to sign in. Or add it by hand:
claude mcp add --transport http stoaken https://www.stoaken.com/mcpClaude Desktop and claude.ai — remote servers are added as connectors, not in a config file (source: custom connectors):
- Customize > Connectors > + Add > Add custom connector.
- Name
Stoaken, URLhttps://www.stoaken.com/mcp. - Sign in with OAuth (Register automatically), or add the header
Authorization: Bearer <API key>. - In a chat: + > Connectors, turn Stoaken on.
npx stoaken init --client claude-desktop prints these steps; it writes no file.
Configuration
.mcp.json written by stoaken init (no secret in it, safe to commit):
{
"mcpServers": {
"stoaken": { "type": "http", "url": "https://www.stoaken.com/mcp" }
}
}If you pasted an API key during init, the entry instead sends "headers": { "Authorization": "Bearer ${STOAKEN_API_KEY}" } and Claude Code expands the variable from your shell. Setting that header turns off OAuth for the server.
Try it
- "List my Stoaken Brands."
- "Which tokens are deprecated in the Default theme, and what replaces them?"
- "Propose raising spacing.lg to 24px as a minor release."
Troubleshooting
- Server missing in Claude Code:
.mcp.jsonservers need approval; runclaude mcp reset-project-choicesand restart. - 401 with an API key:
STOAKEN_API_KEYisn't set in the shell that started Claude Code (it then sends the literal${STOAKEN_API_KEY}). - Sign-in loop: run
claude mcp login stoakenfrom the terminal. - Connector can't reach the server: claude.ai connects from Anthropic's cloud, so only the public
https://www.stoaken.comworks, not a local dev server.
Limits
- No tool approves or publishes a release.
- Writes count towards a per-key limit; Free plan is read only.
- Claude Desktop's local
claude_desktop_config.jsononly starts local (stdio) servers. Use a connector instead; a stdio bridge such asmcp-remotealso works but isn't something we support.