← WebMCP Directory

laydyne.com

laydyne.com

live Unverified (seed import) Productivity & Business 64 tools imperative implementation

Describe your space and workflow to AI. Build layouts, adapt process scenarios, and compare simulations through MCP or the built-in assistant.

First seen 2026-10-05 · Last seen 2026-10-05 · Source: webmcp.com

Answer 27 · Act 33 · Transact 4 · Score: Not yet scored

Tool inspector

create_space

act imperative

Replace the active floor with an editable 3D space; other floors of the building stay as they are, and so do the building’s name and the floor’s underlay. To start afresh in a tab that holds another project, give fresh: true (a new project of this one space; the chat stays). Neither fresh nor a plain replacement drops parts the user locked: the call is refused with code locked_parts, naming them and the ways on (export_project first, or create the space on a new floor area, or, only when the user asks, unlock them). Parts are boxes with a height (optionally turned by rotation, raised by y, or given a polygon footprint), not a mesh. Object IDs, labels and heights can be omitted. addArray places a prepared box or polygon part in a two-direction array without listing every cell. Robot settings/stations get illustrative defaults. Clears previous simulation results; Undo restores the previous space. Simulation requires an explicit simulation tool call within the account’s current access. No application AI API call.

Page: /studio

Input schema

PropertyTypeRequiredDescription
expectedRevision string yes Use revision from the most recent get_space or successful edit.
name string yes —
kind string no —
width number no Metres along x; taken from the outline when one is given.
depth number no Metres along z; taken from the outline when one is given.
outline array no The floor boundary as a simple polygon, corners in order (either winding), metres. Its bounding box becomes width × depth: it is moved to the origin, and parts and stations move with it. Parts are not clipped to it; check_space reports those outside it.
holes array no Openings in the floor (an atrium, a courtyard), each a simple polygon inside the outline, apart from each other. [] removes them.
task string no —
scaleConfirmed boolean no Ignored: only the user confirms dimensions, with the Measured box in the editor. A new or resized space is unconfirmed.
objects array no —
addArray array no —
fresh boolean no Start a new project with this space, named after it: the other floors, the underlays, scenarios, saved options and comparisons, the latest run and named views go (one Undo brings them back); the chat and the display settings stay. Without it only the active floor is replaced.
operationId string no Your own unique name for this change, such as a UUID; optional. Sending the same call again with the same operationId returns the earlier result (replayed: true) instead of applying it twice, and get_operation tells whether it applied. Use a new one for each new change.
requestGroupId string no Attach this live edit to an open request group. Requires a fixed operationId and the current owned expectedRevision. Only the advertised five editing tools support groups.
Raw JSON schema
{
  "type": "object",
  "properties": {
    "expectedRevision": {
      "type": "string",
      "minLength": 1,
      "maxLength": 80,
      "description": "Use revision from the most recent get_space or successful edit."
    },
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 80
    },
    "kind": {
      "default": "office",
      "type": "string",
      "enum": [
        "office",
        "facility",
        "home",
        "factory"
      ]
    },
    "width": {
      "description": "Metres along x; taken from the outline when one is given.",
      "type": "number",
      "minimum": 0.1,
      "maximum": 500
    },
    "depth": {
      "description": "Metres along z; taken from the outline when one is given.",
      "type": "number",
      "minimum": 0.1,
      "maximum": 500
    },
    "outline": {
      "minItems": 3,
      "maxItems": 64,
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "x": {
            "type": "number",
            "minimum": -500,
            "maximum": 500
          },
          "z": {
            "type": "number",
            "minimum": -500,
            "maximum": 500
          }
        },
        "required": [
          "x",
          "z"
        ],
        "additionalProperties": false
      },
      "description": "The floor boundary as a simple polygon, corners in order (either winding), metres. Its bounding box becomes width × depth: it is moved to the origin, and parts and stations move with it. Parts are not clipped to it; check_space reports those outside it."
    },
    "holes": {
      "maxItems": 32,
      "type": "array",
      "items": {
        "minItems": 3,
        "maxItems": 64,
        "type": "array",
        "items": {
          "type": "object",
          "properties": {
            "x": {
              "type": "number",
              "minimum": -500,
              "maximum": 500
            },
            "z": {
              "type": "number",
              "minimum": -500,
              "maximum": 500
            }
          },
          "required": [
            "x",
            "z"
          ],
          "additionalProperties": false
        }
      },
      "description": "Openings in the floor (an atrium, a courtyard), each a simple polygon inside the outline, apart from each other. [] removes them."
    },
    "task": {
      "default": "clean",
      "type": "string",
      "enum": [
        "clean",
        "transport"
      ]
    },
    "scaleConfirmed": {
      "default": false,
      "description": "Ignored: only the user confirms dimensions, with the Measured box in the editor. A new or resized space is unconfirmed.",
      "type": "boolean"
    },
    "objects": {
      "default": [],
      "maxItems": 1000,
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "kind": {
            "type": "string",
            "enum": [
              "wall",
              "column",
              "zone",
              "desk",
              "table",
              "chair",
              "sofa",
              "cabinet",
              "shelf",
              "display",
              "counter",
              "rack",
              "pallet",
              "machine",
              "booth",
              "stage",
              "bed",
              "plant",
              "block",
              "partition",
              "door",
              "window",
              "stairs",
              "elevator",
              "escalator",
              "round_table",
              "bookshelf",
              "locker",
              "whiteboard",
              "wardrobe",
              "kitchen",
              "fridge",
              "rug",
              "checkout",
              "fridge_case",
              "clothes_rack",
              "kiosk",
              "conveyor",
              "workbench",
              "roll_cage",
              "container",
              "tank",
              "forklift",
              "charger",
              "dock_door",
              "seating_row",
              "podium",
              "screen",
              "barrier",
              "building",
              "parking",
              "road",
              "sidewalk",
              "lawn",
              "tree",
              "car",
              "truck",
              "fence",
              "gate",
              "bench",
              "pole",
              "person",
              "toilet",
              "washbasin",
              "urinal",
              "atm",
              "pos_terminal",
              "coffee_machine",
              "oven",
              "dishwasher",
              "microwave",
              "stool",
              "parasol",
              "showcase",
              "menu_board",
              "planter",
              "sign",
              "shopping_cart",
              "cart_corral",
              "bicycle",
              "dock_shelter",
              "dock_leveler",
              "wheel_stop",
              "fire_extinguisher",
              "robot_arm",
              "mobile_robot",
              "pod",
              "sorter",
              "spiral_conveyor",
              "chute",
              "carton_erector",
              "aircraft",
              "jet_bridge",
              "baggage_carousel",
              "security_scanner",
              "metal_detector",
              "self_checkout",
              "platform_trolley",
              "crate_stack",
              "toilet_cubicle",
              "gable_roof",
              "barrel_roof",
              "solid"
            ]
          },
          "locked": {
            "type": "boolean"
          },
          "solid": {
            "type": "object",
            "properties": {
              "version": {
                "type": "number",
                "const": 1
              },
              "recipe": {
                "oneOf": [
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "const": "extrude"
                      },
                      "axis": {
                        "type": "string",
                        "enum": [
                          "x",
                          "y",
                          "z"
                        ]
                      },
                      "profile": {
                        "minItems": 3,
                        "maxItems": 32,
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "u": {
                              "type": "number",
                              "minimum": 0,
                              "maximum": 1
                            },
                            "v": {
                              "type": "number",
                              "minimum": 0,
                              "maximum": 1
                            }
                          },
                          "required": [
                            "u",
                            "v"
                          ],
                          "additionalProperties": false
                        }
                      }
                    },
                    "required": [
                      "type",
                      "axis",
                      "profile"
                    ],
                    "additionalProperties": false
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "const": "revolve"
                      },
                      "profile": {
                        "minItems": 3,
                        "maxItems": 32,
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "u": {
                              "type": "number",
                              "minimum": 0,
                              "maximum": 1
                            },
                            "v": {
                              "type": "number",
                              "minimum": 0,
                              "maximum": 1
                            }
                          },
                          "required": [
                            "u",
                            "v"
                          ],
                          "additionalProperties": false
                        }
                      },
                      "startDegrees": {
                        "type": "number",
                        "minimum": -180,
                        "maximum": 180
                      },
                      "sweepDegrees": {
                        "type": "number",
                        "minimum": 0.1,
                        "maximum": 360
                      }
                    },
                    "required": [
                      "type",
                      "profile",
                      "sweepDegrees"
                    ],
                    "additionalProperties": false
                  }
                ]
              },
              "rotation": {
                "type": "object",
                "properties": {
                  "x": {
                    "type": "number",
                    "minimum": -180,
                    "maximum": 180
                  },
                  "y": {
                    "type": "number",
                    "minimum": -180,
                    "maximum": 180
                  },
                  "z": {
                    "type": "number",
                    "minimum": -180,
                    "maximum": 180
                  }
                },
                "required": [
                  "x",
                  "y",
                  "z"
                ],
                "additionalProperties": false
              },
              "mirror": {
                "type": "object",
                "properties": {
                  "x": {
                    "type": "boolean"
                  },
                  "y": {
                    "type": "boolean"
                  },
                  "z": {
                    "type": "boolean"
                  }
                },
                "required": [
                  "x",
                  "y",
                  "z"
                ],
                "additionalProperties": false
              }
            },
            "required": [
              "version",
              "recipe"
            ],
            "additionalProperties": false,
            "description": "Closed editable solid v1. Profile u/v are 0..1: extrusion section (axis y: x/z, axis x: z/y, axis z: x/y); revolve radius/height. w/d/h are reference dimensions. Mirror around reference-box centre, then right-handed X→Y→Z degree rotations around that centre, then outer plan rotation and placement. Partial revolutions (0.1..359.9 degrees) have closed end caps; exactly 360 is a full turn. No holes. Curves use deterministic 64 segments/full turn. blocks:false explicitly marks decoration; unsupported blocking 3D geometry cannot be used as a routing proxy."
          },
          "rotation": {
            "description": "Degrees counter-clockwise on the plan about the centre of the box; 0 when omitted. x/z/w/d stay the unrotated box. A multiple of 90° is stored as the turned box (w/d swapped for a quarter turn) without rotation, the turn of a part with a front kept in facing.",
            "type": "number",
            "exclusiveMinimum": -180,
            "maximum": 180
          },
          "passageHeading": {
            "description": "Physical positive normal of a rectangular door/dock_door/gate in its canonical box frame, degrees (-180,180]; effective heading adds rotation. 0 toward +x, 90 toward -z. Permission is selected per agent by oneWayPassages.",
            "type": "number",
            "exclusiveMinimum": -180,
            "maximum": 180
          },
          "facing": {
            "description": "Which way a part with a front (catalog front: true, e.g. chairs, vehicles, stairs, toilets) faces within its box: the quarter or half turn, degrees counter-clockwise on the plan, that a rotation of 90°, 180° or -90° left; 0 when omitted: front toward +z (south); 90 toward +x (east), 180 or -180 toward -z (north), -90 or 270 toward -x (west). Set it to turn the front without moving the box; rotation, turn and rotate turn the front with the box. Display only; other kinds ignore it.",
            "type": "number",
            "enum": [
              -180,
              -90,
              0,
              90,
              180,
              270
            ]
          },
          "y": {
            "description": "Elevation of the underside above the floor, metres; 0 when omitted.",
            "type": "number",
            "minimum": 0,
            "maximum": 50
          },
          "footprint": {
            "description": "Polygon base as {x,z} vertices in the unrotated box (0..w, 0..d), 3-32, no self-crossing, spanning the whole box; the box when omitted.",
            "minItems": 3,
            "maxItems": 32,
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "x": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 500
                },
                "z": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 500
                }
              },
              "required": [
                "x",
                "z"
              ],
              "additionalProperties": false
            }
          },
          "blocks": {
            "description": "Whether the part blocks movement; overrides the kind default.",
            "type": "boolean"
          },
          "color": {
            "type": "integer",
            "minimum": 0,
            "maximum": 16777215
          },
          "material": {
            "type": "object",
            "properties": {
              "materialId": {
                "type": "string",
                "minLength": 1,
                "maxLength": 40,
                "pattern": "^[a-zA-Z0-9_-]+$"
              },
              "override": {
                "type": "object",
                "properties": {
                  "baseColor": {
                    "type": "integer",
                    "minimum": 0,
                    "maximum": 16777215
                  },
                  "roughness": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                  },
                  "metalness": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                  },
                  "opacity": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                  }
                },
                "additionalProperties": false
              }
            },
            "additionalProperties": false
          },
          "referenceIds": {
            "maxItems": 8,
            "type": "array",
            "items": {
              "type": "string",
              "minLength": 1,
              "maxLength": 40,
              "pattern": "^[a-zA-Z0-9_-]+$"
            }
          },
          "accent": {
            "description": "A second colour 0xRRGGBB for the members drawn apart: a rack's beams (its posts keep the structure colour), a sign's face, a door's leaf. Display only.",
            "type": "integer",
            "minimum": 0,
            "maximum": 16777215
          },
          "doorType": {
            "description": "How a door opens, for its plan symbol and 3D picture: hinged (one leaf, the default), double, sliding, automatic (two sliding leaves) or revolving. Doors and gates only; display only.",
            "type": "string",
            "enum": [
              "hinged",
              "double",
              "sliding",
              "automatic",
              "revolving"
            ]
          },
          "text": {
            "description": "Words shown on it: a sign or menu board carries them on its face, a floor marking (zone, parking, road, sidewalk, lawn, rug) painted on the floor. Display only.",
            "type": "string",
            "minLength": 1,
            "maxLength": 60
          },
          "symbol": {
            "description": "A symbol painted on a floor marking: arrow (along its length, turned with it), wheelchair (the accessible bay sign), crosswalk (zebra stripes across its length), bays (parking bay lines every 2.5 m along its length) or hatch (a no-go area). Floor markings only; display only.",
            "type": "string",
            "enum": [
              "arrow",
              "wheelchair",
              "crosswalk",
              "bays",
              "hatch"
            ]
          },
          "group": {
            "type": "string",
            "minLength": 1,
            "maxLength": 40
          },
          "tags": {
            "description": "Up to 8 tags, each /^[a-z0-9_-]{1,24}$/, for scenarios to refer to.",
            "maxItems": 8,
            "type": "array",
            "items": {
              "type": "string",
              "pattern": "^[a-z0-9_-]{1,24}$"
            }
          },
          "source": {
            "description": "Where its position and size come from: drawing (read off a plan), measured (on site) or assumed (a typical size, or hidden in the drawing). Display only: not part of any calculation.",
            "type": "string",
            "enum": [
              "drawing",
              "measured",
              "assumed"
            ]
          },
          "note": {
            "description": "A note for whoever checks the model (what was assumed, what to confirm on site), up to 300 characters; not drawn on the plan and not part of any calculation.",
            "type": "string",
            "minLength": 1,
            "maxLength": 300
          },
          "id": {
            "type": "string",
            "minLength": 1,
            "maxLength": 60
          },
          "label": {
            "type": "string",
            "minLength": 1,
            "maxLength": 60
          },
          "x": {
            "type": "number",
            "minimum": 0
          },
          "z": {
            "type": "number",
            "minimum": 0
          },
          "w": {
            "type": "number",
            "minimum": 0.02,
            "maximum": 500
          },
          "d": {
            "type": "number",
            "minimum": 0.02,
            "maximum": 500
          },
          "h": {
            "type": "number",
            "minimum": 0.01,
            "maximum": 50
          },
          "polygon": {
            "description": "Instead of x/z/w/d: the corners of the part on the floor, in order, metres (3-32, no self-crossing); x, z, w, d and the footprint are derived from them, unturned.",
            "minItems": 3,
            "maxItems": 32,
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "x": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 500
                },
                "z": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 500
                }
              },
              "required": [
                "x",
                "z"
              ],
              "additionalProperties": false
            }
          }
        },
        "required": [
          "kind"
        ],
        "additionalProperties": false,
        "description": "A prepared part. Give kind and the minimum x/z corner; omit w/d/h to use the part size listed in get_space.parts. Or give polygon (corners on the floor) instead of x/z/w/d for a part of any outline."
      }
    },
    "addArray": {
      "default": [],
      "maxItems": 20,
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "part": {
            "type": "object",
            "properties": {
              "kind": {
                "type": "string",
                "enum": [
                  "wall",
                  "column",
                  "zone",
                  "desk",
                  "table",
                  "chair",
                  "sofa",
                  "cabinet",
                  "shelf",
                  "display",
                  "counter",
                  "rack",
                  "pallet",
                  "machine",
                  "booth",
                  "stage",
                  "bed",
                  "plant",
                  "block",
                  "partition",
                  "door",
                  "window",
                  "stairs",
                  "elevator",
                  "escalator",
                  "round_table",
                  "bookshelf",
                  "locker",
                  "whiteboard",
                  "wardrobe",
                  "kitchen",
                  "fridge",
                  "rug",
                  "checkout",
                  "fridge_case",
                  "clothes_rack",
                  "kiosk",
                  "conveyor",
                  "workbench",
                  "roll_cage",
                  "container",
                  "tank",
                  "forklift",
                  "charger",
                  "dock_door",
                  "seating_row",
                  "podium",
                  "screen",
                  "barrier",
                  "building",
                  "parking",
                  "road",
                  "sidewalk",
                  "lawn",
                  "tree",
                  "car",
                  "truck",
                  "fence",
                  "gate",
                  "bench",
                  "pole",
                  "person",
                  "toilet",
                  "washbasin",
                  "urinal",
                  "atm",
                  "pos_terminal",
                  "coffee_machine",
                  "oven",
                  "dishwasher",
                  "microwave",
                  "stool",
                  "parasol",
                  "showcase",
                  "menu_board",
                  "planter",
                  "sign",
                  "shopping_cart",
                  "cart_corral",
                  "bicycle",
                  "dock_shelter",
                  "dock_leveler",
                  "wheel_stop",
                  "fire_extinguisher",
                  "robot_arm",
                  "mobile_robot",
                  "pod",
                  "sorter",
                  "spiral_conveyor",
                  "chute",
                  "carton_erector",
                  "aircraft",
                  "jet_bridge",
                  "baggage_carousel",
                  "security_scanner",
                  "metal_detector",
                  "self_checkout",
                  "platform_trolley",
                  "crate_stack",
                  "toilet_cubicle",
                  "gable_roof",
                  "barrel_roof",
                  "solid"
                ]
              },
              "locked": {
                "type": "boolean"
              },
              "solid": {
                "type": "object",
                "properties": {
                  "version": {
                    "type": "number",
                    "const": 1
                  },
                  "recipe": {
                    "oneOf": [
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "const": "extrude"
                          },
                          "axis": {
                            "type": "string",
                            "enum": [
                              "x",
                              "y",
                              "z"
                            ]
                          },
                          "profile": {
                            "minItems": 3,
                            "maxItems": 32,
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "u": {
                                  "type": "number",
                                  "minimum": 0,
                                  "maximum": 1
                                },
                                "v": {
                                  "type": "number",
                                  "minimum": 0,
                                  "maximum": 1
                                }
                              },
                              "required": [
                                "u",
                                "v"
                              ],
                              "additionalProperties": false
                            }
                          }
                        },
                        "required": [
                          "type",
                          "axis",
                          "profile"
                        ],
                        "additionalProperties": false
                      },
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "const": "revolve"
                          },
                          "profile": {
                            "minItems": 3,
                            "maxItems": 32,
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "u": {
                                  "type": "number",
                                  "minimum": 0,
                                  "maximum": 1
                                },
                                "v": {
                                  "type": "number",
                                  "minimum": 0,
                                  "maximum": 1
                                }
                              },
                              "required": [
                                "u",
                                "v"
                              ],
                              "additionalProperties": false
                            }
                          },
                          "startDegrees": {
                            "type": "number",
                            "minimum": -180,
                            "maximum": 180
                          },
                          "sweepDegrees": {
                            "type": "number",
                            "minimum": 0.1,
                            "maximum": 360
                          }
                        },
                        "required": [
                          "type",
                          "profile",
                          "sweepDegrees"
                        ],
                        "additionalProperties": false
                      }
                    ]
                  },
                  "rotation": {
                    "type": "object",
                    "properties": {
                      "x": {
                        "type": "number",
                        "minimum": -180,
                        "maximum": 180
                      },
                      "y": {
                        "type": "number",
                        "minimum": -180,
                        "maximum": 180
                      },
                      "z": {
                        "type": "number",
                        "minimum": -180,
                        "maximum": 180
                      }
                    },
                    "required": [
                      "x",
                      "y",
                      "z"
                    ],
                    "additionalProperties": false
                  },
                  "mirror": {
                    "type": "object",
                    "properties": {
                      "x": {
                        "type": "boolean"
                      },
                      "y": {
                        "type": "boolean"
                      },
                      "z": {
                        "type": "boolean"
                      }
                    },
                    "required": [
                      "x",
                      "y",
                      "z"
                    ],
                    "additionalProperties": false
                  }
                },
                "required": [
                  "version",
                  "recipe"
                ],
                "additionalProperties": false,
                "description": "Closed editable solid v1. Profile u/v are 0..1: extrusion section (axis y: x/z, axis x: z/y, axis z: x/y); revolve radius/height. w/d/h are reference dimensions. Mirror around reference-box centre, then right-handed X→Y→Z degree rotations around that centre, then outer plan rotation and placement. Partial revolutions (0.1..359.9 degrees) have closed end caps; exactly 360 is a full turn. No holes. Curves use deterministic 64 segments/full turn. blocks:false explicitly marks decoration; unsupported blocking 3D geometry cannot be used as a routing proxy."
              },
              "rotation": {
                "description": "Degrees counter-clockwise on the plan about the centre of the box; 0 when omitted. x/z/w/d stay the unrotated box. A multiple of 90° is stored as the turned box (w/d swapped for a quarter turn) without rotation, the turn of a part with a front kept in facing.",
                "type": "number",
                "exclusiveMinimum": -180,
                "maximum": 180
              },
              "passageHeading": {
                "description": "Physical positive normal of a rectangular door/dock_door/gate in its canonical box frame, degrees (-180,180]; effective heading adds rotation. 0 toward +x, 90 toward -z. Permission is selected per agent by oneWayPassages.",
                "type": "number",
                "exclusiveMinimum": -180,
                "maximum": 180
              },
              "facing": {
                "description": "Which way a part with a front (catalog front: true, e.g. chairs, vehicles, stairs, toilets) faces within its box: the quarter or half turn, degrees counter-clockwise on the plan, that a rotation of 90°, 180° or -90° left; 0 when omitted: front toward +z (south); 90 toward +x (east), 180 or -180 toward -z (north), -90 or 270 toward -x (west). Set it to turn the front without moving the box; rotation, turn and rotate turn the front with the box. Display only; other kinds ignore it.",
                "type": "number",
                "enum": [
                  -180,
                  -90,
                  0,
                  90,
                  180,
                  270
                ]
              },
              "y": {
                "description": "Elevation of the underside above the floor, metres; 0 when omitted.",
                "type": "number",
                "minimum": 0,
                "maximum": 50
              },
              "footprint": {
                "description": "Polygon base as {x,z} vertices in the unrotated box (0..w, 0..d), 3-32, no self-crossing, spanning the whole box; the box when omitted.",
                "minItems": 3,
                "maxItems": 32,
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "x": {
                      "type": "number",
                      "minimum": 0,
                      "maximum": 500
                    },
                    "z": {
                      "type": "number",
                      "minimum": 0,
                      "maximum": 500
                    }
                  },
                  "required": [
                    "x",
                    "z"
                  ],
                  "additionalProperties": false
                }
              },
              "blocks": {
                "description": "Whether the part blocks movement; overrides the kind default.",
                "type": "boolean"
              },
              "color": {
                "type": "integer",
                "minimum": 0,
                "maximum": 16777215
              },
              "material": {
                "type": "object",
                "properties": {
                  "materialId": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 40,
                    "pattern": "^[a-zA-Z0-9_-]+$"
                  },
                  "override": {
                    "type": "object",
                    "properties": {
                      "baseColor": {
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 16777215
                      },
                      "roughness": {
                        "type": "number",
                        "minimum": 0,
                        "maximum": 1
                      },
                      "metalness": {
                        "type": "number",
                        "minimum": 0,
                        "maximum": 1
                      },
                      "opacity": {
                        "type": "number",
                        "minimum": 0,
                        "maximum": 1
                      }
                    },
                    "additionalProperties": false
                  }
                },
                "additionalProperties": false
              },
              "referenceIds": {
                "maxItems": 8,
                "type": "array",
                "items": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 40,
                  "pattern": "^[a-zA-Z0-9_-]+$"
                }
              },
              "accent": {
                "description": "A second colour 0xRRGGBB for the members drawn apart: a rack's beams (its posts keep the structure colour), a sign's face, a door's leaf. Display only.",
                "type": "integer",
                "minimum": 0,
                "maximum": 16777215
              },
              "doorType": {
                "description": "How a door opens, for its plan symbol and 3D picture: hinged (one leaf, the default), double, sliding, automatic (two sliding leaves) or revolving. Doors and gates only; display only.",
                "type": "string",
                "enum": [
                  "hinged",
                  "double",
                  "sliding",
                  "automatic",
                  "revolving"
                ]
              },
              "text": {
                "description": "Words shown on it: a sign or menu board carries them on its face, a floor marking (zone, parking, road, sidewalk, lawn, rug) painted on the floor. Display only.",
                "type": "string",
                "minLength": 1,
                "maxLength": 60
              },
              "symbol": {
                "description": "A symbol painted on a floor marking: arrow (along its length, turned with it), wheelchair (the accessible bay sign), crosswalk (zebra stripes across its length), bays (parking bay lines every 2.5 m along its length) or hatch (a no-go area). Floor markings only; display only.",
                "type": "string",
                "enum": [
                  "arrow",
                  "wheelchair",
                  "crosswalk",
                  "bays",
                  "hatch"
                ]
              },
              "group": {
                "type": "string",
                "minLength": 1,
                "maxLength": 40
              },
              "tags": {
                "description": "Up to 8 tags, each /^[a-z0-9_-]{1,24}$/, for scenarios to refer to.",
                "maxItems": 8,
                "type": "array",
                "items": {
                  "type": "string",
                  "pattern": "^[a-z0-9_-]{1,24}$"
                }
              },
              "source": {
                "description": "Where its position and size come from: drawing (read off a plan), measured (on site) or assumed (a typical size, or hidden in the drawing). Display only: not part of any calculation.",
                "type": "string",
                "enum": [
                  "drawing",
                  "measured",
                  "assumed"
                ]
              },
              "note": {
                "description": "A note for whoever checks the model (what was assumed, what to confirm on site), up to 300 characters; not drawn on the plan and not part of any calculation.",
                "type": "string",
                "minLength": 1,
                "maxLength": 300
              },
              "id": {
                "type": "string",
                "minLength": 1,
                "maxLength": 60
              },
              "label": {
                "type": "string",
                "minLength": 1,
                "maxLength": 60
              },
              "x": {
                "type": "number",
                "minimum": 0
              },
              "z": {
                "type": "number",
                "minimum": 0
              },
              "w": {
                "type": "number",
                "minimum": 0.02,
                "maximum": 500
              },
              "d": {
                "type": "number",
                "minimum": 0.02,
                "maximum": 500
              },
              "h": {
                "type": "number",
                "minimum": 0.01,
                "maximum": 50
              },
              "polygon": {
                "description": "Instead of x/z/w/d: the corners of the part on the floor, in order, metres (3-32, no self-crossing); x, z, w, d and the footprint are derived from them, unturned.",
                "minItems": 3,
                "maxItems": 32,
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "x": {
                      "type": "number",
                      "minimum": 0,
                      "maximum": 500
                    },
                    "z": {
                      "type": "number",
                      "minimum": 0,
                      "maximum": 500
                    }
                  },
                  "required": [
                    "x",
                    "z"
                  ],
                  "additionalProperties": false
                }
              }
            },
            "required": [
              "kind"
            ],
            "additionalProperties": false,
            "description": "The part to repeat. Omit part.id: each cell needs a distinct ID. Set idPrefix on the array to choose stable IDs. Give x/z or polygon as for an ordinary part."
          },
          "rows": {
            "type": "integer",
            "minimum": 1,
            "maximum": 50
          },
          "columns": {
            "type": "integer",
            "minimum": 1,
            "maximum": 50
          },
          "rowStep": {
            "type": "object",
            "properties": {
              "dx": {
                "type": "number",
                "minimum": -500,
                "maximum": 500
              },
              "dz": {
                "type": "number",
                "minimum": -500,
                "maximum": 500
              }
            },
            "required": [
              "dx",
              "dz"
            ],
            "additionalProperties": false,
            "description": "Metres from one row or column to the next; diagonal steps are allowed."
          },
          "columnStep": {
            "type": "object",
            "properties": {
              "dx": {
                "type": "number",
                "minimum": -500,
                "maximum": 500
              },
              "dz": {
                "type": "number",
                "minimum": -500,
                "maximum": 500
              }
            },
            "required": [
              "dx",
              "dz"
            ],
            "additionalProperties": false,
            "description": "Metres from one row or column to the next; diagonal steps are allowed."
          },
          "idPrefix": {
            "description": "IDs of the cells, row by row: prefix-1, prefix-2, …; generated when omitted.",
            "type": "string",
            "minLength": 1,
            "maxLength": 50,
            "pattern": "^[A-Za-z0-9_-]+$"
          }
        },
        "required": [
          "part",
          "rows",
          "columns",
          "rowStep",
          "columnStep"
        ],
        "additionalProperties": false,
        "description": "Place a part at every row/column offset from part.x/z (or shift every corner of part.polygon). The first cell is at the supplied position; rows and columns include it. IDs are generated, or idPrefix-1, idPrefix-2, … row by row. In part.label, {n} becomes the cell number and {row}/{column} its row and column (from 1): \"Shelf {n}\", \"Seat {row}-{column}\"."
      }
    },
    "fresh": {
      "default": false,
      "description": "Start a new project with this space, named after it: the other floors, the underlays, scenarios, saved options and comparisons, the latest run and named views go (one Undo brings them back); the chat and the display settings stay. Without it only the active floor is replaced.",
      "type": "boolean"
    },
    "operationId": {
      "type": "string",
      "pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,99}$",
      "description": "Your own unique name for this change, such as a UUID; optional. Sending the same call again with the same operationId returns the earlier result (replayed: true) instead of applying it twice, and get_operation tells whether it applied. Use a new one for each new change."
    },
    "requestGroupId": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100,
      "description": "Attach this live edit to an open request group. Requires a fixed operationId and the current owned expectedRevision. Only the advertised five editing tools support groups."
    }
  },
  "required": [
    "expectedRevision",
    "name"
  ],
  "additionalProperties": false
}

