All articles

AI agents6 min readFloorGen team

Can ChatGPT or Claude Draw a Floor Plan? (To Scale, via MCP)

ChatGPT and Claude can draw a floor plan to scale when connected to FloorGen over MCP: real walls you can edit, IRC checks and 2D/3D renders.

Ask a chatbot for a three-bedroom house plan and you get one of two things: a description in words, or a picture. The picture often looks convincing until you measure it. Rooms do not add up to the stated size, doors open into walls, and there is nothing to edit; asking for a change produces a different picture. The model is not the problem. It has no drawing to work on. This post shows what changes when you give it one, using FloorGen's MCP server, and where the limits are.

What a chatbot gets wrong on its own

  • No scale. An image model draws something that looks like a plan; its proportions are not measurements, so a 12 ft bedroom on the label may be 9 ft on the page.
  • No geometry. Walls do not have thickness, rooms do not close, and nothing knows that the kitchen is 11 × 14 ft.
  • No memory of the drawing. Every revision is a new image or a new block of text, not an edit to the same plan.
  • No checks. Nothing tells it that a bedroom is under 70 ft², or a stair riser is over 7¾ in.
  • Nothing to hand on. You cannot open a picture in CAD, print it at 1/4" = 1'-0" or give it to a contractor.

What MCP changes

The Model Context Protocol (MCP) is an open standard that lets an AI app call tools on another service. FloorGen runs an MCP server, so when Claude, ChatGPT or Cursor is connected to it, the model does not draw pixels. It calls tools such as create_project, add_walls, add_opening and place_item to build a real plan, in centimetres underneath and shown in feet and inches. The plan lives in your FloorGen account. You can open it in the editor at any time, see the same walls the model drew, move them yourself, and ask the model to carry on from there.

Two consequences matter. The model's work is to scale by construction, because it is placing walls with lengths, not drawing an image. And it can check its own work: the same code checks you see in the editor are tools it can call.

Setting it up

You need a free FloorGen account to connect an AI app; the studio itself works without one. The MCP endpoint is https://floorgen.app/mcp. Clients that take a URL (claude.ai, ChatGPT, Claude Desktop's connector screen) sign you in with OAuth; clients that take a header (Claude Code, Cursor) use an API key from Agents & MCP. The exact steps for each client are in connecting Claude, ChatGPT and Cursor to FloorGen.

By default the server lists only its core tools, which keeps the list short enough for a model to choose well. For the prompts below, ask for the toolsets they use:

https://floorgen.app/mcp?toolsets=core,more,stairs,macros

Example prompts and what they do

These are the kinds of requests that work well, with the tools the model will reach for.

Start from a real plan

Create a project called "Maple St" from the US ranch template, then tell me the rooms and their sizes.

The model calls create_project with template: "us-ranch-3bed", then describe_project or get_schedule to read back the rooms. You get a 3-bed, 2-bath ranch with a 2-car garage on an 80 × 110 ft lot, in feet and inches, with the IRC code profile on.

Dimensioned floor plan of the three-bedroom ranch template with a two-car garage, room names and areas in square feet.
The ranch the prompt starts from, as FloorGen exports it.

Make a change you would otherwise drag by hand

Make the primary bedroom 2 ft wider by moving the wall it shares with the living room, and keep the doors where they are.

The model finds the wall with find or list_entities and slides it with move_wall. Doors and windows in that wall ride along, so does furniture standing with its back to it, and the neighbouring walls stay joined. The room areas update, and a move that would break a room is refused.

Let it propose options

Suggest two kitchen layouts for this room with an island, and apply the one with the shorter work triangle.

generate_kitchen proposes galley, L, U or island layouts that keep each side of the work triangle between about 4 and 9 ft and the walkways at least 100 cm (about 39 in), clear of doors and low windows. It shows options first and only places one when asked to apply it.

Check the work

Run the code checks and fix anything under the IRC minimums. Then check the stairs.

validate_plan returns the same Issues list as the editor: rooms under 70 ft² or 7 ft wide, ceilings under the minimum height, bedrooms (and basements) with no window or door big enough to escape through, gaps in walls, rooms with no door, unreachable rooms, furniture blocking doors. check_stairs gives a per-stair breakdown of risers, treads, width, headroom and handrail against the project's code profile. Both cite the IRC section a warning comes from.

Show me

Render the plan, and a 3D view from the south-east corner.

render_2d and render_3d return images the model can look at, and show you, in the chat. The 3D render is a flat-shaded dollhouse cut; the editor's 3D view, below, is the full-quality one.

3D cutaway of the furnished three-bedroom ranch from above.
The same ranch in FloorGen's 3D view, which you can open next to the chat.

Keeping an agent on a short leash

An agent that can draw walls can also delete them. FloorGen's server is built on that assumption: keys and sign-ins have an access level (read only, read & edit, or full), destructive tools need a confirmation token, every change is logged and can be undone, and a checkpoint is saved before an agent's first edit. The details are in the guard rails in FloorGen's MCP server. A sensible default is a read & edit key scoped to one project.

Limits

  • The model still makes mistakes. It may misread which wall you mean or place a door where you did not want one. Because the result is a real drawing, you can see the mistake and undo it, but you do need to look.
  • The checks cover what they cover. Under the IRC profile FloorGen checks room sizes, ceiling heights (2021 IRC R305: 7 ft in habitable rooms and halls, 6 ft 8 in in baths and laundries, 6 ft 4 in in the rest of a basement), emergency escape openings in bedrooms and basements (2021 IRC R310: net clear area, height, width and sill height), stairs and balcony guards, plus clearances that do not depend on the code. It does not check window wells, smoke alarms, setbacks or structure, and it does not model the ceiling allowances for beams and ducts.
  • It is a design tool, not a licensed professional. A plan an agent drew is a starting point for permit drawings, not a substitute for the review your building department or engineer does.
  • Large rewrites are slower than small edits. Asking for a whole new house in one prompt works, but you will get better results starting from a template and changing it a step at a time.

How this compares with AI floor plan generators

There are dedicated AI floor plan generators, and some produce good-looking results from a short brief. The difference here is not the quality of the first draft. It is that the plan is an ordinary FloorGen project: editable by hand and by the model in turn, checked against a building code, measurable, and exportable as a scaled PDF, a DXF for CAD or a 3D model. You also choose the model. Any AI app that speaks MCP can drive it, including the one you already pay for.

The ChatGPT floor plan and Claude floor plan pages give example prompts for each app.

More from the blog

All articles