Figma Context MCP
Give your coding agent access to your Figma data. Implement designs in any framework in one-shot.
Generate and edit images, remove backgrounds, upscale, and create sprite sheets through DreamLayer.
Pick the AI app you use, then copy the settings.
Passed 3/3 checks · Runs on your computer · ✓ Commands checked Nov 13, 2026
First: which AI do you use?
Pick your app and the steps appear below.
Works with Claude, with some setup first
You need a Dreamlayer key (create it on the maker’s site) · Install Node.js on your computer first (one time) · Only the Claude desktop app (Windows or Mac), not the web or phone
One time only; it works for every server that needs Node.js
Open the maker’s site, sign up and create an API key for the next step. Check the maker’s site for pricing and free plans.
How to get a key is in the maker’s README below
SettingsDeveloperEdit Config
{
"mcpServers": {
"dreamlayer": {
"command": "npx",
"args": [
"-y",
"@dreamlayer/mcp"
],
"env": {
"DREAMLAYER_API_KEY": "your-value"
}
}
}
}Paste the key only into the app’s field, never into a chat or to anyone
Use Dreamlayer and tell me what you can do for me, then show me one thing✓ If Claude says it is using Dreamlayer or shows a Dreamlayer tool in the answer, you are connected
Menu names checked against Anthropic’s help page on Nov 11, 2026 · your screen may differ slightly by app version
ChatGPT cannot connect Dreamlayer yet
Dreamlayer runs on your computer, but ChatGPT can only connect servers that run on the web
A · Use an app that can connect Dreamlayer
B · Others in Design, images & audio that work with ChatGPT
Picked from the most used in the same category, only ones that connect by address with no key
Works with Claude Code, with some setup first
You need a Dreamlayer key (create it on the maker’s site) · Install Node.js on your computer first (one time)
One time only; it works for every server that needs Node.js
Open the maker’s site, sign up and create an API key for the next step. Check the maker’s site for pricing and free plans.
How to get a key is in the maker’s README below
Mac: press Command+Space and type Terminal · Windows: open PowerShell
claude mcp add --scope user dreamlayer --env DREAMLAYER_API_KEY=your-value -- npx -y @dreamlayer/mcpReplace “your-value” with your key before pressing Enter
Paste the key only into the app’s field, never into a chat or to anyone
You should see Dreamlayer listed as connected
Use Dreamlayer and tell me what you can do for me, then show me one thing✓ If Claude Code says it is using Dreamlayer or shows a Dreamlayer tool in the answer, you are connected
Menu names checked against Anthropic’s help page on Nov 11, 2026 · your screen may differ slightly by app version
Works with Cursor, with some setup first
You need a Dreamlayer key (create it on the maker’s site) · Install Node.js on your computer first (one time)
One time only; it works for every server that needs Node.js
Open the maker’s site, sign up and create an API key for the next step. Check the maker’s site for pricing and free plans.
How to get a key is in the maker’s README below
In the Dreamlayer settings, DREAMLAYER_API_KEY is empty; add your key and save
Paste the key only into the app’s field, never into a chat or to anyone
Use Dreamlayer and tell me what you can do for me, then show me one thing✓ If Cursor says it is using Dreamlayer or shows a Dreamlayer tool in the answer, you are connected
Menu names checked against Cursor’s help page on Nov 11, 2026 · your screen may differ slightly by app version
Works with VS Code, with some setup first
You need a Dreamlayer key (create it on the maker’s site) · Install Node.js on your computer first (one time)
One time only; it works for every server that needs Node.js
Open the maker’s site, sign up and create an API key for the next step. Check the maker’s site for pricing and free plans.
How to get a key is in the maker’s README below
In the Dreamlayer settings, DREAMLAYER_API_KEY is empty; add your key and save
Paste the key only into the app’s field, never into a chat or to anyone
Use Dreamlayer and tell me what you can do for me, then show me one thing✓ If VS Code says it is using Dreamlayer or shows a Dreamlayer tool in the answer, you are connected
Menu names checked against VS Code’s help page on Nov 11, 2026 · your screen may differ slightly by app version
Claude Code
claude mcp add --scope user dreamlayer --env DREAMLAYER_API_KEY=your-value -- npx -y @dreamlayer/mcpClaude Desktop (claude_desktop_config.json)
{
"mcpServers": {
"dreamlayer": {
"command": "npx",
"args": [
"-y",
"@dreamlayer/mcp"
],
"env": {
"DREAMLAYER_API_KEY": "your-value"
}
}
}
}Cursor (~/.cursor/mcp.json)
{
"mcpServers": {
"dreamlayer": {
"command": "npx",
"args": [
"-y",
"@dreamlayer/mcp"
],
"env": {
"DREAMLAYER_API_KEY": "your-value"
}
}
}
}VS Code (mcp.json)
{
"servers": {
"dreamlayer": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@dreamlayer/mcp"
],
"env": {
"DREAMLAYER_API_KEY": "your-value"
}
}
}
}DREAMLAYER_API_KEY secret required envDescriptions are as written by the maker.
These settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
Based on how this server connects and on each app’s own docs, checked Nov 10, 2026.
Run on your computer in
ClaudeGooseLM StudioMsty StudioCherry StudioCursorVS Code + GitHub CopilotVisual StudioWindsurf (Devin Desktop)ZedKiroClineContinueJetBrains AI AssistantClaude CodeCodex CLIGemini CLIOpenCodenodecodeWarpLibreChatRaycast
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 14, 2026
The registry name was verified with the GitHub account TheDesignFounder, which owns the repo
Code last changed 27 days ago
Uses MIT
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
Ask, share a tip or report that it does not work. Sorted by what people marked helpful.
No posts yet. Be the first to ask or share.
Posts here are written by users, not the PopNx team.
No reviews yet
Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.
It passed 3 of 3 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: DREAMLAYER_API_KEY
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 27 days ago, and the latest version (0.4.0-beta.5) reached the registry 2 months ago.
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, AutoClip, Next AI Draw.io
Servers in the same category from other makers, sorted by stars.
Reading a card:↓ Downloads per weeki★ 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.
Clip long videos into short clips with covers and captions. Local CLI and MCP.
draw.io diagrams your AI agent draws on a live browser canvas that you can also edit by hand
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.
Image generation and editing tools for MCP-compatible AI clients, backed by the DreamLayer Agent API.
This working tree includes the unpublished 0.5.0-beta.0 video candidate. The published version in the installation section below remains image/sprite-only. For local review use Node >=22.12, pnpm install --frozen-lockfile, pnpm build, and configure the MCP client to run node /absolute/path/to/dist/index.js with an authorized video-enabled API endpoint. This does not publish or deploy anything.
dreamlayer_video_quote performs no paid generation. dreamlayer_video_execute admits only a ready owned quote under an explicit user-authorized credit ceiling. Never invent that authorization. Save the idempotency key before execution.
{"tool":"dreamlayer_video_quote","arguments":{"operation":"text_to_video","prompt":"A silent forest video","options":{"resolution":"720p","generate_audio":false,"aspect_ratio":"16:9"}}}
For an image, first use dreamlayer_upload_image with an absolute local path, then use the returned owned asset ID:
{"tool":"dreamlayer_video_quote","arguments":{"operation":"image_to_video","prompt":"Restrained product showcase on a clean white background","input_asset_id":"OWNED_ASSET_UUID","context":{"use_case":"product_showcase","requested_background":"clean_white"},"options":{"model":"auto","duration_seconds":15,"generate_audio":false}}}
{"tool":"dreamlayer_video_execute","arguments":{"quote_id":"READY_QUOTE_UUID","max_credits":40,"idempotency_key":"SAVED_UNIQUE_KEY"}} {"tool":"dreamlayer_execution","arguments":{"execution_id":"EXECUTION_UUID"}} {"tool":"dreamlayer_events","arguments":{"execution_id":"EXECUTION_UUID"}} {"tool":"dreamlayer_download","arguments":{"execution_id":"EXECUTION_UUID","path":"/absolute/new/result.mp4"}}
The execute result includes video_job, not an inline/base64 video. Status and events are read-only and never start work. Progress is actual execution stages, not an invented percentage. A bounded wait or lost response does not cancel a job; recover its identity with the same quote/key. Already consumed quotes remain recoverable after expiry. Retry downloads without generating again.
Default: 10s when absent from both prompt and options, native 720p, no audio unless requested; text aspect 16:9. Explicit durations and issued quotes are unchanged. One image uses native/source-driven aspect. Explicit incompatible settings and extra images are rejected before charging.
Policy video-v3-scoped-intent-10s-20261010 applies only to new quotes. Explicit compatible model first; automatic 4s or 21–30s selects Seedance. Complex action, demanding audio, continuity, white/unknown product backgrounds and uncertain classification prefer Seedance. Clearly simple non-white product, one-speaker talking-head, retro or controlled cinematic-lighting scenes prefer FLUX. Complexity beats style; these are preferences, not quality guarantees. FLUX accepts 5–20s; Seedance 4–30s. Source pixels are not analyzed. Spoken dialogue enables unspecified audio; captions/labels do not. Speech instructions are not discarded by a preceding "no music" clause. Non-white is not also white; a speaker alone does not establish simple action. Shot timestamps are not duration/aspect settings. Overlong timelines fail before spending rather than being compressed; dialogue is never truncated. Live-test defaults remain 5s. Existing quotes retain their model, prompt, settings and price.
No automatic cross-provider retry, fidelity scoring, UI change, extension, upscaling, keyframes or multiple-reference support is included. Downloads use owned 30-day storage, bounded streaming, SHA-256 verification and no overwrite. pricing_pending/disabled access must be reported honestly, not bypassed.
Use it for raster logo concepts, product imagery, marketing visuals, print artwork concepts and game assets. Inspect output quality and task-specific requirements. See the installable agent workflows for task guidance and Godot/Unity import examples.
The full workflow below uses the published sprite-capable beta. Stable latest remains 0.3.0; use the explicit version shown here.
Add it to your client. Claude Code:
claude mcp add dreamlayer --env DREAMLAYER_API_KEY=dlr_live_your_key -- npx -y @dreamlayer/mcp@0.4.0-beta.5
Codex:
codex mcp add dreamlayer --env DREAMLAYER_API_KEY=dlr_live_your_key -- npx -y @dreamlayer/mcp@0.4.0-beta.5
Cursor, or any other stdio MCP client:
{
"mcpServers": { "dreamlayer": { "command": "npx", "args": ["-y", "@dreamlayer/mcp@0.4.0-beta.5"], "env": { "DREAMLAYER_API_KEY": "dlr_live_your_key" } } } }
The key must be in the server's own environment. MCP clients spawn this as a subprocess, so a key exported in your shell does not reach it. That is the most common setup failure, and the server exits with an explanation rather than starting up broken.
Get a key at platform.dreamlayer.io. A new account starts at zero credits. Ordinary image operations cost one credit each; sprite bundles use the frame-count quote described below.
| Tool | What it does |
|---|---|
dreamlayer_capabilities | Read the contract and the operations this key may run. Spends nothing. |
dreamlayer_balance | Read this API key's promotional, purchased, and total available credits. Spends nothing. |
dreamlayer_upload_image | Upload PNG, JPEG, WebP, or camera RAW (up to 200 MB) and get an input_asset_id. |
dreamlayer_generate | Generate or edit. Returns the event stream. |
dreamlayer_execution | Read canonical state for one execution. |
dreamlayer_events | Resume a stream after a drop, from a last event id. |
dreamlayer_download | Save a completed execution to a new local path without generating again. |
Omit operation and DreamLayer reads the prompt, which may come back asking a clarifying question. Name it and that inference is skipped entirely.
operation | Needs an image | Result |
|---|---|---|
text_to_image | No | A new image from the prompt |
image_to_image | Yes | The reference, edited as described |
background_remove | Yes | The subject on transparency |
upscale | Yes | Twice the width and height |
upscale doubles each side and finished images are capped at 4096 per side, so the longest side of your input must be 2048 or less. A larger one is refused before it costs a credit.
A question is not a failure. An ambiguous prompt returns a question event ending in needs_input. Answer it by calling dreamlayer_generate again with respond and the conversation_id.
Retries are safe if you reuse the key. An idempotency_key is generated for you. Pass the same one back to retry after an uncertain response and the original result replays rather than paying twice.
Long runs are truncated, not lost. A stream over 256 events returns what it has, marks truncated, and gives you the execution_id and last event id to resume from.
Errors are stable and provider-neutral. Error tool results include code, reason, message, retryable, and request_id, matching REST and the CLI. A model should branch on reason and retryable, never message text. The response excludes prompts, local filenames, asset URLs, provider details, credentials, and raw upstream responses.
Node.js 22.12 or later.
MIT. See LICENSE and NOTICE.
Sprite requests accept exactly one of options.animation_prompt (1–4000 characters) or an options.action preset (walk, run, idle). Custom prompts can describe characters, creatures, objects, effects or 360° turntables. animation_mode is loop or once; presets default to loop, custom prompts to once. For a turntable, request a stationary camera and rotating subject. Broad requests do not guarantee correct motion, unseen details or successful effect transparency.
Request integer frame_count 7–100 (default 12) and frame_size 32, 64, 128, 256, 512, 720 or 1080 (default 512). These are square export canvases; a larger export does not guarantee additional detail. Aspect ratio and shared alignment are preserved with transparent padding. A bundle contains transparent PNG frames, sheet, atlas, preview and import instructions, including each frame's playback duration. Send background: "keep" in options when transparency is not needed: the frames ship with the generated background in place, plain rather than cut out, and cost the flat plain rate. A frame that cannot be cut out is retried at nearby moments of the same clip, and a single stubborn frame ships with its background rather than failing the sheet; atlas.json lists any such frame in kept_background_frames. Choose a repeating loop or a one-time action with a beginning and ending. If the requested number of distinct frames cannot be delivered, the job fails and held credits are returned. Translucent effects can lose detail or fail; small exports are not automatically pixel art.
Pricing is unchanged across sizes: frames 1–14 cost $0.14 each; additional frames $0.07 each. With background: "keep" every frame is a flat $0.07 with no tier, roughly half a transparent sheet (12 frames: 5.0 credits instead of 9.9). One credit is $0.17. Round the complete order upward once to a tenth of a credit. Check sprite_pricing in capabilities and approve the quote with max_credits. Credits are held during processing, settled after complete delivery and restored on failure/timeout. There is no customer cancellation. Keep the execution ID to resume status. Custom requests need the matching broad-animation server release; older servers reject them. New live generation quality, 100-frame duration and actual cost remain unverified.
Call dreamlayer_upload_image, then dreamlayer_generate with operation: "sprite_sheet", the uploaded input_asset_id, options: {action: "walk", frame_count: 12}, and max_credits set to your approved limit.
Each tool call waits for a bounded interval. If the result remains active, pass its execution_id and last_event_id to dreamlayer_events. When completed, use dreamlayer_download with execution_id and an absolute path ending in .zip. Existing files are never overwritten.
For affordability, compare the complete rounded quote in credits with available. One tenth of a credit is $0.017. Promotional and purchased amounts are displayed rounded down separately, so their displayed sum can be 0.1 credit below available; stored fractions are preserved. Compare against the combined total, not that sum. The order charge rounds only once, never per frame or per tier.
Read tools/list for descriptions, input schemas, and operation availability. Read-only calls are marked with readOnlyHint; upload, generation, and local download are not. These annotations describe effects, not permission grants. Generation starts paid work.
Every tool returns structuredContent plus the same JSON serialized in a text block for older clients. Failures set isError: true. Generation results and errors include the idempotency key, including when the server generated it for you. Choose and save your own key before calling when you need recovery even after the MCP process itself is lost.
After interruption, call dreamlayer_execution with the saved execution ID, then dreamlayer_events with the last processed event ID. Retrieve completed work with dreamlayer_download. Never start a replacement generation merely because the stream closed. Keep the same uploaded asset ID and identical arguments when replaying a key.
MCP setup · [API ov