Design
4lines.ai
An MCP server for creating and editing floor-plan drafts with walls, doors, windows, and render cameras.
ENDPOINT 1
https://mcp.4lines.ai/mcp
MCP server metadata
- Name
- aiplan-mcp
- Version
- 0.83.31
Known tools 44
get_capabilitiesReturns what this 4lines.ai MCP server can do for you right now: contract version, available tools, limits, and how to start.
Inferred read-onlycreate_planCreates a new empty single-storey floor-plan draft and returns plan_id, plan_token, claim_url and expires_at.
Inferred read-onlyvalidate_planChecks the WHOLE plan and returns findings as text — no image, so it is cheap and has its own generous budget.
Inferred read-onlyget_plan_sceneData source for the interactive plan viewer (the UI that view_plan renders): the plan as an SVG drawing plus per-room floor areas and element counts.
Inferred read-onlyupdate_wallMoves a wall — by its endpoints, or by move_m + towards, which slides the whole wall across itself without recomputing anything — and/or changes its thickness.
Inferred read-onlydelete_wallDeletes a wall AND its anchored openings (explicit cascade: the response lists removed_openings).
Inferred read-onlymove_furnitureMoves and/or rotates a furniture piece by id, and decides whether it is ANCHORED to a wall or free-standing.
Inferred read-onlydelete_furnitureRemoves a furniture piece by id, or several with furniture_ids — clearing out a whole room is one call.
Inferred read-onlyupdate_openingChanges a door or window in place — the tool to reach for when a warning tells you a door swing is blocked, because flipping hinge or swing is exactly what it asks for.
Inferred read-onlyhang_doorsHangs the hinged doors of the plan the way an architect would, from the rooms it already has: the leaf swings INTO the room the door serves (from the hallway into the bedroom, from the bedroom into its ensuite or walk-in closet, from outside inward, between two rooms into the more private one) and hangs on the jamb nearest the perpendicular wall on that side, so the open leaf folds against it — unless that leaf would sweep furniture and the other jamb would not.
Inferred read-onlydelete_openingRemoves a door or window by id — or several with opening_ids — leaving its wall intact.
Inferred read-onlymove_cameraRe-aims an EXISTING camera: position, direction, field of view or eye height.
Inferred read-onlydelete_cameraRemoves a camera by id, or several with camera_ids, and frees their slots.
Inferred read-onlyadd_zone_linesDraws ZONE BOUNDARY LINES of an area scheme (dwellings, use, common areas — what Revit calls areas).
Inferred read-onlyset_zoneNames a ZONE of an area scheme: an anchor point inside the region the zone lines enclose, plus name, use (dwelling | commercial | common | other | void) and whether it is exterior (balcony, terrace: counts at exterior_factor 0, 0.5 or 1).
Inferred read-onlyapply_plan_jsonBULK composition valve: replaces the whole plan with a complete document in one atomic call (all-or-nothing validation).
Inferred read-onlysolve_programOPTIONAL alternative to drawing the walls yourself, for RESIDENTIAL DWELLINGS ONLY (for hotels, offices or any non-residential program, design the layout with the granular tools instead): asks the 4lines architecture engine (CP-SAT grounded in international good-practice residential architecture: circulation widths, room proportions, window-to-area rules, Neufert-informed sizing) to draft as many as 6 interior layouts for a room PROGRAM you describe, optimizing adjacencies, circulation and proportions globally.
Inferred read-onlyapply_variantMaterializes one variant from a previous solve_program call into the plan: REPLACES the whole geometry (walls, openings, room labels) with that layout.
Inferred read-onlytry_renderTurns a placed camera into a PHOTOREALISTIC RENDER of what it sees, returned inline — no account, nothing to configure.
Inferred read-onlyquery_planStateless "selection": returns compact addressable listings (ids + geometry) filtered by proximity, kind or room.
Inferred read-onlydesign_livingDesigns a LIVING ROOM (or a living-dining, or the whole LDK) and places it in one call.
Inferred read-onlylist_projectsList only account projects explicitly authorized for this OAuth connection.
Inferred read-onlyrequest_project_accessCreate a short-lived account-bound link to the 4lines project consent screen.
Potential side effectsmove_project_furnitureMove one existing, unlocked, unanchored furniture piece on an explicitly identified floor of an authorized account project.
Inferred read-onlyapply_project_operationsApply existing 4lines modelling tools to the saved account project, as one atomic batch.
Inferred read-onlyresolve_claimed_projectResolve the original draft plan_id to its saved account project after claim.
Inferred read-onlyview_projectOpen the live 2D/3D viewer for an explicitly authorized account project.
Inferred read-onlyrenew_project_viewRenew this widget session using current host OAuth and its original active grant.
Inferred read-onlyCONNECT WITH APPROVAL
Client installation
Review this server and its permissions before adding it. Secret placeholders must be set locally.
Codex
~/.codex/config.toml
[mcp_servers.aiplan-mcp]
url = "https://mcp.4lines.ai/mcp"
enabled = true
Claude Code
.mcp.json
{
"mcpServers": {
"aiplan-mcp": {
"type": "http",
"url": "https://mcp.4lines.ai/mcp"
}
}
}
Claude Desktop
Settings → Connectors → Add custom connector
Name: aiplan-mcp
Remote MCP URL: https://mcp.4lines.ai/mcp
Add this remote URL as a custom connector in Claude Desktop. Availability depends on the user plan and workspace policy.
Cursor
.cursor/mcp.json
{
"mcpServers": {
"aiplan-mcp": {
"url": "https://mcp.4lines.ai/mcp"
}
}
}
Visual Studio Code
.vscode/mcp.json
Add to Visual Studio Code{
"servers": {
"aiplan-mcp": {
"type": "http",
"url": "https://mcp.4lines.ai/mcp"
}
}
}
Generic MCP
Client-specific MCP configuration
{
"name": "aiplan-mcp",
"transport": "streamable-http",
"url": "https://mcp.4lines.ai/mcp"
}
MCP Inspector
Run the official MCP Inspector locally and enter the indexed Streamable HTTP endpoint.
TRUST AND VERIFICATION EVIDENCE
Loading Trust v2 evidence…
Checking the associated registrable domain. The BuiltWith key remains server-side.
Evidence is source-attributed and does not guarantee that a third-party server is safe. Risk labels are conservative metadata heuristics.