Official Luw.ai MCP server: AI interior, exterior, landscape, render, video and 3D design tools for Claude, Cursor, VS Code, Windsurf and any MCP client.
AI interior, exterior and landscape design, photoreal rendering, image editing, video and 3D,
inside 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 ✓
Quick start
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
Settings → Apps & Connectors → Advanced settings, turn on Developer mode, then Create: URL https://mcp.luw.ai/mcp, authentication OAuth, and sign in.
Cursor
Click Add to Cursor above, or add to ~/.cursor/mcp.json:
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.
Local: work with files on your computer
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
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):
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}"}}}}
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.
Every generation uses your Luw.ai credits. Variations are billed one generation each.
Luw Studio: edit your 3D projects
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.
Hosted: add https://mcp.luw.ai/studio instead of /mcp (same sign-in). It has every hosted tool plus the studio tools.
Local: add studio to LUW_TOOLSETS, e.g. LUW_TOOLSETS=generate,archigpt,personas,projects,studio.
"In my Luw Studio project Beach House, add a 3×4 m bedroom east of the living room with a window, and furnish it."
Tool
What it does
luw_studio_list_projects
Your Studio projects, newest first, with each project_id and Studio link
luw_studio_create_project
A new project: an empty site, or a starter house (list_templates)
luw_studio_rename_project
Rename a project
luw_studio_undo
Put back the scene from before the last assistant edit (again: redo)
Scene tools
Pascal's editor tools, each taking a project_id: read (get_level_summary, get_zones, get_walls, find_nodes, measure, verify_scene, …) and build (create_story_shell, create_room, add_wall, add_door, add_window, create_stair, create_roof, furnish_room, place_items, paint, apply_patch, …)
The scene tools are Pascal's open-source MCP tools (MIT), running on the same core as Luw Studio, with its catalog (Luw's own pieces included) and its defaults. They don't use credits. A project last saved by the previous Luw Studio is readable; open it once in Studio to edit it here. luw://studio/guide is the building guide the assistant reads first.
Resources
Read-only context you can attach to a conversation. In Claude Code, type @luw: to pick one; other clients that support resources offer them as attachments.
Resource
What it holds
luw://account
Your credit balance
luw://history/{app}
Your 10 most recently updated projects in one Luw.ai app (Interior, Exterior, Video, …) with their latest results: file links, prompts and source images
luw://projects/{id}
One project: its folders and the file link of every item in it
luw://catalog/{kind}
Design styles, room and building types, video camera motions, materials and persona professions, with previews
luw://guide
Every tool and what it costs
How it works
Local files just work. Any image argument accepts an https:// URL, a local path (~/Desktop/room.jpg), or a data: URI. Local files are uploaded to Luw.ai storage as temporary files (deleted after 12 hours) and cached for the session, so repeated edits don't upload the same file again.
You see the results. Finished images are embedded in the tool result, so Claude and other clients show them inline. Set LUW_OUTPUT_DIR to also save every result to disk.
Long jobs don't time out. A call waits up to 50 seconds and streams progress to clients that show it. If a job like a video takes longer, the tool returns a processing_url and the assistant collects it with luw_get_result, without generating (or paying) twice.
Never billed twice. Every generation request carries an Idempotency-Key, so if a network error forces a retry, Luw.ai returns the original job instead of charging again.
Masks are handled for you.luw_segment returns masks as URLs, so "change the floor" becomes segment ⟶ magic wand with no manual masking.
Fast startup. The package is one bundled file with zero dependencies, so npx downloads a single ~0.9 MB package and starts right away.
It's stateless. Each request brings its own key in Authorization: Bearer …, X-Luw-Api-Key, or ?api_key=. Set LUW_MCP_OAUTH_SECRET to also let clients sign in to Luw.ai instead (OAuth); the sign-in hands the client an ordinary API key. It deploys to Vercel as-is (vercel.json is included), and a Procfile is included for Heroku. See docs/maintainers.md for deployment and release steps.
Development
npm ci
npm test# unit and protocol tests (no network)
npm run build # bundles dist/cli.js
npm run inspector # try every tool in the MCP Inspector
LUW_API_KEY=... npm run smoke # live checks against the real API (free)
LUW_API_KEY=... npm run smoke -- --paid # plus one real generation (1 credit)
npm run mcpb # build/luw.mcpb, the Claude Desktop extension
node scripts/vendor-pascal.mjs ../luwstudio2 # rebuild vendor/: Pascal core + MCP as Luw Studio runs them
Official Luw.ai MCP server: AI interior, exterior, landscape, render, video and 3D design tools for Claude, Cursor, VS Code, Windsurf and any MCP client.
The npm package @luw-ai/mcp receives a total of 47 weekly downloads. As such, @luw-ai/mcp popularity was classified as not popular.
We found that @luw-ai/mcp demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago.It has 1 open source maintainer collaborating on the project.