streamable-httpMITupdated 2mo ago
An openâsource Model Context Protocol (MCP) server for AI virtual staging and realâestate photography editing. It turns the AI HomeDesign photo API into naturalâlanguage tools, so Claude â or any MCP client â can do virtual home staging, AI interior design, photo enhancement, decluttering, and dayâtoâdusk conversions just by being asked.
What can you do with AI HomeDesign MCP?
AI HomeDesign MCP Server â AI Virtual Staging, Home Staging & Interior Design for Claude
An openâsource Model Context Protocol (MCP) server for AI virtual staging and realâestate photography editing. It turns the AI HomeDesign photo API into naturalâlanguage tools, so Claude â or any MCP client â can do virtual home staging, AI interior design, photo enhancement, decluttering, and dayâtoâdusk conversions just by being asked.
What is this?
AI HomeDesign MCP Server exposes the AI HomeDesign V3 API as a set of Model Context Protocol tools over streamable HTTP. Any MCPâcompatible AI client â Claude Desktop, Claude in the browser, Cursor, and more â can then run professional realâestate photo editing in plain English:
- đď¸ Virtual staging â furnish an empty room with photorealistic AI furniture in a chosen design style. Digital home staging in seconds, with no physical furniture.
- đ¨ Virtual restaging & AI interior design â replace existing furniture or fully redesign a furnished room.
- ⨠Image enhancement â fix lighting, sharpness, and color balance for listingâready photos.
- đ§š Item removal / decluttering â automatically remove furniture and clutter to reveal a clean space.
- đ Day to dusk â convert a daytime exterior into a warm twilight / dusk scene.
- đ§ą Wall, floor & ceiling changes â restyle surfaces with a tasteful AI finish.
Because it speaks MCP, there is no SDK to learn â you describe what you want and the model calls the right tool with the right parameters.
Why virtual staging and home staging over MCP?
Traditional home staging means renting furniture and scheduling a shoot. Virtual staging for realtors replaces that with an edited photo â but it still costs hours in editing tools or days of turnaround from a staging service.
This server collapses that into a conversation: drop in a listing photo, pick a style, and get back a downloadable, marketâready image. It's multiâtenant (every caller uses their own AI HomeDesign key), stateless, and selfâhostable, so it fits both a single agent and a production PropTech product.
Available tools
| Tool | What it does | Input |
|---|---|---|
list_capabilities |
List every tool, grouped by category | â |
list_styles |
List allowed design styles, room types & widget options | â |
describe_tool |
Show a tool's inputs + a readyâtoâuse example payload | tool slug |
virtual_staging |
Furnish an empty room in a design style | image + style + room |
virtual_restaging |
Swap furniture in an alreadyâfurnished room | image + style + room |
interior_design |
Fully redesign a furnished room | image + style + room |
enhance_image |
Improve lighting, sharpness & color | image |
remove_items |
Declutter / remove furniture | image |
day_to_dusk |
Turn a daytime exterior into dusk | image |
change_wall / change_floor / change_ceiling |
Restyle a surface | image + room |
create_project ¡ create_order ¡ run_process ¡ get_process ¡ wait_for_result |
Lowâlevel primitives for full control | see describe_tool |
Every helper accepts an image URL or a base64 image, and returns downloadable resultâimage URLs.
Supported design styles: prime, modern, farmhouse, scandinavian,
hampton, industrial, traditional, contemporary.
Supported room types: bedroom, livingâroom, kitchen, bathroom, diningâroom,
homeâoffice, outdoor, nursery.
Quick start
Option A â Connect to the hosted server (no setup)
-
Get your API key. Sign in at aihomedesign.com, open API / Developer settings, and copy your
x-api-key. -
Generate your connector link. Paste that key into the generator at aihomedesign.com/mcp. The key is validated serverâside once, then stored encrypted; you get back a personal endpoint:
https://mcp.aihomedesign.com/aihd_<your-token>/mcpYour raw key never appears in the URL.
-
Add it to your AI assistant. In Claude: Settings â Connectors â Add custom connector, name it AI HomeDesign, and paste the URL. Every tool shows up automatically. Works with any MCPâcompatible client.
â ď¸ The connector link does not contain your raw key, but it grants access to your account â treat it like a password. Rotating your key in the AI HomeDesign dashboard revokes every link previously issued for it.
Server health check, no key needed: mcp.aihomedesign.com/health
Option B â Selfâhost with Docker
git clone https://github.com/AIHomeDesign/aihomedesign-mcp.git
cd aihomedesign-mcp
cp .env.example .env # add your AIHD_API_KEY (and DB_DSN/TOKEN_SECRET for multi-tenant)
docker build -t aihomedesign-mcp .
docker run -p 8080:8080 --env-file .env aihomedesign-mcp
The MCP endpoint is served at http://localhost:8080/mcp (streamable HTTP), with a
health check at GET /health.
Option C â Run locally with Python
pip install -r requirements.txt
export AIHD_API_KEY=your_key_here
python app/server.py
Configuration
All configuration is via environment variables â see .env.example.
| Variable | Purpose | Default |
|---|---|---|
AIHD_API_KEY |
Default/fallback AI HomeDesign xâapiâkey | â |
AIHD_API_BASE |
API base URL | https://api.aihomedesign.com/v3 |
PORT |
Listen port | 8080 |
DB_DSN |
Postgres DSN for token map + usage log (optional) | â |
TOKEN_SECRET |
Fernet key to encrypt user keys at rest (optional) | â |
MCP_CONNECTOR_BASE |
Base used to build connector links | â |
UPLOAD_DIR / PUBLIC_BASE |
Enable the builtâin imageâupload endpoint | â |
Security & multiâtenant design
- Bringâyourâownâkey: each request carries the caller's own AI HomeDesign key; jobs run under that key.
- Keys never sit in the URL: the landing page validates a key, then mints an opaque
aihd_âŚconnector token; the raw key is stored encrypted at rest (Fernet) and swapped back in per request. - Usage logging records the tool, status, and timing per call â never the raw key (only a short, nonâreversible fingerprint).
- Graceful degradation: if the database is unreachable, the server keeps serving.
How it works
MCP client (Claude, Cursor, âŚ)
â streamable HTTP /mcp
âź
AI HomeDesign MCP server âââş AI HomeDesign V3 API âââş result image URLs
(this repo) (api.aihomedesign.com)
The server is built on FastMCP and Starlette/uvicorn, with a pureâASGI auth middleware that binds the perârequest key.
Tech stack
Python 3.12 ¡ MCP (FastMCP) ¡ Starlette ¡ uvicorn ¡ httpx ¡ PostgreSQL (optional) ¡ Docker.
FAQ
What is an MCP server?
An MCP server exposes tools, data, and prompts to an AI model through the Model Context Protocol â an open standard introduced by Anthropic. The model discovers the available tools at runtime and calls them itself, so you never write glue code against a bespoke SDK. This repo is an MCP server whose tools happen to edit realâestate photos.
How do you virtually stage a photo with this?
Connect the server to Claude, then send an emptyâroom photo and ask for a style â
for example "stage this living room in a scandinavian style." Claude calls the
virtual_staging tool with the right parameters and returns a downloadable,
photorealistic image. No manual editing, no design software.
Is this AI virtual staging free?
The MCP server itself is open source and MITâlicensed, so you can selfâhost it at no cost. The image processing runs on the AI HomeDesign API and uses your own API key.
Does it work with clients other than Claude?
Yes. It speaks standard MCP over streamable HTTP, so any MCPâcompatible client â Claude Desktop, Claude in the browser, Cursor, and others â can use it.
What is the difference between virtual staging and virtual restaging?
Virtual staging furnishes an empty room. Virtual restaging swaps the
furniture in an alreadyâfurnished room. Use interior_design when you want to
redesign a furnished room completely rather than just replace the furniture.
Learn more
- đ Connect in one click: aihomedesign.com/mcp
- đ Website: aihomedesign.com
- đ Model Context Protocol: modelcontextprotocol.io
Contributing
Issues and pull requests are welcome. Please open an issue to discuss substantial changes first.
License
Released under the MIT License.
Keywords: MCP server ¡ Model Context Protocol ¡ Claude MCP ¡ Anthropic MCP ¡ MCP tools ¡ virtual staging ¡ AI virtual staging ¡ virtual staging software ¡ home staging ¡ virtual staging for realtors ¡ AI home design ¡ AI interior design ¡ real estate photography ¡ real estate photo editing ¡ virtual restaging ¡ day to dusk ¡ image enhancement ¡ item removal ¡ real estate AI ¡ PropTech.
Install
Add AI HomeDesign MCP to your client. Pick the one you use.
claude mcp add --transport http ai-homedesign-mcp https://mcp.aihomedesign.com/{connector_token}/mcpcodex mcp add ai-homedesign-mcp --url https://mcp.aihomedesign.com/{connector_token}/mcp{
"mcpServers": {
"ai-homedesign-mcp": {
"url": "https://mcp.aihomedesign.com/{connector_token}/mcp"
}
}
}Add to `~/.cursor/mcp.json`, or `.cursor/mcp.json` for a single project.
{
"servers": {
"ai-homedesign-mcp": {
"type": "http",
"url": "https://mcp.aihomedesign.com/{connector_token}/mcp"
}
}
}Add to `.vscode/mcp.json` in your workspace.
{
"mcpServers": {
"ai-homedesign-mcp": {
"url": "https://mcp.aihomedesign.com/{connector_token}/mcp"
}
}
}Add to `claude_desktop_config.json`, then restart Claude Desktop.
{
"mcpServers": {
"ai-homedesign-mcp": {
"serverUrl": "https://mcp.aihomedesign.com/{connector_token}/mcp"
}
}
}Add to `~/.codeium/windsurf/mcp_config.json`.
9 tools
AI HomeDesign MCP exposes 9 tools to a connected agent.
- list_capabilities
- List every tool, grouped by category
- list_styles
- List allowed design styles, room types & widget options
- describe_tool
- Show a tool's inputs + a readyâtoâuse example payload
- virtual_staging
- Furnish an **empty** room in a design style
- virtual_restaging
- Swap furniture in an **alreadyâfurnished** room
- interior_design
- Fully redesign a furnished room
- enhance_image
- Improve lighting, sharpness & color
- remove_items
- Declutter / remove furniture
- day_to_dusk
- Turn a daytime exterior into dusk
Score
72 / 100
Good
- Documentation25/25
- Maintenance16/25
- Trust13/20
- Capability6/15
- Install experience12/15
- Documents what it does and how to connect
- Has a resolvable package or endpoint
- Exposes at least one tool, prompt or resource
- README has substantive content
- Includes a code example
- Documents its configuration
- Mentions credentials or security posture
- Last commit 53 days ago
- Has a release history
- Repository is not archived
- Licensed MIT
- Namespace verified in the official MCP registry
- Claimed by its owner
- Published under an organisation
- 9 tool(s) documented
- Provides prompt templates
- Provides resources
- 6 documented install method(s)
- Published to a package registry
- Offers a hosted endpoint â no local install
Version history
| Versions | Published |
|---|---|
| 1.0.0Latest | Jul 9, 2026 |