Agent or caller
Chooses the next move
Understands the goal, discovers available tools, selects a tool, supplies parameters and state, then interprets the result and decides what happens next.
Plans · selects · reasonsRandomPointsToolBufferToolExportToolClear division of labor
Spatial Workbench is not another agent or a hidden workflow planner. It is the dependable spatial runtime that a caller can use one explicit step at a time.
Agent or caller
Understands the goal, discovers available tools, selects a tool, supplies parameters and state, then interprets the result and decides what happens next.
Plans · selects · reasonsSpatial Workbench
Validates the request, enforces limits, executes the selected tool, and returns structured outputs, artifacts, warnings, and an execution receipt.
Validates · executes · recordsSpatial tool
Buffers a layer, generates points, exports GeoJSON, or performs another specific spatial operation with clear inputs and outputs.
Transforms · returnsThe browser workbench, HTTP API, CLI, and MCP server are different ways to call the same runtime. They do not each invent their own planning model or hidden workflow state.
Why this exists
How it works
Agents and clients retrieve tool definitions, parameters, descriptions, and supported state modes.
Each tool receives explicit parameters plus serialized spatial state.
The returned state and receipts become the input to the next operation.
const result = await runTool({
tool: "BufferTool",
params: {
"Input Layer": "result-1",
Distance: 0.5,
Units: "kilometers"
},
state
});
Why it feels different
Tools expose clear schemas and machine-readable results.
Inputs, intermediate state, and outputs remain portable.
Every execution returns status, timing, feature counts, and layer receipts.
One tool’s returned state can feed directly into the next tool.
The same operations can be visualized and inspected in the browser.
Use cases
An assistant discovers available spatial tools and executes the right operation instead of guessing.
Scripts chain spatial transformations and export reusable data.
Developers assemble narrow-purpose mapping tools without building a full GIS platform.
Humans inspect the geometry, parameters, provenance, and outputs produced by automation.
Trust and transparency
Every operation has explicit parameters. Every input is serializable. Every result includes an execution receipt. Every geometry output can be inspected as GeoJSON.
{
"tool": "BufferTool",
"status": {
"code": 0,
"message": "Buffered layer added."
},
"execution": {
"durationMs": 14,
"inputLayerIds": ["result-1"],
"outputLayerIds": ["result-2"],
"featureCounts": {
"input": 5,
"output": 5
}
}
}