Similar websites

eworker.ca

eworker.ca

E-Worker is business infrastructure powered by AI, with focused apps and connected business work.

live Unverified Productivity & Business
73 tools A10 / Act63 / T0 Not yet scored Seen 2026-10-05
eworker_site_status eworker_list_apps eworker_resolve_app eworker_open_app ewdoc_status
Inspect tools
takemeup.cv

takemeup.cv

Free CV builder: make a polished, ATS-friendly CV in minutes. No watermarks, no sign-up. Import from LinkedIn, tailor to any job, export PDF.

live Unverified Productivity & Business Transact tools
41 tools A15 / Act25 / T1 Not yet scored Seen 2026-10-05
list_takemeup_guides search_takemeup_guides get_takemeup_guide list_takemeup_cv_templates get_takemeup_locale_cv_rules
Inspect tools
urban-planning-copilot.heisenbug.in

urban-planning-copilot.heisenbug.in

Urban Planning Copilot

demo Unverified Productivity & Business
37 tools A10 / Act27 / T0 Not yet scored Seen 2026-10-05
get_workspace get_analysis_plan list_candidates inspect_candidate list_shortlist
Inspect tools
vide.zerdalu.com

vide.zerdalu.com

Vide

live Unverified Productivity & Business Transact tools
28 tools A13 / Act14 / T1 Not yet scored Seen 2026-10-05
list_project_files read_project_file write_project_file delete_project_file get_active_script
Inspect tools

Related on Influzer