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)
AI interior, exterior and landscape design, photoreal rendering, image editing, video and 3D.
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.
LUW_API_KEY, LUW_OUTPUT_DIR, AuthorizationValues 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 …”.
This address needs a key in a request header, which the add-connector menu cannot set. Use Claude Code, Cursor or VS Code instead.
Open Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json
{
"mcpServers": {
"luw": {
"command": "npx",
"args": [
"-y",
"@luw-ai/mcp"
],
"env": {
"LUW_API_KEY": "your-value",
"LUW_OUTPUT_DIR": "your-value"
}
}
}
}Run this in your terminal
claude mcp add --transport http luw https://mcp.luw.ai/mcp --header 'Authorization: your-value'claude mcp add luw --env LUW_API_KEY=your-value --env LUW_OUTPUT_DIR=your-value -- npx -y @luw-ai/mcpFill in the empty values before running it.
Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"luw": {
"url": "https://mcp.luw.ai/mcp",
"headers": {
"Authorization": "your-value"
}
}
}
}Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"luw": {
"command": "npx",
"args": [
"-y",
"@luw-ai/mcp"
],
"env": {
"LUW_API_KEY": "your-value",
"LUW_OUTPUT_DIR": "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": {
"luw": {
"type": "http",
"url": "https://mcp.luw.ai/mcp",
"headers": {
"Authorization": "your-value"
}
}
}
}Paste into .vscode/mcp.json in your project
{
"servers": {
"luw": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@luw-ai/mcp"
],
"env": {
"LUW_API_KEY": "your-value",
"LUW_OUTPUT_DIR": "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 address needs a key in a request header, which the add-connector menu cannot set. Use Claude Code, Cursor or VS Code instead.
Your choice stays on this device in a cookie; no account needed.
LUW_OUTPUT_DIR envAuthorization secret HTTP headerThese settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
The server asks you to sign in before it lists its tools.
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 against the domain luw.ai (the registry checks domain ownership)
We have not read this repo from GitHub yet
We have not read this repo from GitHub yet
Responded in 528 ms (HTTP 401)
Declares OAuth sign-in, so your AI app can take you to log in
Not checked yet; we read the tool list when we check the endpoint
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: LUW_API_KEY, Authorization
Either way works: install it on your computer or connect to the cloud version.
The GitHub repo last changed –, and the latest version (0.3.8) reached the registry today.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. It connects by URL, so apps that accept remote MCP servers work too, such as ChatGPT in developer mode.
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.
Official Luw.ai MCP server
AI interior, exterior and landscape design, photoreal rendering, image editing, video and 3D,
inside ChatGPT, Claude, Cursor, VS Code, Windsurf, Codex and any other MCP client.
You: Redesign ~/Desktop/living-room.jpg in Japandi style, give me 2 options.
Claude: ⟶ luw_interior_design ✓ 2 designs in 21s [shows both images] You: Love the first one. Make the sofa green velvet, then turn it into a fly-through video. Claude: ⟶ luw_edit_image ⟶ luw_generate_video ✓
Add `https://mcp.luw.ai/mcp` to your client and sign in to Luw.ai. Nothing to install, no key to copy: signing in creates one for you. New accounts get free credits. To disconnect, delete that key on the API page.
Claude (claude.ai, Claude Desktop, mobile)
*Settings → Connectors → Add custom connector*, paste https://mcp.luw.ai/mcp, then Connect and sign in to Luw.ai.
Claude Code
claude mcp add --transport http luw https://mcp.luw.ai/mcp --scope user
Then type /mcp, pick luw and sign in.
ChatGPT
Open Luw.ai in ChatGPT, add it and sign in to Luw.ai.
The Luw Studio tools aren't in ChatGPT's directory yet; add them yourself: *Settings → Apps & Connectors → Advanced settings*, turn on Developer mode, then Create: URL https://mcp.luw.ai/studio, authentication OAuth, and sign in.
Cursor
Click Add to Cursor above, or add to ~/.cursor/mcp.json:
{
"mcpServers": { "luw": { "url": "https://mcp.luw.ai/mcp" } } }
Cursor shows Needs login next to luw; click it to sign in.
VS Code (Copilot)
Click Install in VS Code above, or add to .vscode/mcp.json:
{
"servers": { "luw": { "type": "http", "url": "https://mcp.luw.ai/mcp" } } }
VS Code asks you to sign in the first time a tool runs.
Any other client with remote MCP support
| URL | https://mcp.luw.ai/mcp |
| Transport | Streamable HTTP |
| Auth | Sign in (MCP OAuth), or header Authorization: Bearer YOUR_LUW_API_KEY |
For a client that can't sign in, create a key at app.luw.ai/dashboard/api and send it as a header:
{
"mcpServers": { "luw": { "url": "https://mcp.luw.ai/mcp", "headers": { "Authorization": "Bearer YOUR_LUW_API_KEY" } } } }
If it can neither sign in nor send headers, use https://mcp.luw.ai/mcp?api_key=YOUR_LUW_API_KEY. Anyone who has that URL can spend your credits, so keep it private.
The hosted server is stateless and stores nothing; your key goes straight to the Luw.ai API on each request. It can't read files from your computer, so give it image URLs, or use the local setup below.
The local server runs on your machine with npx, so it can read paths like ~/Desktop/room.jpg. It needs Node.js 18+ and an API key from app.luw.ai/dashboard/api.
Claude Code
claude mcp add luw --scope user --env LUW_API_KEY=YOUR_LUW_API_KEY -- npx -y @luw-ai/mcp
Or install it as a plugin. Claude Code asks for your key and keeps it in secure storage:
claude plugin marketplace add Luvi-io/luw-mcp
claude plugin install luw@luw-ai
</details>
Claude Desktop
One click: download luw.mcpb, double-click it, paste your API key. No Node.js needed.
Or add this to claude_desktop_config.json (*Settings → Developer → Edit Config*):
{
"mcpServers": { "luw": { "command": "npx", "args": ["-y", "@luw-ai/mcp"], "env": { "LUW_API_KEY": "YOUR_LUW_API_KEY" } } } }
</details>
Cursor
Add to ~/.cursor/mcp.json:
{
"mcpServers": { "luw": { "command": "npx", "args": ["-y", "@luw-ai/mcp"], "env": { "LUW_API_KEY": "YOUR_LUW_API_KEY" } } } }
</details>
VS Code (Copilot)
Add to .vscode/mcp.json. VS Code asks for your key and keeps it in its secret storage:
{
"inputs": [{ "type": "promptString", "id": "luw_api_key", "description": "Luw.ai API key", "password": true }], "servers": { "luw": { "command": "npx", "args": ["-y", "@luw-ai/mcp"], "env": { "LUW_API_KEY": "${input:luw_api_key}" } } } }
</details>
Windsurf (Devin Desktop)
Add to ~/.config/devin/mcp_config.json (Windows: %APPDATA%\devin\mcp_config.json). Older Windsurf versions use ~/.codeium/windsurf/mcp_config.json.
{
"mcpServers": { "luw": { "command": "npx", "args": ["-y", "@luw-ai/mcp"], "env": { "LUW_API_KEY": "YOUR_LUW_API_KEY" } } } }
</details>
OpenAI Codex CLI
codex mcp add luw --env LUW_API_KEY=YOUR_LUW_API_KEY -- npx -y @luw-ai/mcp
Or in ~/.codex/config.toml:
[mcp_servers.luw]
command = "npx" args = ["-y", "@luw-ai/mcp"] env = { LUW_API_KEY = "YOUR_LUW_API_KEY" }
</details>
Gemini CLI
gemini extensions install https://github.com/Luvi-io/luw-mcp
Gemini CLI asks for your key and keeps it in the system keychain. Or add to ~/.gemini/settings.json:
{
"mcpServers": { "luw": { "command": "npx", "args": ["-y", "@luw-ai/mcp"], "env": { "LUW_API_KEY": "YOUR_LUW_API_KEY" } } } }
</details>
Kiro
Click Add to Kiro above, confirm, then replace YOUR_LUW_API_KEY in Kiro's MCP config.
Windows: if npx isn't found, use "command": "cmd", "args": ["/c", "npx", "-y", "@luw-ai/mcp"].
~/Downloads/bedroom.jpg) as Mid-Century Modern, 3 variations."*plan-sketch.png as a photoreal modern villa at golden hour."*Built-in prompts show up as slash commands or prompt templates in your client: redesign_room, stage_empty_room, sketch_to_render, product_shot.
| Tool | What it does | Credits |
|---|---|---|
luw_interior_design | Redesign a room in any style; empty_room for virtual staging | 1 |
luw_exterior_design | Redesign a facade or building exterior | 1 |
luw_sketch_to_render | Sketch or drawing to photoreal render | 1 |
luw_render | 3D, CAD or clay view to photoreal render | 1 |
luw_edit_image | Edit any image with a sentence (Magic Prompt); 2K/4K | 1 |
luw_magic_wand | Masked edit: replace, remove, or apply a material | 1 |
luw_landscape_design | Gardens and outdoor areas, matched to climate and sun | 1 |
luw_upscale_image | Enhance and enlarge 2/4/8× | 1 |
luw_expand_image | Outpaint a cropped photo to a wider view | 1 |
luw_remove_furniture | Empty a furnished room | 1 |
luw_vectorize_image | Photo or drawing to SVG | 1 |
luw_background | Remove a background, or replace it with a generated scene | 1 |
luw_segment | Object masks (all objects, or by prompt) as image URLs | 1 |
luw_generate_image | Text to image (Fluw), or format: "svg" for vectors | 2 |
luw_generate_pattern | Seamless, tileable textures and patterns | 1 |
luw_generate_video | Image to cinematic video with 12 camera motions, optionally ending on an end_image | 10 (20 with Symphony) |
luw_image_to_3d | Photos to a textured 3D model (GLB) | 3 (8 with Symphony) |
luw_archigpt | Ask ArchiGPT, an AI architect, a standalone question (accepts images) | 1 per ~3k words |
luw_get_result | Collect a long-running job (free) | 0 |
luw_list_options | Valid styles, room and building types, camera motions, materials (free) | 0 |
luw_upload_file | Upload a file to Luw.ai storage and get a URL (free) | 0 |
luw_run_model | Call any Luw.ai model with raw API parameters (local server only) | varies |
luw_personas | Personas: reusable style identity, training images and slots (local server only) | 0 |
luw_projects | Projects (boards), folders and media (local server only; hosted: luw://projects resources) | 0 |
luw_team | Enterprise: credits, usage, members, invitations (opt-in) | 0 |
Every generation uses your Luw.ai credits. Variations are billed one generation each.
Luw Studio designs buildings in 3D. With the studio tools, your assistant edits your Studio projects directly: rooms, walls, doors and windows, stairs, roofs, furniture and finishes. Each edit is saved to the project as it is made, and a Studio tab that has the project open shows it within seconds.
Only the beginning is shown; read the rest in the repo