Docs
Connect your AI app to sketch.house
sketch.house is an MCP server. MCP, the Model Context Protocol, is the open standard AI apps use to call tools, so the AI app you already use can draw your home, furnish it and check it, in your own projects. It runs on your AI plan, and connecting is free with any sketch.house account.
The address
https://sketch.house/mcp
Once you are signed in, the connect page shows the address with a copy button, the steps for each app, and the apps you have connected. In the editor, Connect your AI at the top opens the same steps over your plan.
Connect your app
Each app sends you to a sketch.house page to sign in and allow it. You choose what it may do there, and you can disconnect it at any time from your account.
Claude, on the web or in the desktop app
- In Claude, open Customize, then Connectors, and choose Add custom connector.
- Name it sketch.house, paste the address and choose Add. Leave the advanced settings as they are.
- Choose Connect. A sketch.house page opens: sign in if it asks, then choose Allow.
- In a chat, check that sketch.house is on under +, Connectors, and ask: “What are my sketch.house projects?”
The desktop app has the connectors of your Claude account, so adding it once is enough. Claude’s free plan allows one custom connector.
Claude Code
Add the server in a terminal (with
--scope userit is there in every project):claude mcp add --transport http sketch-house https://sketch.house/mcpIn Claude Code, type
/mcp, choose sketch-house and sign in. Your browser opens a sketch.house page: choose Allow.Ask: “What are my sketch.house projects?”
ChatGPT
- Turn on developer mode in Settings, Security and login. It needs a paid plan (Plus, Pro, Business, Enterprise or Edu) and works on the web.
- Open Plugins, choose +, then Add custom MCP server. Name it sketch.house, paste the address as the server URL and choose OAuth for authentication.
- Accept the warning and choose Create as a plugin. When a sketch.house page opens, sign in if it asks, then choose Allow.
- Install it from your plugins. In a new chat, type @, pick sketch.house and ask: “What are my sketch.house projects?”
Cursor
Add the server to
~/.cursor/mcp.json, or to.cursor/mcp.jsonfor one project:{ "mcpServers": { "sketch-house": { "url": "https://sketch.house/mcp" } } }Turn it on under Customize in Cursor’s sidebar. When Cursor asks you to sign in, your browser opens a sketch.house page: choose Allow.
Ask the agent: “What are my sketch.house projects?”
Any other MCP app
An app that speaks MCP over Streamable HTTP with OAuth 2.1 connects the same way: its first call is
answered with a pointer to the sign-in, it identifies itself with a client metadata document or registers
itself, and you allow it on a sketch.house page. The sign-in has to come back to the app on your
computer (http://localhost or http://127.0.0.1), or to Claude’s, ChatGPT’s or Cursor’s own servers.
What you allow
The sketch.house page lists what the app asks for, and you can see and change it later under Connected apps on your account.
| Permission | What it lets the app do |
|---|---|
| See your projects | List your projects and read their plans, rooms, furniture and open issues. |
| Change your projects | Create projects, draw and furnish them. Each change is one step in the project’s history, and you can undo it. |
| Publish your projects | Create, update and remove public links to your projects. |
| Stay connected | Keep working without asking you again, until you disconnect it or leave it unused for 30 days. |
The tools
These are the tools your AI can call, by the names it sees. It picks them itself; you just say what you want.
Reading
| Tool | What it does |
|---|---|
get_conventions | The guide your AI reads before it draws: units, how walls and rooms work, the clearance rules and what each issue means. |
list_projects | Your projects, the most recently changed first, and how many your plan keeps. |
describe_project | A project in numbers: each room with its type and area, the walls, doors and windows, the furniture and the open issues. |
get_room | One room in detail: its walls, the doors and windows on them, the fittings, and each piece with its spacing. |
list_pieces | The furniture of the plan or of one room, with sizes, spacing and totals. |
list_issues | The plan’s open issues, errors first, each with where it is and the usual fix. |
measure | Measures like a tape: between wall faces, doors and furniture, or across a room. |
render_plan | The plan as a picture, the whole floor or one room, so your AI can see what it drew. |
search_catalogue | Finds furniture by words, category, size, price and color. |
get_product | One product in full: its size, color and price, and its page where the catalog has one. |
Changing
| Tool | What it does |
|---|---|
create_project | A new, empty project in your account (free accounts keep 1 project). |
draw_room | Draws the walls around a room from its outline in meters, sharing walls with the rooms beside it, and names it. |
add_opening | A door, window or passage on a wall, with its width and which way it opens. |
set_opening | Changes a door, window or passage: its width, where it is on the wall, which way a door opens, or what it is (a window that becomes a door to the terrace, say). |
remove_opening | Removes doors, windows or passages. |
set_room | Renames a room, or changes its type, its floor or the color of its walls. |
move_wall | Moves a wall sideways and keeps it square, as in “make the hall 10 cm wider”. |
set_wall | Changes what walls are: thicker or thinner, an outside or inside wall, a railing, or no wall at all between two named parts of one open space. |
delete_wall | Deletes the wall between two rooms, which become one room, with the doors and fittings on it. |
add_fitting | A closet, a kitchen counter, a bathroom fixture (toilet, bidet, sink, shower or bathtub), heating or cooling (a radiator, a towel warmer, a boiler, an air conditioner or its outdoor unit) or a fireplace (open, wood stove or electric) on a wall. |
remove_fitting | Removes closets, kitchen counters, bathroom fixtures, heating, cooling or fireplaces. |
place_piece | Places a piece from the catalog in a room. |
move_piece | Moves a piece, against a wall or into another room. |
turn_piece | Turns a piece, or turns it to stand with its back to a wall. |
remove_piece | Removes pieces of furniture. |
furnish_room | Furnishes a room in one step from a brief such as “double bed 140, two bedside tables, wardrobe”, keeping 60 cm beside beds and in front of wardrobes, and door swings and doorways clear. It keeps to a budget when the catalog lists prices. |
undo_step | Takes back your AI’s last change; again, and it goes one step further back. You undo your own edits in the editor. |
Every change goes through the same checks as an edit in the editor and is saved as one named step in the project’s history, such as “agent: furnish_room Bedroom”. An open editor shows it as it lands. Your AI can also try most changes without saving them first, to see what would happen.
Publishing
Only with the “Publish your projects” permission.
| Tool | What it does |
|---|---|
publish_project | Publishes a read-only link: the 3D walk-through, the plan and the shopping list. Refused while the plan has errors. |
unpublish_project | Takes the link down. Publishing again brings the same link back. |
Example conversations
Draw an apartment from a description
You: Draw my apartment. The front door opens into a hall about 1.2 m wide and 4 m long. On the left there is a living room of about 4.4 by 5 m with two windows on the street, and on the right a 3.6 by 3.2 m bedroom and a small bathroom, about 2 by 1.8.
Your AI reads the guide (get_conventions) and creates the project (create_project). It draws each room
(draw_room), adds the front door, the inner doors and the windows (add_opening), then checks its work:
the areas and open issues (describe_project) and a picture of the plan (render_plan).
AI: I drew your apartment as “My apartment”: the hall, the living room, the bedroom and the bathroom, each with its area measured to the inside of the walls. The bathroom door opens into the hall; tell me if it should open inwards. Open the project to check every wall.
Furnish a room, then change your mind
You: Furnish the bedroom as a guest room: a double bed, two bedside tables and a wardrobe. Keep room to walk around the bed.
It reads the room first (get_room: the walls, the door and which way it swings), then furnishes it in one
step (furnish_room, “double bed 140, two bedside tables, wardrobe”).
AI: Done: a 140 cm bed with its head against a wall, a bedside table on each side and the wardrobe opposite, with 60 cm clear in front of it and on both sides of the bed. The door swings clear of everything.
You: I liked it better empty. Take that back.
It undoes its own step (undo_step, expecting “furnish_room Bedroom”).
AI: Undone: the bedroom is as it was before I furnished it. Anything you changed yourself is as you left it.
Will the sofa fit?
You: Will a three-seat sofa fit along the living room’s long wall without blocking the door?
It reads the room (get_room), measures the clear length along the wall (measure), finds a sofa
(search_catalogue: 3 seats, 205 × 90 cm) and tries it there without saving (place_piece as a dry
run).
AI: Yes. The 205 cm sofa fits on the long wall with the door’s swing clear and room to walk past. Shall I place it?
You: Yes, and give me a link I can send to my partner.
It places the sofa (place_piece) and publishes the project (publish_project), if you allowed it to
publish.
AI: Placed, and here is the link: anyone who opens it can walk around the apartment in 3D and see the plan, but cannot change anything.
Limits
Connecting is free, with no cap on how much you use it. Limits exist to stop an app that runs out of control: 1,200 tool calls a minute, 60 changes a minute, 30 pictures of the plan a minute and 30 publishing actions an hour. Past one, your AI is told how long to wait.
Your data
- Your AI reaches only the projects saved in your account. A project kept only in your browser is out of its reach, and so is everyone else’s.
- What it reads (rooms, sizes, furniture, names) goes to the AI app you connected, under that app’s own terms.
- We never use your plans to train AI. We log each call by its tool, how long it took and whether it worked, never your words or your projects’ names.
- Disconnect an app under Connected apps on your account and it stops at once.
If something goes wrong
- The app asks you to sign in again. An app that has not been used for 30 days, or that you disconnected, asks again. Allow it once more.
- “This request has expired”. A request to connect lasts ten minutes. Start connecting again from the app.
- Claude or ChatGPT cannot reach the server. They connect from their own servers, so they need the
address of the live site,
https://sketch.house/mcp. - Your account is full. Free accounts keep 1 project, and your AI cannot create another while yours is full. Delete one in the app, then ask again.
Anything else: write to support@sketch.house.