← 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

edit_floors

act imperative

Edit the site in one batch, in the order: create or rename buildings (structures); remove buildings and floors; update floors; build buildings (buildStructures); add floors; duplicate and move buildings; disconnect, updateConnections, connect and cores; activate. A site may hold several buildings (a warehouse, an office block, towers, a car park), each a group of floor areas; the ground around them and bridges between them belong to none. buildStructures puts up a building of empty storeys with its lift and stairs in one step, duplicateStructures copies one with its parts and inner connections, cores adds a lift or stairs through every storey. Scenario places can name a building: {"tag": "unit", "structure": "C", "pick": "random"}. Level 0 is the ground floor, 1 the next level up, negative levels are basements; floors on the same level sit side by side at x/z (building metres). Add an empty floor with width/depth, or copyFrom an existing floor to repeat its parts (typical floors). connect joins two floors with a passage (a corridor on one level, a ramp between levels), stairs, an elevator or an escalator given only kind, from and to: the ends are placed automatically across facing edges (between levels, a ramp, stairs or an escalator reaches back into the lower floor) or on elevator, stairs or escalator parts of stacked floors; pass fromAt/toAt (floor-local metres) only to override. get_space.building.connections reports each length, rise, slope and notes such as ramps steeper than 1:12. activate chooses the floor that get_space.scene, create_space, check_space and simulate_space act on, and edit_space when given no floor; new floors can be given an id to activate them in the same batch. simulate_space works on one floor at a time; run_process_scenario and check_space reach route agents across floors along connections. 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 no —
storyHeight number no —
add array no elevation (m, floor surface height in the building) defaults to level × storyHeight; height (m, floor-to-floor) defaults to storyHeight. structure puts the floor in one of the site's buildings: then it stands on that building's floor below (its elevation plus its height; under the lowest, a storey below it), as high as that floor, at its place and size and named for the building, unless given.
update array no null for elevation/height puts it back to the building default; structure moves the floor into one of the site's buildings, null takes it out of any.
remove array no —
copyContents array no Make existing floors' parts a copy of another floor's (same IDs, so later edits can list them together in edit_space.floors). Each target keeps its own outline, holes and connections; every part must fit on it. Runs after floors are added, copied and moved.
connect array no Connect two floors: passage (a corridor on one level, a ramp between levels), stairs, elevator or escalator. Leave fromAt/toAt out to place the ends automatically. direction (forward = from → to) defaults to both, escalators to forward; speed (m/s) defaults to the agent's own, escalators to 0.5; capacity (agents at once) defaults to unlimited, escalators to one per 0.4 m of length. Escalator defaults are reported as assumptions: the speed is EN 115-1's general value, the capacity an estimate with no source. An elevator with cars (1–8) runs lift cars on its shaft (the elevator connections stacked at that place): capacity is then people per car, speed the car's (1 m/s when left out), doorSeconds the doors opening plus closing at a stop (4 s) and dwellSeconds the doors held open (2 s); those defaults are estimates with no source, reported as assumptions. Without cars an elevator is ridden like a corridor, capacity agents at once. flowPerMinute lets that many agents start along it per minute, first come first (a ticket gate, a turnstile, a door or a stair, from a site count or a standard you name); those after wait at its entrance, counted as waiting for the connection. Not on a lift with cars.
updateConnections array no null for fromAt/toAt puts that end back to automatic; null for direction/speed/capacity puts it back to the default of the kind; null for flowPerMinute/cars/doorSeconds/dwellSeconds takes them off. A lift's cars, capacity, speed and stop times are read from its lowest connection that gives each: set them on every connection of the shaft (cores does).
disconnect array no —
structures array no Buildings on the site (a warehouse, an office block, a tower, a car park): create one by a new id, or rename/recolour an existing one (color 0xRRGGBB as a number; null: the theme's). A building groups floors for editing, display and scenario places; routes still follow connections.
buildStructures array no Put up a building of empty storeys over a footprint (x, z: its corner in site metres; width × depth), each storey a floor of that building (storeyHeight for all, or storeyHeights one by one). lift and stairs (site metres, on the footprint) run through every storey; stairs climb along z (or x) and turn back at each landing. Standing on a ground floor area (one of no building) at the same elevation, the footprint becomes a hole in it when it fits inside; it must not overlap another building. entrance connects it to that ground with a doorway; otherwise connect its entrance with a passage (connect places the ends of a building standing in the ground at the middle of its most open side).
duplicateStructures array no Copy a building dx, dz metres away: its floors with their parts and its own stairs, lifts and inner passages. Connections to the rest of the site are not copied.
moveStructures array no Move a building across the site (dx, dz) or raise it (dy), all its floors together.
removeStructures array no Take a building off the site: keep its floors (they belong to no building afterwards) or remove them with their connections.
cores array no A lift or stairs through every storey of a building at one place (site metres): one connection per pair of floors above one another. The lift's connections form one shaft. With cars (1–8), that many cars serve every storey: people call a car at their floor and wait for it (counted as waiting), share it up to capacity people and ride to their floor; doorSeconds (doors opening plus closing) and dwellSeconds (held open) are spent at every stop. Without cars, the lift is ridden floor by floor like a corridor, capacity agents on each connection at once. Stairs start at `at` and each flight runs rise × 11/7 m along z (or x): 4.7 m for a 3 m storey, 6.3 m for 4 m, so leave that much room on the footprint; the next flight turns back to `at`. Only the connections are made unless parts: true puts the lift car or the flights too; connection ends inside other parts in the way are reported by check_space (link_end_blocked).
activate string no —
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
    },
    "storyHeight": {
      "type": "number",
      "minimum": 2,
      "maximum": 12
    },
    "add": {
      "default": [],
      "description": "elevation (m, floor surface height in the building) defaults to level × storyHeight; height (m, floor-to-floor) defaults to storyHeight. structure puts the floor in one of the site's buildings: then it stands on that building's floor below (its elevation plus its height; under the lowest, a storey below it), as high as that floor, at its place and size and named for the building, unless given.",
      "maxItems": 20,
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "minLength": 1,
            "maxLength": 40
          },
          "name": {
            "type": "string",
            "minLength": 1,
            "maxLength": 80
          },
          "level": {
            "type": "integer",
            "minimum": -5,
            "maximum": 60
          },
          "x": {
            "type": "number",
            "minimum": 0,
            "maximum": 1000
          },
          "z": {
            "type": "number",
            "minimum": 0,
            "maximum": 1000
          },
          "width": {
            "type": "number",
            "minimum": 0.1,
            "maximum": 500
          },
          "depth": {
            "type": "number",
            "minimum": 0.1,
            "maximum": 500
          },
          "copyFrom": {
            "type": "string",
            "minLength": 1,
            "maxLength": 40
          },
          "elevation": {
            "type": "number",
            "minimum": -30,
            "maximum": 300
          },
          "height": {
            "type": "number",
            "minimum": 2,
            "maximum": 12
          },
          "structure": {
            "type": "string",
            "pattern": "^[A-Za-z0-9][A-Za-z0-9_-]{0,39}$"
          }
        },
        "required": [
          "level"
        ],
        "additionalProperties": false
      }
    },
    "update": {
      "default": [],
      "description": "null for elevation/height puts it back to the building default; structure moves the floor into one of the site's buildings, null takes it out of any.",
      "maxItems": 120,
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "minLength": 1,
            "maxLength": 40
          },
          "name": {
            "type": "string",
            "minLength": 1,
            "maxLength": 80
          },
          "level": {
            "type": "integer",
            "minimum": -5,
            "maximum": 60
          },
          "x": {
            "type": "number",
            "minimum": 0,
            "maximum": 1000
          },
          "z": {
            "type": "number",
            "minimum": 0,
            "maximum": 1000
          },
          "elevation": {
            "anyOf": [
              {
                "type": "number",
                "minimum": -30,
                "maximum": 300
              },
              {
                "type": "null"
              }
            ]
          },
          "height": {
            "anyOf": [
              {
                "type": "number",
                "minimum": 2,
                "maximum": 12
              },
              {
                "type": "null"
              }
            ]
          },
          "structure": {
            "anyOf": [
              {
                "type": "string",
                "pattern": "^[A-Za-z0-9][A-Za-z0-9_-]{0,39}$"
              },
              {
                "type": "null"
              }
            ]
          }
        },
        "required": [
          "id"
        ],
        "additionalProperties": false
      }
    },
    "remove": {
      "default": [],
      "maxItems": 120,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 40
      }
    },
    "copyContents": {
      "default": [],
      "description": "Make existing floors' parts a copy of another floor's (same IDs, so later edits can list them together in edit_space.floors). Each target keeps its own outline, holes and connections; every part must fit on it. Runs after floors are added, copied and moved.",
      "maxItems": 10,
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "from": {
            "type": "string",
            "minLength": 1,
            "maxLength": 40
          },
          "to": {
            "minItems": 1,
            "maxItems": 120,
            "type": "array",
            "items": {
              "type": "string",
              "minLength": 1,
              "maxLength": 40
            }
          }
        },
        "required": [
          "from",
          "to"
        ],
        "additionalProperties": false
      }
    },
    "connect": {
      "default": [],
      "description": "Connect two floors: passage (a corridor on one level, a ramp between levels), stairs, elevator or escalator. Leave fromAt/toAt out to place the ends automatically. direction (forward = from → to) defaults to both, escalators to forward; speed (m/s) defaults to the agent's own, escalators to 0.5; capacity (agents at once) defaults to unlimited, escalators to one per 0.4 m of length. Escalator defaults are reported as assumptions: the speed is EN 115-1's general value, the capacity an estimate with no source. An elevator with cars (1–8) runs lift cars on its shaft (the elevator connections stacked at that place): capacity is then people per car, speed the car's (1 m/s when left out), doorSeconds the doors opening plus closing at a stop (4 s) and dwellSeconds the doors held open (2 s); those defaults are estimates with no source, reported as assumptions. Without cars an elevator is ridden like a corridor, capacity agents at once. flowPerMinute lets that many agents start along it per minute, first come first (a ticket gate, a turnstile, a door or a stair, from a site count or a standard you name); those after wait at its entrance, counted as waiting for the connection. Not on a lift with cars.",
      "maxItems": 20,
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "minLength": 1,
            "maxLength": 40
          },
          "kind": {
            "type": "string",
            "enum": [
              "passage",
              "stairs",
              "elevator",
              "escalator"
            ]
          },
          "from": {
            "type": "string",
            "minLength": 1,
            "maxLength": 40
          },
          "to": {
            "type": "string",
            "minLength": 1,
            "maxLength": 40
          },
          "width": {
            "type": "number",
            "minimum": 0.5,
            "maximum": 20
          },
          "label": {
            "type": "string",
            "minLength": 1,
            "maxLength": 60
          },
          "fromAt": {
            "type": "object",
            "properties": {
              "x": {
                "type": "number",
                "minimum": 0,
                "maximum": 500
              },
              "z": {
                "type": "number",
                "minimum": 0,
                "maximum": 500
              }
            },
            "required": [
              "x",
              "z"
            ],
            "additionalProperties": false
          },
          "toAt": {
            "type": "object",
            "properties": {
              "x": {
                "type": "number",
                "minimum": 0,
                "maximum": 500
              },
              "z": {
                "type": "number",
                "minimum": 0,
                "maximum": 500
              }
            },
            "required": [
              "x",
              "z"
            ],
            "additionalProperties": false
          },
          "direction": {
            "type": "string",
            "enum": [
              "both",
              "forward",
              "backward"
            ]
          },
          "speed": {
            "type": "number",
            "minimum": 0.05,
            "maximum": 5
          },
          "capacity": {
            "type": "integer",
            "minimum": 1,
            "maximum": 1000
          },
          "flowPerMinute": {
            "type": "number",
            "minimum": 0.1,
            "maximum": 6000
          },
          "cars": {
            "type": "integer",
            "minimum": 1,
            "maximum": 8
          },
          "doorSeconds": {
            "type": "number",
            "minimum": 0,
            "maximum": 60
          },
          "dwellSeconds": {
            "type": "number",
            "minimum": 0,
            "maximum": 600
          }
        },
        "required": [
          "kind",
          "from",
          "to"
        ],
        "additionalProperties": false
      }
    },
    "updateConnections": {
      "default": [],
      "description": "null for fromAt/toAt puts that end back to automatic; null for direction/speed/capacity puts it back to the default of the kind; null for flowPerMinute/cars/doorSeconds/dwellSeconds takes them off. A lift's cars, capacity, speed and stop times are read from its lowest connection that gives each: set them on every connection of the shaft (cores does).",
      "maxItems": 400,
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "minLength": 1,
            "maxLength": 40
          },
          "kind": {
            "type": "string",
            "enum": [
              "passage",
              "stairs",
              "elevator",
              "escalator"
            ]
          },
          "width": {
            "type": "number",
            "minimum": 0.5,
            "maximum": 20
          },
          "label": {
            "anyOf": [
              {
                "type": "string",
                "minLength": 1,
                "maxLength": 60
              },
              {
                "type": "null"
              }
            ]
          },
          "fromAt": {
            "anyOf": [
              {
                "type": "object",
                "properties": {
                  "x": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 500
                  },
                  "z": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 500
                  }
                },
                "required": [
                  "x",
                  "z"
                ],
                "additionalProperties": false
              },
              {
                "type": "null"
              }
            ]
          },
          "toAt": {
            "anyOf": [
              {
                "type": "object",
                "properties": {
                  "x": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 500
                  },
                  "z": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 500
                  }
                },
                "required": [
                  "x",
                  "z"
                ],
                "additionalProperties": false
              },
              {
                "type": "null"
              }
            ]
          },
          "direction": {
            "anyOf": [
              {
                "type": "string",
                "enum": [
                  "both",
                  "forward",
                  "backward"
                ]
              },
              {
                "type": "null"
              }
            ]
          },
          "speed": {
            "anyOf": [
              {
                "type": "number",
                "minimum": 0.05,
                "maximum": 5
              },
              {
                "type": "null"
              }
            ]
          },
          "capacity": {
            "anyOf": [
              {
                "type": "integer",
                "minimum": 1,
                "maximum": 1000
              },
              {
                "type": "null"
              }
            ]
          },
          "flowPerMinute": {
            "anyOf": [
              {
                "type": "number",
                "minimum": 0.1,
                "maximum": 6000
              },
              {
                "type": "null"
              }
            ]
          },
          "cars": {
            "anyOf": [
              {
                "type": "integer",
                "minimum": 1,
                "maximum": 8
              },
              {
                "type": "null"
              }
            ]
          },
          "doorSeconds": {
            "anyOf": [
              {
                "type": "number",
                "minimum": 0,
                "maximum": 60
              },
              {
                "type": "null"
              }
            ]
          },
          "dwellSeconds": {
            "anyOf": [
              {
                "type": "number",
                "minimum": 0,
                "maximum": 600
              },
              {
                "type": "null"
              }
            ]
          }
        },
        "required": [
          "id"
        ],
        "additionalProperties": false
      }
    },
    "disconnect": {
      "default": [],
      "maxItems": 400,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 40
      }
    },
    "structures": {
      "default": [],
      "description": "Buildings on the site (a warehouse, an office block, a tower, a car park): create one by a new id, or rename/recolour an existing one (color 0xRRGGBB as a number; null: the theme's). A building groups floors for editing, display and scenario places; routes still follow connections.",
      "maxItems": 40,
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[A-Za-z0-9][A-Za-z0-9_-]{0,39}$"
          },
          "name": {
            "type": "string",
            "minLength": 1,
            "maxLength": 80
          },
          "color": {
            "anyOf": [
              {
                "type": "integer",
                "minimum": 0,
                "maximum": 16777215
              },
              {
                "type": "null"
              }
            ]
          }
        },
        "required": [
          "id"
        ],
        "additionalProperties": false
      }
    },
    "buildStructures": {
      "default": [],
      "description": "Put up a building of empty storeys over a footprint (x, z: its corner in site metres; width × depth), each storey a floor of that building (storeyHeight for all, or storeyHeights one by one). lift and stairs (site metres, on the footprint) run through every storey; stairs climb along z (or x) and turn back at each landing. Standing on a ground floor area (one of no building) at the same elevation, the footprint becomes a hole in it when it fits inside; it must not overlap another building. entrance connects it to that ground with a doorway; otherwise connect its entrance with a passage (connect places the ends of a building standing in the ground at the middle of its most open side).",
      "maxItems": 10,
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[A-Za-z0-9][A-Za-z0-9_-]{0,39}$"
          },
          "name": {
            "type": "string",
            "minLength": 1,
            "maxLength": 80
          },
          "color": {
            "type": "integer",
            "minimum": 0,
            "maximum": 16777215
          },
          "x": {
            "type": "number",
            "minimum": 0,
            "maximum": 1000
          },
          "z": {
            "type": "number",
            "minimum": 0,
            "maximum": 1000
          },
          "width": {
            "type": "number",
            "minimum": 0.1,
            "maximum": 500
          },
          "depth": {
            "type": "number",
            "minimum": 0.1,
            "maximum": 500
          },
          "storeys": {
            "type": "integer",
            "minimum": 1,
            "maximum": 120
          },
          "storeyHeight": {
            "type": "number",
            "minimum": 2,
            "maximum": 12
          },
          "storeyHeights": {
            "description": "Each storey's height from the lowest, one per storey (a cinema's 10 m hall under a 9 m one); overrides storeyHeight.",
            "minItems": 1,
            "maxItems": 120,
            "type": "array",
            "items": {
              "type": "number",
              "minimum": 2,
              "maximum": 12
            }
          },
          "level": {
            "type": "integer",
            "minimum": -5,
            "maximum": 60
          },
          "levels": {
            "description": "Each storey's level from the lowest, rising: put a storey on the level of the floor it bridges to (a cinema's upper floor at 10 m on the mall's L3). level, level+1, … when omitted.",
            "minItems": 1,
            "maxItems": 120,
            "type": "array",
            "items": {
              "type": "integer",
              "minimum": -5,
              "maximum": 60
            }
          },
          "elevation": {
            "type": "number",
            "minimum": -30,
            "maximum": 300
          },
          "lift": {
            "description": "Where its lift runs, site metres (on the footprint); cars, capacity (people per car), speed, doorSeconds and dwellSeconds as for cores; parts: true also puts a lift car part on every storey.",
            "type": "object",
            "properties": {
              "x": {
                "type": "number",
                "minimum": 0,
                "maximum": 1000
              },
              "z": {
                "type": "number",
                "minimum": 0,
                "maximum": 1000
              },
              "cars": {
                "type": "integer",
                "minimum": 1,
                "maximum": 8
              },
              "capacity": {
                "type": "integer",
                "minimum": 1,
                "maximum": 1000
              },
              "speed": {
                "type": "number",
                "minimum": 0.05,
                "maximum": 5
              },
              "doorSeconds": {
                "type": "number",
                "minimum": 0,
                "maximum": 60
              },
              "dwellSeconds": {
                "type": "number",
                "minimum": 0,
                "maximum": 600
              },
              "parts": {
                "type": "boolean"
              }
            },
            "required": [
              "x",
              "z"
            ],
            "additionalProperties": false
          },
          "stairs": {
            "description": "Where its stairs start, site metres: each flight runs rise × 11/7 m along z (or x) and the next turns back, so leave that much room on the footprint; parts: true also puts each flight as a stairs part.",
            "type": "object",
            "properties": {
              "x": {
                "type": "number",
                "minimum": 0,
                "maximum": 1000
              },
              "z": {
                "type": "number",
                "minimum": 0,
                "maximum": 1000
              },
              "along": {
                "type": "string",
                "enum": [
                  "x",
                  "z"
                ]
              },
              "parts": {
                "type": "boolean"
              }
            },
            "required": [
              "x",
              "z"
            ],
            "additionalProperties": false
          },
          "entrance": {
            "description": "Connect its lowest storey to the ground floor area it stands in (a floor of no building at the same elevation, which its footprint cuts a hole in) with a doorway: a passage of no length in the middle of side (south, north, east or west), else of the side with the most ground in front of it; width 2 m when left out.",
            "anyOf": [
              {
                "type": "boolean",
                "const": true
              },
              {
                "type": "object",
                "properties": {
                  "side": {
                    "type": "string",
                    "enum": [
                      "south",
                      "north",
                      "east",
                      "west"
                    ]
                  },
                  "width": {
                    "type": "number",
                    "minimum": 0.5,
                    "maximum": 20
                  }
                },
                "additionalProperties": false
              }
            ]
          }
        },
        "required": [
          "x",
          "z",
          "width",
          "depth",
          "storeys"
        ],
        "additionalProperties": false
      }
    },
    "duplicateStructures": {
      "default": [],
      "description": "Copy a building dx, dz metres away: its floors with their parts and its own stairs, lifts and inner passages. Connections to the rest of the site are not copied.",
      "maxItems": 10,
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[A-Za-z0-9][A-Za-z0-9_-]{0,39}$"
          },
          "newId": {
            "type": "string",
            "pattern": "^[A-Za-z0-9][A-Za-z0-9_-]{0,39}$"
          },
          "name": {
            "type": "string",
            "minLength": 1,
            "maxLength": 80
          },
          "color": {
            "type": "integer",
            "minimum": 0,
            "maximum": 16777215
          },
          "dx": {
            "type": "number",
            "minimum": -1000,
            "maximum": 1000
          },
          "dz": {
            "type": "number",
            "minimum": -1000,
            "maximum": 1000
          }
        },
        "required": [
          "id",
          "dx",
          "dz"
        ],
        "additionalProperties": false
      }
    },
    "moveStructures": {
      "default": [],
      "description": "Move a building across the site (dx, dz) or raise it (dy), all its floors together.",
      "maxItems": 40,
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[A-Za-z0-9][A-Za-z0-9_-]{0,39}$"
          },
          "dx": {
            "type": "number",
            "minimum": -1000,
            "maximum": 1000
          },
          "dz": {
            "type": "number",
            "minimum": -1000,
            "maximum": 1000
          },
          "dy": {
            "type": "number",
            "minimum": -100,
            "maximum": 100
          }
        },
        "required": [
          "id"
        ],
        "additionalProperties": false
      }
    },
    "removeStructures": {
      "default": [],
      "description": "Take a building off the site: keep its floors (they belong to no building afterwards) or remove them with their connections.",
      "maxItems": 40,
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[A-Za-z0-9][A-Za-z0-9_-]{0,39}$"
          },
          "floors": {
            "type": "string",
            "enum": [
              "keep",
              "remove"
            ]
          }
        },
        "required": [
          "id",
          "floors"
        ],
        "additionalProperties": false
      }
    },
    "cores": {
      "default": [],
      "description": "A lift or stairs through every storey of a building at one place (site metres): one connection per pair of floors above one another. The lift's connections form one shaft. With cars (1–8), that many cars serve every storey: people call a car at their floor and wait for it (counted as waiting), share it up to capacity people and ride to their floor; doorSeconds (doors opening plus closing) and dwellSeconds (held open) are spent at every stop. Without cars, the lift is ridden floor by floor like a corridor, capacity agents on each connection at once. Stairs start at `at` and each flight runs rise × 11/7 m along z (or x): 4.7 m for a 3 m storey, 6.3 m for 4 m, so leave that much room on the footprint; the next flight turns back to `at`. Only the connections are made unless parts: true puts the lift car or the flights too; connection ends inside other parts in the way are reported by check_space (link_end_blocked).",
      "maxItems": 10,
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "structure": {
            "type": "string",
            "pattern": "^[A-Za-z0-9][A-Za-z0-9_-]{0,39}$"
          },
          "kind": {
            "type": "string",
            "enum": [
              "elevator",
              "stairs"
            ]
          },
          "at": {
            "type": "object",
            "properties": {
              "x": {
                "type": "number",
                "minimum": 0,
                "maximum": 1000
              },
              "z": {
                "type": "number",
                "minimum": 0,
                "maximum": 1000
              }
            },
            "required": [
              "x",
              "z"
            ],
            "additionalProperties": false
          },
          "along": {
            "type": "string",
            "enum": [
              "x",
              "z"
            ]
          },
          "width": {
            "type": "number",
            "minimum": 0.5,
            "maximum": 20
          },
          "speed": {
            "type": "number",
            "minimum": 0.05,
            "maximum": 5
          },
          "capacity": {
            "type": "integer",
            "minimum": 1,
            "maximum": 1000
          },
          "cars": {
            "type": "integer",
            "minimum": 1,
            "maximum": 8
          },
          "doorSeconds": {
            "type": "number",
            "minimum": 0,
            "maximum": 60
          },
          "dwellSeconds": {
            "type": "number",
            "minimum": 0,
            "maximum": 600
          },
          "label": {
            "type": "string",
            "minLength": 1,
            "maxLength": 60
          },
          "parts": {
            "description": "Also put the parts people see: a lift car (elevator part) on every storey it serves, or on each storey the flight (stairs part) that climbs from it. A part id already on a floor is left as it is.",
            "type": "boolean"
          }
        },
        "required": [
          "structure",
          "kind",
          "at"
        ],
        "additionalProperties": false
      }
    },
    "activate": {
      "type": "string",
      "minLength": 1,
      "maxLength": 40
    },
    "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"
  ],
  "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