Figma Context MCP
Give your coding agent access to your Figma data. Implement designs in any framework in one-shot.
Description from the maker (original English)
TokenLab MCP server: generate images and video, call models. 32 default and 89 full-profile tools.
These three are never merged into one score: opinions, measurements and popularity are different things.
We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.
Pick the AI app you use, then copy the settings.
TOKENLAB_API_BASE, TOKENLAB_API_KEY, TOKENLAB_REQUEST_TIMEOUT_MS, TOKENLAB_MCP_TOOL_PROFILE, TOKENLAB_MCP_SCHEMA_MODE, TOKENLAB_MCP_MAX_FILE_BYTES, TOKENLAB_MCP_INLINE_BYTES, TOKENLAB_ARTIFACT_DIR, TOKENLAB_MANAGEMENT_TOKENValues marked secret are keys to your account. Never share them or paste them into a chat.
You need
Which app do you use?
Pick your app above. We remember it, so next time the button says “Install in …”.
Open Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json
{
"mcpServers": {
"tokenlab": {
"command": "npx",
"args": [
"-y",
"@tokenlabai/mcp-server"
],
"env": {
"TOKENLAB_API_BASE": "your-value",
"TOKENLAB_API_KEY": "your-value",
"TOKENLAB_REQUEST_TIMEOUT_MS": "your-value",
"TOKENLAB_MCP_TOOL_PROFILE": "your-value",
"TOKENLAB_MCP_SCHEMA_MODE": "your-value",
"TOKENLAB_MCP_MAX_FILE_BYTES": "your-value",
"TOKENLAB_MCP_INLINE_BYTES": "your-value",
"TOKENLAB_ARTIFACT_DIR": "your-value",
"TOKENLAB_MANAGEMENT_TOKEN": "your-value"
}
}
}
}Run this in your terminal
claude mcp add tokenlab --env TOKENLAB_API_BASE=your-value --env TOKENLAB_API_KEY=your-value --env TOKENLAB_REQUEST_TIMEOUT_MS=your-value --env TOKENLAB_MCP_TOOL_PROFILE=your-value --env TOKENLAB_MCP_SCHEMA_MODE=your-value --env TOKENLAB_MCP_MAX_FILE_BYTES=your-value --env TOKENLAB_MCP_INLINE_BYTES=your-value --env TOKENLAB_ARTIFACT_DIR=your-value --env TOKENLAB_MANAGEMENT_TOKEN=your-value -- npx -y @tokenlabai/mcp-serverFill in the empty values before running it.
Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"tokenlab": {
"command": "npx",
"args": [
"-y",
"@tokenlabai/mcp-server"
],
"env": {
"TOKENLAB_API_BASE": "your-value",
"TOKENLAB_API_KEY": "your-value",
"TOKENLAB_REQUEST_TIMEOUT_MS": "your-value",
"TOKENLAB_MCP_TOOL_PROFILE": "your-value",
"TOKENLAB_MCP_SCHEMA_MODE": "your-value",
"TOKENLAB_MCP_MAX_FILE_BYTES": "your-value",
"TOKENLAB_MCP_INLINE_BYTES": "your-value",
"TOKENLAB_ARTIFACT_DIR": "your-value",
"TOKENLAB_MANAGEMENT_TOKEN": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
Paste into .vscode/mcp.json in your project
{
"servers": {
"tokenlab": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@tokenlabai/mcp-server"
],
"env": {
"TOKENLAB_API_BASE": "your-value",
"TOKENLAB_API_KEY": "your-value",
"TOKENLAB_REQUEST_TIMEOUT_MS": "your-value",
"TOKENLAB_MCP_TOOL_PROFILE": "your-value",
"TOKENLAB_MCP_SCHEMA_MODE": "your-value",
"TOKENLAB_MCP_MAX_FILE_BYTES": "your-value",
"TOKENLAB_MCP_INLINE_BYTES": "your-value",
"TOKENLAB_ARTIFACT_DIR": "your-value",
"TOKENLAB_MANAGEMENT_TOKEN": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
This one runs on your computer, and ChatGPT can only connect to servers on the internet. Pick another app.
Your choice stays on this device in a cookie; no account needed.
TOKENLAB_API_BASE envTOKENLAB_REQUEST_TIMEOUT_MS envTOKENLAB_MCP_TOOL_PROFILE envTOKENLAB_MCP_SCHEMA_MODE envTOKENLAB_MCP_MAX_FILE_BYTES envTOKENLAB_MCP_INLINE_BYTES envTOKENLAB_ARTIFACT_DIR envThese settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
Runs on your computer; the tool list appears in your AI app after you install it.
We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 6, 2026
The registry name was verified with the GitHub account hedging8563, which owns the repo
We have not read this repo from GitHub yet
We have not read this repo from GitHub yet
This one runs on your computer; there is no internet endpoint
Runs on your computer and uses local settings instead
Runs on your computer; we can only read tool lists from internet endpoints
Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.
It passed 1 of 1 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.
You need to fill in: TOKENLAB_API_KEY, TOKENLAB_MANAGEMENT_TOKEN
It runs on your computer. Your AI app starts it when needed, and data does not pass through the maker’s servers (unless it calls an online service itself).
The GitHub repo last changed –, and the latest version (0.6.44) reached the registry yesterday.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. You also need Node.js on your computer.
In the same category: Figma Context MCP, Claude Real Video, Figma MCP Server
Servers in the same category from other makers, sorted by stars.
Reading a card:★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi
Give your coding agent access to your Figma data. Implement designs in any framework in one-shot.
Let any LLM watch a video locally — and search everything it has ever watched.
Figma’s official server gives AI your design data so it can turn designs into code or describe them accurately. Connects to Figma’s cloud.
Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.
OpenAPI-generated Model Context Protocol server for TokenLab public model discovery, pricing, native LLM endpoints, typed decisions, multimodal generation, async tasks, files, embeddings, rerank, translation, resources, prompts, and the broader developer API.
It exposes public catalog tools for agents that need to choose models, inspect supported request formats, or compare pricing before calling TokenLab APIs. Credentialed tools cover text inference, image generation and editing, video, music, 3D, async task polling, embeddings, rerank, typed decisions, and text translation.
The checked-in generated/tools.json manifest is generated from TokenLab's public OpenAPI document plus the small MCP-only overlay in contract/mcp-overlay.json. Version 0.6.44 generates 87 endpoint tools; with the two MCP-only composite discovery tools, the full profile returns 89 tools from tools/list.
| Profile | Endpoint tools | Total registered tools | Model-facing schema | Coverage |
|---|---|---|---|---|
catalog | 4 | 6 | Exact | Public model discovery and pricing only; no API key required |
core (default) | 30 | 32 | Portable | Catalog and pricing; Chat Completions, Responses, Anthropic Messages, Gemini generateContent; System One typed decisions; images, video, music, 3D, speech and transcription; async tasks; files; embeddings, rerank, and translation |
full | 87 | 89 | Portable | Every allowlisted developer API operation in the checked-in OpenAPI snapshot, including core plus response lifecycle, batches, worlds, and native model discovery |
The total registered count is the number returned by tools/list. All profiles include compare_models and get_api_overview, producing totals of 6, 32, and 89 tools. Realtime and streaming-only operations are excluded because stdio MCP tool calls return one final result. API operations that accept stream fix it internally to false without exposing a boolean const to provider adapters, and the Gemini query-string API key is intentionally hidden from tool arguments. create_gemini_content exposes the camelCase Gemini fields (systemInstruction, generationConfig, safetySettings, toolConfig, cachedContent) and hides their snake_case proto spellings, which the API accepts as aliases.
The portable projection keeps every top-level argument but bounds deeply nested model-facing shapes. The server still validates calls against the complete generated OpenAPI schema before issuing an API request. Compatibility budgets keep core at no more than 60 KB and depth 8, and full at no more than 115 KB and depth 8 for the complete tools/list response. Tests also run the full profile through the Google AI SDK version used by the observed OpenCode/Gemini failure and keep its function declarations within 90 KB.
Set TOKENLAB_MCP_TOOL_PROFILE=catalog for the smallest public-only tool list or TOKENLAB_MCP_TOOL_PROFILE=full for the broad developer API. Set TOKENLAB_MCP_SCHEMA_MODE=exact only when a client needs the complete nested JSON Schema and can accept its larger/deeper tool payload. Use strict for providers that require every property to be listed in required and every object to set additionalProperties: false; complex top-level arguments are represented as JSON-encoded strings and decoded before canonical validation. Canonical tool names, descriptions, input JSON Schemas, HTTP bindings, content types, auth requirements, and task behavior can be inspected in generated/tools.json.
The smaller generated/public-contract.json is the machine-readable projection used by TokenLab's website and other public consumers. It contains package identity, profile counts, core tool layers, resources, prompts, and source hashes without copying all endpoint schemas.
structuredContent while retaining serialized text for older clients.exact mode is byte-shape equivalent to the generated canonical schema.choose_tokenlab_model and build_tokenlab_request prompts guide agents to use live model truth and preserve native endpoint shapes.npm install
npm start
Install from npm:
npx -y @tokenlabai/mcp-server
Agent-assisted installers can follow llms-install.md for a credential-safe setup and verification flow.
Run in Docker:
docker build -t tokenlab-mcp-server .
docker run --rm -i tokenlab-mcp-server
Add -e TOKENLAB_API_KEY when using credentialed API tools. Public catalog tools do not require a key.
Claude Desktop style config:
{
"mcpServers": { "tokenlab-model-catalog": { "command": "npx", "args": ["-y", "@tokenlabai/mcp-server"], "env": { "TOKENLAB_API_BASE": "https://api.tokenlab.sh" } } } }
No TokenLab API key is required for public catalog and pricing operations. Set TOKENLAB_API_KEY when credentialed tools should call TokenLab APIs. Generated tools preserve the OpenAPI request shape for OpenAI-compatible and native endpoints instead of flattening them into a shared prompt format.
Multipart operations accept local file paths. Small image and audio responses are returned as native MCP content; larger or other binary responses are written to TOKENLAB_ARTIFACT_DIR and returned as a path with MIME type and byte count.
Video, music, and 3D creation tools always return an async task. Image generation and editing may return a completed result or an async task depending on the selected model and request.
Media tools preserve the complete TokenLab API response under response and add a normalized delivery summary:
{
"delivery": { "mode": "async", "task_id": "ldtask_...", "status": "pending", "poll_url": "/v1/tasks/ldtask_...", "terminal": false, "next_tool": "get_task_status" }, "response": {} }
Use delivery.mode instead of assuming all image requests are synchronous. For async tasks, call get_task_status with { "id": delivery.task_id } until delivery.terminal is true. Completion is determined from status, not from an optional progress field.
TOKENLAB_API_BASE: optional, defaults to https://api.tokenlab.shTOKENLAB_API_KEY: optional; required for text inference, multimodal generation, async task, embedding, rerank, decision, and translation toolsTOKENLAB_MCP_TOOL_PROFILE: optional, catalog, core (default), or fullTOKENLAB_MCP_SCHEMA_MODE: optional, portable, exact, or strict; defaults to the selected profile's tested modeTOKENLAB_REQUEST_TIMEOUT_MS: optional request timeout in milliseconds, defaults to 120000TOKENLAB_MCP_MAX_FILE_BYTES: optional maximum local upload size per file, defaults to 104857600 (100 MiB)TOKENLAB_MCP_INLINE_BYTES: optional maximum binary/JSON response size returned inline, defaults to 2097152 (2 MiB)TOKENLAB_ARTIFACT_DIR: optional output directory for non-inline response artifacts, defaults to the OS temp directory under tokenlab-mcpFor Chat Completions image inputs, prefer byte-accurate data URLs such as data:image/png;base64,.... If an MCP caller labels a recognized PNG, JPEG, WebP, or GIF payload as application/octet-stream, the server corrects that generic MIME before forwarding. An unrecognized generic binary payload is rejected locally with a precise input error.
The public OpenAPI document is the API contract source. The overlay contains only MCP-specific choices: profile exposure, stable tool aliases, secret omission, non-streaming constraints, content-type variants, async task semantics, and the compact public projection consumed by the website and docs gates.
npm run contract:source-check # compare the snapshot with the live canonical OpenAPI (read-only)
npm run contract:check # check generated output against the checked-in snapshot (offline) npm run contract:sync # fetch OpenAPI and regenerate; refuses dirty outputs or a stale branch npm test # compile profiles and test exact/portable/strict schemas, provider conversion, routing, tasks, files, and binary output
Always run git pull --ff-only before a manual contract sync. contract:check proves internal consistency only; contract:source-check proves freshness against the canonical source. The scheduled Sync TokenLab OpenAPI contract workflow runs the full write sequence and commits only the verified OpenAPI snapshot and generated manifest to main. A failed fetch, stale local branch, dirty generated output, generation error, schema compilation error, or test leaves the tracked contract unchanged.
This repository includes server.json for the official MCP Registry.
Release metadata:
@tokenlabai/mcp-server@0.6.44io.github.hedging8563/tokenlabpackage.json.mcpName: io.github.hedging8563/tokenlabFor a new release:
package.json, package-lock.json, and server.json.v0.6.0.The same workflow can be run manually from main to republish only the current MCP Registry metadata. No npm or MCP Registry token is stored in GitHub.
Use the catalog profile when no credentialed tools are needed. Keep TOKENLAB_API_KEY in the local MCP client's secret environment, enable human confirmation for billable and destructive calls, and review tool annotations before granting persistent approval. Do not send a TokenLab API key to an untrusted hosted MCP server.
Each API request sends X-TokenLab-Client-Source: mcp- (for example mcp-create_image) so TokenLab can count which tools are used. Reading the tokenlab://api/overview resource sends mcp-resource-api_overview. The header holds only the lowercased tool name, cut to 64 characters, and no tool arguments.
Use the full profile to configure workspace webhooks with list_webhooks, create_webhook, get_webhook, update_webhook, delete_webhook, rotate_webhook_secret, test_webhook and list_webhook_deliveries.
Set `TOKENLAB_MANAGEMENT
Only the beginning is shown; read the rest in the repo