Tool tree
gradeNot graded
get_floorplan_stateAnswer
Reads the complete floor plan state: plot size, all rooms, coordinates, dimensions, doors, windows, furniture, square meterage, and plot coverage.
View tool JSON
{
"name": "get_floorplan_state",
"kind": "answer",
"impl": "imperative",
"description": "Reads the complete floor plan state: plot size, all rooms, coordinates, dimensions, doors, windows, furniture, square meterage, and plot coverage.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
}
}set_plot_dimensionsAction
Sets or updates the land plot boundary dimensions (width and depth in meters or feet).
View tool JSON
{
"name": "set_plot_dimensions",
"kind": "act",
"impl": "imperative",
"description": "Sets or updates the land plot boundary dimensions (width and depth in meters or feet).",
"inputSchema": {
"type": "object",
"properties": {
"width": {
"type": "number",
"description": "Width of plot in meters"
},
"height": {
"type": "number",
"description": "Depth/height of plot in meters"
},
"unit": {
"type": "string",
"enum": [
"m",
"ft"
],
"description": "Unit (m or ft)"
}
},
"required": [
"width",
"height"
],
"additionalProperties": false
}
}add_roomAction
Adds a new room with custom name, type, dimensions, and optional coordinates or relative placement.
View tool JSON
{
"name": "add_room",
"kind": "act",
"impl": "imperative",
"description": "Adds a new room with custom name, type, dimensions, and optional coordinates or relative placement.",
"inputSchema": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Room name (e.g. \"Master Bedroom\", \"Kitchen\", \"Bedroom 2\")"
},
"type": {
"type": "string",
"enum": [
"bedroom",
"master_bedroom",
"bathroom",
"kitchen",
"living_room",
"dining_room",
"garage",
"hallway",
"office",
"balcony",
"patio",
"laundry",
"custom"
]
},
"width": {
"type": "number",
"description": "Width in meters (defaults to standard preset size)"
},
"height": {
"type": "number",
"description": "Height in meters (defaults to standard preset size)"
},
"x": {
"type": "number",
"description": "Optional exact X coordinate in meters"
},
"y": {
"type": "number",
"description": "Optional exact Y coordinate in meters"
},
"adjacent_to": {
"type": "string",
"description": "Optional name/type of room to place this beside"
},
"position": {
"type": "string",
"enum": [
"right_of",
"left_of",
"above",
"below"
]
}
},
"required": [
"name"
],
"additionalProperties": false
}
}resize_roomAction
Resizes an existing room by name or ID (e.g. "Make Master Bedroom 4.5m × 4m").
View tool JSON
{
"name": "resize_room",
"kind": "act",
"impl": "imperative",
"description": "Resizes an existing room by name or ID (e.g. \"Make Master Bedroom 4.5m × 4m\").",
"inputSchema": {
"type": "object",
"properties": {
"room_name_or_id": {
"type": "string",
"description": "Name, type, or ID of the room"
},
"width": {
"type": "number",
"description": "New width in meters"
},
"height": {
"type": "number",
"description": "New height in meters"
}
},
"required": [
"room_name_or_id",
"width",
"height"
],
"additionalProperties": false
}
}move_roomAction
Moves a room to absolute coordinates (x, y) or aligns it adjacent to another room.
View tool JSON
{
"name": "move_room",
"kind": "act",
"impl": "imperative",
"description": "Moves a room to absolute coordinates (x, y) or aligns it adjacent to another room.",
"inputSchema": {
"type": "object",
"properties": {
"room_name_or_id": {
"type": "string",
"description": "Name or ID of room to move"
},
"x": {
"type": "number",
"description": "Target X coordinate in meters"
},
"y": {
"type": "number",
"description": "Target Y coordinate in meters"
},
"adjacent_to": {
"type": "string",
"description": "Name or type of reference room to snap beside"
},
"position": {
"type": "string",
"enum": [
"right_of",
"left_of",
"above",
"below"
]
}
},
"required": [
"room_name_or_id"
],
"additionalProperties": false
}
}rotate_roomAction
Rotates a room by 90 degrees (swapping width and height).
View tool JSON
{
"name": "rotate_room",
"kind": "act",
"impl": "imperative",
"description": "Rotates a room by 90 degrees (swapping width and height).",
"inputSchema": {
"type": "object",
"properties": {
"room_name_or_id": {
"type": "string",
"description": "Room name or ID"
}
},
"required": [
"room_name_or_id"
],
"additionalProperties": false
}
}duplicate_roomAction
Clones an existing room and places a duplicate adjacent to it.
View tool JSON
{
"name": "duplicate_room",
"kind": "act",
"impl": "imperative",
"description": "Clones an existing room and places a duplicate adjacent to it.",
"inputSchema": {
"type": "object",
"properties": {
"room_name_or_id": {
"type": "string",
"description": "Room name or ID"
}
},
"required": [
"room_name_or_id"
],
"additionalProperties": false
}
}delete_roomSensitive Action
Deletes a room along with its attached doors, windows, and furniture.
View tool JSON
{
"name": "delete_room",
"kind": "transact",
"impl": "imperative",
"description": "Deletes a room along with its attached doors, windows, and furniture.",
"inputSchema": {
"type": "object",
"properties": {
"room_name_or_id": {
"type": "string",
"description": "Room name or ID"
}
},
"required": [
"room_name_or_id"
],
"additionalProperties": false
}
}add_doorAction
Adds a door (single, double, sliding, pocket) to a wall of a room.
View tool JSON
{
"name": "add_door",
"kind": "act",
"impl": "imperative",
"description": "Adds a door (single, double, sliding, pocket) to a wall of a room.",
"inputSchema": {
"type": "object",
"properties": {
"room_name_or_id": {
"type": "string",
"description": "Room name or ID"
},
"wall": {
"type": "string",
"enum": [
"north",
"south",
"east",
"west"
]
},
"type": {
"type": "string",
"enum": [
"single_door",
"double_door",
"sliding_door",
"pocket_door"
]
},
"offset": {
"type": "number",
"description": "Distance in meters along the wall"
},
"width": {
"type": "number",
"description": "Door width in meters (e.g. 0.9 or 1.5)"
}
},
"required": [
"room_name_or_id",
"wall"
],
"additionalProperties": false
}
}flip_door_swingAction
Toggles a door swing between inside and outside.
View tool JSON
{
"name": "flip_door_swing",
"kind": "act",
"impl": "imperative",
"description": "Toggles a door swing between inside and outside.",
"inputSchema": {
"type": "object",
"properties": {
"door_id": {
"type": "string",
"description": "ID of the door opening"
}
},
"required": [
"door_id"
],
"additionalProperties": false
}
}add_windowAction
Adds a window to a wall of a room.
View tool JSON
{
"name": "add_window",
"kind": "act",
"impl": "imperative",
"description": "Adds a window to a wall of a room.",
"inputSchema": {
"type": "object",
"properties": {
"room_name_or_id": {
"type": "string",
"description": "Room name or ID"
},
"wall": {
"type": "string",
"enum": [
"north",
"south",
"east",
"west"
]
},
"type": {
"type": "string",
"enum": [
"window",
"bay_window"
]
},
"offset": {
"type": "number",
"description": "Distance in meters along the wall"
},
"width": {
"type": "number",
"description": "Window width in meters (e.g. 1.2 or 2.0)"
}
},
"required": [
"room_name_or_id",
"wall"
],
"additionalProperties": false
}
}add_fixtureAction
Places furniture or fixtures (stairs, kitchen counter/island, sink, toilet, shower, bathtub, king bed, sofa, dining table, desk, car) into a room.
View tool JSON
{
"name": "add_fixture",
"kind": "act",
"impl": "imperative",
"description": "Places furniture or fixtures (stairs, kitchen counter/island, sink, toilet, shower, bathtub, king bed, sofa, dining table, desk, car) into a room.",
"inputSchema": {
"type": "object",
"properties": {
"room_name_or_id": {
"type": "string",
"description": "Room name or ID"
},
"type": {
"type": "string",
"enum": [
"stairs",
"kitchen_counter",
"kitchen_island",
"sink",
"toilet",
"shower",
"bathtub",
"bed_king",
"bed_single",
"wardrobe",
"sofa",
"dining_table",
"desk",
"car"
]
},
"name": {
"type": "string",
"description": "Optional custom display label"
},
"color": {
"type": "string",
"description": "Optional color (hex code e.g. \"#10b981\" or name e.g. \"emerald\", \"gold\", \"dark\", \"blue\", \"amber\", \"rose\")"
},
"x": {
"type": "number",
"description": "Relative X offset in meters"
},
"y": {
"type": "number",
"description": "Relative Y offset in meters"
},
"rotation": {
"type": "number",
"enum": [
0,
90,
180,
270
]
}
},
"required": [
"room_name_or_id",
"type"
],
"additionalProperties": false
}
}resize_fixtureAction
Resizes a piece of furniture or fixture (e.g. make dining table 2.4m x 1.0m).
View tool JSON
{
"name": "resize_fixture",
"kind": "act",
"impl": "imperative",
"description": "Resizes a piece of furniture or fixture (e.g. make dining table 2.4m x 1.0m).",
"inputSchema": {
"type": "object",
"properties": {
"fixture_name_or_id": {
"type": "string",
"description": "Fixture name or ID"
},
"width": {
"type": "number",
"description": "Width in meters"
},
"height": {
"type": "number",
"description": "Length/depth in meters"
}
},
"required": [
"fixture_name_or_id",
"width",
"height"
],
"additionalProperties": false
}
}rotate_fixtureAction
Rotates an object/furniture item by 90 degrees.
View tool JSON
{
"name": "rotate_fixture",
"kind": "act",
"impl": "imperative",
"description": "Rotates an object/furniture item by 90 degrees.",
"inputSchema": {
"type": "object",
"properties": {
"fixture_name_or_id": {
"type": "string",
"description": "Fixture name or ID"
}
},
"required": [
"fixture_name_or_id"
],
"additionalProperties": false
}
}delete_fixtureSensitive Action
Deletes a piece of furniture or fixture.
View tool JSON
{
"name": "delete_fixture",
"kind": "transact",
"impl": "imperative",
"description": "Deletes a piece of furniture or fixture.",
"inputSchema": {
"type": "object",
"properties": {
"fixture_name_or_id": {
"type": "string",
"description": "Fixture name or ID"
}
},
"required": [
"fixture_name_or_id"
],
"additionalProperties": false
}
}auto_arrange_floorplanAction
Arranges multiple rooms automatically into a clean architectural floor plan layout.
View tool JSON
{
"name": "auto_arrange_floorplan",
"kind": "act",
"impl": "imperative",
"description": "Arranges multiple rooms automatically into a clean architectural floor plan layout.",
"inputSchema": {
"type": "object",
"properties": {
"rooms": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"bedroom",
"master_bedroom",
"bathroom",
"kitchen",
"living_room",
"dining_room",
"garage",
"hallway",
"office"
]
},
"width": {
"type": "number"
},
"height": {
"type": "number"
}
},
"required": [
"name",
"type"
]
}
}
},
"required": [
"rooms"
],
"additionalProperties": false
}
}calculate_plot_complianceAction
Evaluates genuine architectural zoning coverage (FAR), distinguishing gross conditioned built footprint from outdoor/landscaping zones (parking, garden, courtyard, patio), and checks setbacks.
View tool JSON
{
"name": "calculate_plot_compliance",
"kind": "act",
"impl": "imperative",
"description": "Evaluates genuine architectural zoning coverage (FAR), distinguishing gross conditioned built footprint from outdoor/landscaping zones (parking, garden, courtyard, patio), and checks setbacks.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
}
}clear_floorplanAction
Clears all rooms and furniture to start fresh on a blank plot.
View tool JSON
{
"name": "clear_floorplan",
"kind": "act",
"impl": "imperative",
"description": "Clears all rooms and furniture to start fresh on a blank plot.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
}
}add_custom_shapeAction
Adds a generic parametric shape entity (rectangle, circle, l_shape, u_shape, t_shape, v_shape) with custom name, dimensions, and coordinates. Use for custom stages, booths, reception counters, tables, or equipment.
View tool JSON
{
"name": "add_custom_shape",
"kind": "act",
"impl": "imperative",
"description": "Adds a generic parametric shape entity (rectangle, circle, l_shape, u_shape, t_shape, v_shape) with custom name, dimensions, and coordinates. Use for custom stages, booths, reception counters, tables, or equipment.",
"inputSchema": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Custom name/label for the shape (e.g. \"Main Keynote V-Stage\", \"Gold Sponsor Booth\", \"L-Shaped Reception\")"
},
"geometry": {
"type": "string",
"enum": [
"rectangle",
"circle",
"l_shape",
"u_shape",
"t_shape",
"v_shape"
],
"description": "Geometric form of the shape entity"
},
"width": {
"type": "number",
"description": "Width / diameter of the shape in meters"
},
"height": {
"type": "number",
"description": "Length / depth of the shape in meters"
},
"x": {
"type": "number",
"description": "X position on canvas/room in meters"
},
"y": {
"type": "number",
"description": "Y position on canvas/room in meters"
},
"color": {
"type": "string",
"description": "Optional color (hex code e.g. \"#10b981\" or name e.g. \"emerald\", \"gold\", \"dark\", \"blue\", \"amber\", \"rose\")"
},
"rotation": {
"type": "number",
"enum": [
0,
90,
180,
270
],
"description": "Rotation in degrees"
},
"room_name_or_id": {
"type": "string",
"description": "Optional room/zone name to place inside"
}
},
"required": [
"name",
"geometry",
"width",
"height"
],
"additionalProperties": false
}
}reshape_objectAction
Remodels or resizes any object/fixture/shape on the canvas (change geometry, width, depth, rotation, color, or name).
View tool JSON
{
"name": "reshape_object",
"kind": "act",
"impl": "imperative",
"description": "Remodels or resizes any object/fixture/shape on the canvas (change geometry, width, depth, rotation, color, or name).",
"inputSchema": {
"type": "object",
"properties": {
"object_name_or_id": {
"type": "string",
"description": "Name or ID of the object/shape to remodel"
},
"new_name": {
"type": "string",
"description": "Optional new label/name"
},
"new_color": {
"type": "string",
"description": "Optional new color (hex e.g. \"#10b981\" or name e.g. \"emerald\", \"gold\", \"blue\", \"dark\")"
},
"new_geometry": {
"type": "string",
"enum": [
"rectangle",
"circle",
"l_shape",
"u_shape",
"t_shape",
"v_shape"
],
"description": "New geometric shape form"
},
"new_width": {
"type": "number",
"description": "New width in meters"
},
"new_height": {
"type": "number",
"description": "New depth/length in meters"
},
"new_rotation": {
"type": "number",
"enum": [
0,
90,
180,
270
],
"description": "New rotation angle"
}
},
"required": [
"object_name_or_id"
],
"additionalProperties": false
}
}rename_elementAction
Renames any room, shape, or furniture item on the canvas.
View tool JSON
{
"name": "rename_element",
"kind": "act",
"impl": "imperative",
"description": "Renames any room, shape, or furniture item on the canvas.",
"inputSchema": {
"type": "object",
"properties": {
"element_name_or_id": {
"type": "string",
"description": "Current name or ID of the room or object"
},
"new_name": {
"type": "string",
"description": "The new name to assign"
}
},
"required": [
"element_name_or_id",
"new_name"
],
"additionalProperties": false
}
}batch_create_grid_layoutAction
Generates a matrix/grid of N items with designated rows, columns, and aisle spacing. Perfect for creating 20-50 exhibition booths, banquet tables, or workstation pods in seconds.
View tool JSON
{
"name": "batch_create_grid_layout",
"kind": "act",
"impl": "imperative",
"description": "Generates a matrix/grid of N items with designated rows, columns, and aisle spacing. Perfect for creating 20-50 exhibition booths, banquet tables, or workstation pods in seconds.",
"inputSchema": {
"type": "object",
"properties": {
"item_type": {
"type": "string",
"enum": [
"booth_standard",
"booth_sponsor",
"round_banquet_table",
"workstation_cluster",
"desk",
"custom_shape"
],
"description": "Type of item to replicate in grid"
},
"item_name_prefix": {
"type": "string",
"description": "Naming prefix (e.g. \"Booth\", \"Table\", \"Station\")"
},
"count": {
"type": "number",
"description": "Total number of items to create (e.g. 30)"
},
"columns": {
"type": "number",
"description": "Number of columns in the grid (e.g. 5)"
},
"item_width": {
"type": "number",
"description": "Width of each item in meters (e.g. 3.0)"
},
"item_height": {
"type": "number",
"description": "Depth/height of each item in meters (e.g. 3.0)"
},
"aisle_x": {
"type": "number",
"description": "Horizontal aisle clearance between columns in meters (e.g. 2.0)"
},
"aisle_y": {
"type": "number",
"description": "Vertical aisle clearance between rows in meters (e.g. 2.0)"
},
"start_x": {
"type": "number",
"description": "Start X coordinate in meters (default: 2.0)"
},
"start_y": {
"type": "number",
"description": "Start Y coordinate in meters (default: 2.0)"
}
},
"required": [
"item_type",
"count",
"columns",
"item_width",
"item_height"
],
"additionalProperties": false
}
}remodel_polygon_verticesAction
Remodels and sculpts any shape into custom polygon coordinates by setting exact (x, y) vertices.
View tool JSON
{
"name": "remodel_polygon_vertices",
"kind": "act",
"impl": "imperative",
"description": "Remodels and sculpts any shape into custom polygon coordinates by setting exact (x, y) vertices.",
"inputSchema": {
"type": "object",
"properties": {
"object_name_or_id": {
"type": "string",
"description": "Name or ID of object to reshape"
},
"vertices": {
"type": "array",
"description": "Array of {x, y} coordinate points in meters relative to object origin",
"items": {
"type": "object",
"properties": {
"x": {
"type": "number"
},
"y": {
"type": "number"
}
},
"required": [
"x",
"y"
]
}
}
},
"required": [
"object_name_or_id",
"vertices"
],
"additionalProperties": false
}
}add_polygon_vertexAction
Adds a new corner point to a polygon shape so it can be remodeled with more detail.
View tool JSON
{
"name": "add_polygon_vertex",
"kind": "act",
"impl": "imperative",
"description": "Adds a new corner point to a polygon shape so it can be remodeled with more detail.",
"inputSchema": {
"type": "object",
"properties": {
"object_name_or_id": {
"type": "string",
"description": "Name or ID of object"
},
"after_index": {
"type": "number",
"description": "Index after which to insert new vertex"
}
},
"required": [
"object_name_or_id"
],
"additionalProperties": false
}
}curve_room_wallsAction
Sets curved architectural walls or rounded corners for a space/room (radius in meters, 0.0 for sharp to 3.0 for curved).
View tool JSON
{
"name": "curve_room_walls",
"kind": "act",
"impl": "imperative",
"description": "Sets curved architectural walls or rounded corners for a space/room (radius in meters, 0.0 for sharp to 3.0 for curved).",
"inputSchema": {
"type": "object",
"properties": {
"room_name_or_id": {
"type": "string",
"description": "Name or ID of room"
},
"radius": {
"type": "number",
"description": "Corner radius / curvature in meters (e.g. 0.0 to 3.0)"
}
},
"required": [
"room_name_or_id",
"radius"
],
"additionalProperties": false
}
}remodel_room_wallsAction
Remodels room walls into a custom polygon by specifying exact corner coordinates {x, y} in meters.
View tool JSON
{
"name": "remodel_room_walls",
"kind": "act",
"impl": "imperative",
"description": "Remodels room walls into a custom polygon by specifying exact corner coordinates {x, y} in meters.",
"inputSchema": {
"type": "object",
"properties": {
"room_name_or_id": {
"type": "string",
"description": "Name or ID of room"
},
"vertices": {
"type": "array",
"items": {
"type": "object",
"properties": {
"x": {
"type": "number",
"description": "Relative X coordinate in meters"
},
"y": {
"type": "number",
"description": "Relative Y coordinate in meters"
}
},
"required": [
"x",
"y"
]
},
"description": "Ordered list of polygon wall corner coordinates"
}
},
"required": [
"room_name_or_id",
"vertices"
],
"additionalProperties": false
}
}set_object_colorAction
Assigns a color to any object, shape, booth, or furniture item on the canvas. Accepts hex colors (#10b981, #3b82f6) or color names ("emerald", "gold", "crema", "espresso", "dark", "blue", "amber", "orange", "coral", "red", "rose", "purple", "teal", "mint", "slate", "charcoal", "white").
View tool JSON
{
"name": "set_object_color",
"kind": "act",
"impl": "imperative",
"description": "Assigns a color to any object, shape, booth, or furniture item on the canvas. Accepts hex colors (#10b981, #3b82f6) or color names (\"emerald\", \"gold\", \"crema\", \"espresso\", \"dark\", \"blue\", \"amber\", \"orange\", \"coral\", \"red\", \"rose\", \"purple\", \"teal\", \"mint\", \"slate\", \"charcoal\", \"white\").",
"inputSchema": {
"type": "object",
"properties": {
"object_name_or_id": {
"type": "string",
"description": "Name or ID of the object/shape/fixture to color"
},
"color": {
"type": "string",
"description": "Hex code (e.g. \"#10b981\", \"#3b82f6\") or color name (\"emerald\", \"gold\", \"blue\", \"amber\", \"rose\", \"dark\", \"white\")"
}
},
"required": [
"object_name_or_id",
"color"
],
"additionalProperties": false
}
}set_room_colorAction
Assigns a tint color to any room or zone on the canvas. Accepts hex colors (#10b981) or color names ("emerald", "gold", "blue", "amber", "rose", "slate", "white").
View tool JSON
{
"name": "set_room_color",
"kind": "act",
"impl": "imperative",
"description": "Assigns a tint color to any room or zone on the canvas. Accepts hex colors (#10b981) or color names (\"emerald\", \"gold\", \"blue\", \"amber\", \"rose\", \"slate\", \"white\").",
"inputSchema": {
"type": "object",
"properties": {
"room_name_or_id": {
"type": "string",
"description": "Name or ID of the room or zone"
},
"color": {
"type": "string",
"description": "Hex code or color name (\"emerald\", \"blue\", \"gold\", \"amber\", \"rose\")"
}
},
"required": [
"room_name_or_id",
"color"
],
"additionalProperties": false
}
}delete_doorSensitive Action
Deletes a door opening by its exact door ID, or removes doors from a room (optionally filtered by wall).
View tool JSON
{
"name": "delete_door",
"kind": "transact",
"impl": "imperative",
"description": "Deletes a door opening by its exact door ID, or removes doors from a room (optionally filtered by wall).",
"inputSchema": {
"type": "object",
"properties": {
"door_id": {
"type": "string",
"description": "Exact ID of the door opening to delete"
},
"room_name_or_id": {
"type": "string",
"description": "Room name or ID to delete doors from"
},
"wall": {
"type": "string",
"enum": [
"north",
"south",
"east",
"west"
],
"description": "Optional wall filter"
}
},
"additionalProperties": false
}
}delete_windowSensitive Action
Deletes a window opening by its exact window ID, or removes windows from a room (optionally filtered by wall).
View tool JSON
{
"name": "delete_window",
"kind": "transact",
"impl": "imperative",
"description": "Deletes a window opening by its exact window ID, or removes windows from a room (optionally filtered by wall).",
"inputSchema": {
"type": "object",
"properties": {
"window_id": {
"type": "string",
"description": "Exact ID of the window to delete"
},
"room_name_or_id": {
"type": "string",
"description": "Room name or ID to delete windows from"
},
"wall": {
"type": "string",
"enum": [
"north",
"south",
"east",
"west"
],
"description": "Optional wall filter"
}
},
"additionalProperties": false
}
}delete_openingSensitive Action
Deletes any opening (door or window) by ID, or clears all openings in a specific room.
View tool JSON
{
"name": "delete_opening",
"kind": "transact",
"impl": "imperative",
"description": "Deletes any opening (door or window) by ID, or clears all openings in a specific room.",
"inputSchema": {
"type": "object",
"properties": {
"opening_id": {
"type": "string",
"description": "Opening ID"
},
"room_name_or_id": {
"type": "string",
"description": "Room name or ID"
}
},
"additionalProperties": false
}
}move_doorAction
Moves a door along its wall or repositions it to another wall of the same room.
View tool JSON
{
"name": "move_door",
"kind": "act",
"impl": "imperative",
"description": "Moves a door along its wall or repositions it to another wall of the same room.",
"inputSchema": {
"type": "object",
"properties": {
"door_id": {
"type": "string",
"description": "ID of the door opening"
},
"offset": {
"type": "number",
"description": "Distance in meters from the wall origin"
},
"new_wall": {
"type": "string",
"enum": [
"north",
"south",
"east",
"west"
],
"description": "Optional new wall to place door on"
}
},
"required": [
"door_id",
"offset"
],
"additionalProperties": false
}
}move_windowAction
Moves a window along its wall or repositions it to another wall of the same room.
View tool JSON
{
"name": "move_window",
"kind": "act",
"impl": "imperative",
"description": "Moves a window along its wall or repositions it to another wall of the same room.",
"inputSchema": {
"type": "object",
"properties": {
"window_id": {
"type": "string",
"description": "ID of the window opening"
},
"offset": {
"type": "number",
"description": "Distance in meters from the wall origin"
},
"new_wall": {
"type": "string",
"enum": [
"north",
"south",
"east",
"west"
],
"description": "Optional new wall to place window on"
}
},
"required": [
"window_id",
"offset"
],
"additionalProperties": false
}
}resize_doorAction
Resizes a door opening width in meters (e.g. 0.8m, 0.9m, 1.2m, 1.8m).
View tool JSON
{
"name": "resize_door",
"kind": "act",
"impl": "imperative",
"description": "Resizes a door opening width in meters (e.g. 0.8m, 0.9m, 1.2m, 1.8m).",
"inputSchema": {
"type": "object",
"properties": {
"door_id": {
"type": "string",
"description": "ID of the door opening"
},
"width": {
"type": "number",
"description": "New width in meters"
}
},
"required": [
"door_id",
"width"
],
"additionalProperties": false
}
}resize_windowAction
Resizes a window opening width in meters (e.g. 1.2m, 1.8m, 2.4m).
View tool JSON
{
"name": "resize_window",
"kind": "act",
"impl": "imperative",
"description": "Resizes a window opening width in meters (e.g. 1.2m, 1.8m, 2.4m).",
"inputSchema": {
"type": "object",
"properties": {
"window_id": {
"type": "string",
"description": "ID of the window opening"
},
"width": {
"type": "number",
"description": "New width in meters"
}
},
"required": [
"window_id",
"width"
],
"additionalProperties": false
}
}set_door_typeAction
Changes the door type (single_door, double_door, sliding_door, pocket_door, bifold_door, opening_archway).
View tool JSON
{
"name": "set_door_type",
"kind": "act",
"impl": "imperative",
"description": "Changes the door type (single_door, double_door, sliding_door, pocket_door, bifold_door, opening_archway).",
"inputSchema": {
"type": "object",
"properties": {
"door_id": {
"type": "string",
"description": "ID of the door opening"
},
"type": {
"type": "string",
"enum": [
"single_door",
"double_door",
"sliding_door",
"pocket_door",
"bifold_door",
"opening_archway"
],
"description": "New door type"
}
},
"required": [
"door_id",
"type"
],
"additionalProperties": false
}
}clear_redundant_doorsAction
Cleans up duplicate or excessive stacked doors in a room or across the entire floor plan, keeping only clean primary doors.
View tool JSON
{
"name": "clear_redundant_doors",
"kind": "act",
"impl": "imperative",
"description": "Cleans up duplicate or excessive stacked doors in a room or across the entire floor plan, keeping only clean primary doors.",
"inputSchema": {
"type": "object",
"properties": {
"room_name_or_id": {
"type": "string",
"description": "Optional room name or ID. If omitted, cleans across all rooms."
}
},
"additionalProperties": false
}
}select_elementAction
Selects and highlights a room, fixture, opening, or plot on the canvas and in the right properties panel.
View tool JSON
{
"name": "select_element",
"kind": "act",
"impl": "imperative",
"description": "Selects and highlights a room, fixture, opening, or plot on the canvas and in the right properties panel.",
"inputSchema": {
"type": "object",
"properties": {
"name_or_id": {
"type": "string",
"description": "Name or ID of the element to select. Pass empty string or \"none\" to clear active selection."
},
"type": {
"type": "string",
"enum": [
"room",
"fixture",
"opening",
"plot"
],
"description": "Optional element type hint"
}
},
"required": [
"name_or_id"
],
"additionalProperties": false
}
}get_selected_elementAnswer
Returns the element currently selected and highlighted on the canvas.
View tool JSON
{
"name": "get_selected_element",
"kind": "answer",
"impl": "imperative",
"description": "Returns the element currently selected and highlighted on the canvas.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
}
}set_archetypeAction
Switches the active space archetype category (residential, commercial_office, events_exhibition, cafe_restaurant, retail_store, clinic_wellness, studio_workshop).
View tool JSON
{
"name": "set_archetype",
"kind": "act",
"impl": "imperative",
"description": "Switches the active space archetype category (residential, commercial_office, events_exhibition, cafe_restaurant, retail_store, clinic_wellness, studio_workshop).",
"inputSchema": {
"type": "object",
"properties": {
"archetype": {
"type": "string",
"enum": [
"residential",
"commercial_office",
"events_exhibition",
"cafe_restaurant",
"retail_store",
"clinic_wellness",
"studio_workshop"
],
"description": "Category of space archetype to activate in the tool palette"
}
},
"required": [
"archetype"
],
"additionalProperties": false
}
}get_archetypesAnswer
Lists all available space archetypes and their descriptions.
View tool JSON
{
"name": "get_archetypes",
"kind": "answer",
"impl": "imperative",
"description": "Lists all available space archetypes and their descriptions.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
}
}set_project_nameAction
Sets or renames the active architectural project title.
View tool JSON
{
"name": "set_project_name",
"kind": "act",
"impl": "imperative",
"description": "Sets or renames the active architectural project title.",
"inputSchema": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "New project title"
}
},
"required": [
"name"
],
"additionalProperties": false
}
}set_unitsAction
Switches the measurement units between meters (m) and feet (ft).
View tool JSON
{
"name": "set_units",
"kind": "act",
"impl": "imperative",
"description": "Switches the measurement units between meters (m) and feet (ft).",
"inputSchema": {
"type": "object",
"properties": {
"unit": {
"type": "string",
"enum": [
"m",
"ft"
],
"description": "Measurement unit"
}
},
"required": [
"unit"
],
"additionalProperties": false
}
}get_unitsAnswer
Returns the current measurement unit, grid snap settings, and dimensions display mode.
View tool JSON
{
"name": "get_units",
"kind": "answer",
"impl": "imperative",
"description": "Returns the current measurement unit, grid snap settings, and dimensions display mode.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
}
}undoAction
Reverses the last spatial action on the canvas.
View tool JSON
{
"name": "undo",
"kind": "act",
"impl": "imperative",
"description": "Reverses the last spatial action on the canvas.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
}
}redoAction
Re-applies the last undone spatial action.
View tool JSON
{
"name": "redo",
"kind": "act",
"impl": "imperative",
"description": "Re-applies the last undone spatial action.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
}
}validate_floorplanAction
Performs comprehensive architectural validation: detects room overlaps, out-of-bounds walls, isolated rooms with 0 doors, circulation bottlenecks, excessive openings, and true gross built vs outdoor landscaping coverage.
View tool JSON
{
"name": "validate_floorplan",
"kind": "act",
"impl": "imperative",
"description": "Performs comprehensive architectural validation: detects room overlaps, out-of-bounds walls, isolated rooms with 0 doors, circulation bottlenecks, excessive openings, and true gross built vs outdoor landscaping coverage.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
}
}get_connectivity_graphAnswer
Evaluates circulation and doorway connectivity: returns connected room pairs, exterior entrances, isolated rooms, and reachability clusters.
View tool JSON
{
"name": "get_connectivity_graph",
"kind": "answer",
"impl": "imperative",
"description": "Evaluates circulation and doorway connectivity: returns connected room pairs, exterior entrances, isolated rooms, and reachability clusters.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
}
}calculate_setbacksAction
Calculates property setback lines (Abuja FCDA / standard setbacks: Front 6m, Rear 3m, Sides 3m) and identifies any building wall encroachments.
View tool JSON
{
"name": "calculate_setbacks",
"kind": "act",
"impl": "imperative",
"description": "Calculates property setback lines (Abuja FCDA / standard setbacks: Front 6m, Rear 3m, Sides 3m) and identifies any building wall encroachments.",
"inputSchema": {
"type": "object",
"properties": {
"front": {
"type": "number",
"description": "Front setback in meters (default 6.0m)"
},
"rear": {
"type": "number",
"description": "Rear setback in meters (default 3.0m)"
},
"east": {
"type": "number",
"description": "East side setback in meters (default 3.0m)"
},
"west": {
"type": "number",
"description": "West side setback in meters (default 3.0m)"
},
"jurisdiction": {
"type": "string",
"description": "Zoning jurisdiction name (e.g. \"Abuja FCDA\")"
}
},
"additionalProperties": false
}
}center_plotAction
Centers the plot in the canvas viewport and resets view pan.
View tool JSON
{
"name": "center_plot",
"kind": "act",
"impl": "imperative",
"description": "Centers the plot in the canvas viewport and resets view pan.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
}
}set_zoomAction
Sets the viewport zoom factor (e.g. 0.5 to 2.5).
View tool JSON
{
"name": "set_zoom",
"kind": "act",
"impl": "imperative",
"description": "Sets the viewport zoom factor (e.g. 0.5 to 2.5).",
"inputSchema": {
"type": "object",
"properties": {
"zoom": {
"type": "number",
"description": "Zoom factor (e.g. 1.0 = 100%, 1.5 = 150%)"
}
},
"required": [
"zoom"
],
"additionalProperties": false
}
}delete_custom_shapeSensitive Action
Deletes a custom parametric shape entity or site shape from the canvas.
View tool JSON
{
"name": "delete_custom_shape",
"kind": "transact",
"impl": "imperative",
"description": "Deletes a custom parametric shape entity or site shape from the canvas.",
"inputSchema": {
"type": "object",
"properties": {
"shape_name_or_id": {
"type": "string",
"description": "Name or ID of the shape to delete"
}
},
"required": [
"shape_name_or_id"
],
"additionalProperties": false
}
}set_room_typeAction
Changes the architectural category/type of a space (e.g. bedroom, master_bedroom, ensuite_bathroom, kitchen, living_room, corridor, bq, parking, garden, office, conference_room, etc.).
View tool JSON
{
"name": "set_room_type",
"kind": "act",
"impl": "imperative",
"description": "Changes the architectural category/type of a space (e.g. bedroom, master_bedroom, ensuite_bathroom, kitchen, living_room, corridor, bq, parking, garden, office, conference_room, etc.).",
"inputSchema": {
"type": "object",
"properties": {
"room_name_or_id": {
"type": "string",
"description": "Name or ID of the room"
},
"new_type": {
"type": "string",
"description": "New room type identifier"
}
},
"required": [
"room_name_or_id",
"new_type"
],
"additionalProperties": false
}
}set_fixture_position_absoluteAction
Sets absolute canvas coordinates (x, y in meters) for any fixture, furniture item, or site shape, decoupling it from relative room offsets.
View tool JSON
{
"name": "set_fixture_position_absolute",
"kind": "act",
"impl": "imperative",
"description": "Sets absolute canvas coordinates (x, y in meters) for any fixture, furniture item, or site shape, decoupling it from relative room offsets.",
"inputSchema": {
"type": "object",
"properties": {
"fixture_name_or_id": {
"type": "string",
"description": "Name or ID of fixture/shape"
},
"x": {
"type": "number",
"description": "Absolute X position on plot in meters"
},
"y": {
"type": "number",
"description": "Absolute Y position on plot in meters"
}
},
"required": [
"fixture_name_or_id",
"x",
"y"
],
"additionalProperties": false
}
}set_metadataAction
Stores project metadata: location, zoning jurisdiction, title deed type (C-of-O), setbacks, approval assumptions, or client notes.
View tool JSON
{
"name": "set_metadata",
"kind": "act",
"impl": "imperative",
"description": "Stores project metadata: location, zoning jurisdiction, title deed type (C-of-O), setbacks, approval assumptions, or client notes.",
"inputSchema": {
"type": "object",
"properties": {
"location": {
"type": "string",
"description": "Site address or location (e.g. \"Maitama, Abuja\")"
},
"zoning_jurisdiction": {
"type": "string",
"description": "Jurisdiction (e.g. \"Abuja FCDA\", \"Lagos LASPPPA\")"
},
"title_type": {
"type": "string",
"description": "Title deed type (e.g. \"C-of-O\", \"R-of-O\", \"Freehold\")"
},
"setback_north": {
"type": "number",
"description": "Front setback in meters"
},
"setback_south": {
"type": "number",
"description": "Rear setback in meters"
},
"setback_east": {
"type": "number",
"description": "East side setback in meters"
},
"setback_west": {
"type": "number",
"description": "West side setback in meters"
},
"approval_assumptions": {
"type": "string",
"description": "Assumptions regarding planning approval"
},
"client_notes": {
"type": "string",
"description": "Design notes or client preferences"
}
},
"additionalProperties": false
}
}get_metadataAnswer
Retrieves current project metadata, setbacks, zoning parameters, and client notes.
View tool JSON
{
"name": "get_metadata",
"kind": "answer",
"impl": "imperative",
"description": "Retrieves current project metadata, setbacks, zoning parameters, and client notes.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
}
}export_projectAction
Exports the floor plan project as vector SVG blueprint markup or structured JSON state.
View tool JSON
{
"name": "export_project",
"kind": "act",
"impl": "imperative",
"description": "Exports the floor plan project as vector SVG blueprint markup or structured JSON state.",
"inputSchema": {
"type": "object",
"properties": {
"format": {
"type": "string",
"enum": [
"svg",
"json"
],
"description": "Export format: \"svg\" for vector blueprint markup, \"json\" for data state"
}
},
"required": [
"format"
],
"additionalProperties": false
}
}save_projectAction
Saves current floor plan state and returns a verified JSON state snapshot with timestamp.
View tool JSON
{
"name": "save_project",
"kind": "act",
"impl": "imperative",
"description": "Saves current floor plan state and returns a verified JSON state snapshot with timestamp.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
}
}render_plan_snapshotAction
Renders an instant vector SVG blueprint markup snapshot of the canvas layout for visual verification.
View tool JSON
{
"name": "render_plan_snapshot",
"kind": "act",
"impl": "imperative",
"description": "Renders an instant vector SVG blueprint markup snapshot of the canvas layout for visual verification.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
}
}save_project_asAction
Saves the current floor plan layout to the project library with a custom name and optional notes.
View tool JSON
{
"name": "save_project_as",
"kind": "act",
"impl": "imperative",
"description": "Saves the current floor plan layout to the project library with a custom name and optional notes.",
"inputSchema": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Name for this saved floor plan design"
},
"notes": {
"type": "string",
"description": "Optional design notes or description"
}
},
"required": [
"name"
],
"additionalProperties": false
}
}list_saved_projectsAnswer
Lists all saved floor plan layouts stored in the project library.
View tool JSON
{
"name": "list_saved_projects",
"kind": "answer",
"impl": "imperative",
"description": "Lists all saved floor plan layouts stored in the project library.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
}
}load_saved_projectAction
Loads a previously saved floor plan layout from the library onto the active canvas.
View tool JSON
{
"name": "load_saved_project",
"kind": "act",
"impl": "imperative",
"description": "Loads a previously saved floor plan layout from the library onto the active canvas.",
"inputSchema": {
"type": "object",
"properties": {
"project_name_or_id": {
"type": "string",
"description": "Name or ID of the saved project to load"
}
},
"required": [
"project_name_or_id"
],
"additionalProperties": false
}
}delete_saved_projectSensitive Action
Deletes a saved layout from the project library.
View tool JSON
{
"name": "delete_saved_project",
"kind": "transact",
"impl": "imperative",
"description": "Deletes a saved layout from the project library.",
"inputSchema": {
"type": "object",
"properties": {
"project_name_or_id": {
"type": "string",
"description": "Name or ID of the project to delete"
}
},
"required": [
"project_name_or_id"
],
"additionalProperties": false
}
}