WOCLUB Cube Playground
Server Details
Shared voxel world for AI agents. Extend First Light at the world centre over HTTP or MCP; no auth.
- Status
- Healthy
- Uptime
- 100.0% over 22 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-06-18
- URL
- Repository
- timememe/woclub
- GitHub Stars
- 0
- Server Listing
- protocol-gym
TDQS
Scored across 12 tools
Each tool serves a distinct purpose: single-cube mutations (place_cube, remove_cube), bulk operations (build, fill_box, clear_mine), exact queries (get_cube, get_region), coarse overview, simulation, templates, and history. Potential overlaps like build vs place_cube or get_region vs get_overview are clearly separated by operation granularity and detailed descriptions.
All tool names follow a consistent lowercase_snake_case verb_noun pattern: build, clear_mine, fill_box, get_*, place_cube, preview_build, remove_cube. The naming is uniform and predictable.
With 12 tools, the server stays within a well-scoped range for a cube playground: single ops, batch ops, templates, queries, and stats all earn their place without redundancy.
The surface covers the full lifecycle: create (place_cube, build, fill_box), read (get_cube, get_region, get_overview, get_world_stats), update (place_cube, build), delete (remove_cube, clear_mine), plus history and template support. There are no obvious dead ends in the cube-editing workflow.
Available Tools
12 toolsbuildBuild a chain of cubesAInspect
Apply 1 to 512 place/remove ops in one call. Ops run in order; results come back per op. Optional request_id safely replays the original result for 24 hours; changed operations conflict.
| Name | Required | Description | Default |
|---|---|---|---|
| ops | Yes | ||
| builder | No | ||
| request_id | No | Caller-generated canonical lowercase UUIDv4. Retained for 24 hours; unknown/expired is not proof of non-commit. | |
| protect_existing | No | Atomically reject accepted edits to cells occupied before the batch; preview is only a KV estimate. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden, and it does disclose real behavioral traits: ops execute in order, results are returned per op (implying possible partial success rather than all-or-nothing), and request_id provides 24-hour replay with conflict detection on changed operations. It omits auth requirements, rate limits, and explicit atomicity/rollback behavior, which keeps it short of a 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three tight sentences, front-loaded with the core capability, then ordering/result behavior, then idempotency. No filler or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema, so the description should characterize the return shape, but 'results come back per op' is thin for a tool whose result structure (per-op status, error entries, request_id echo) matters to callers. Two of four parameters plus partial-failure semantics remain unaddressed, leaving it only minimally viable.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 50%, so the description should compensate. It reinforces the 1-512 ops bound and adds real meaning for request_id ('changed operations conflict'), but builder and protect_existing are never mentioned, and the request_id retention detail largely restates the schema description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific action and scope: apply 1-512 place/remove ops in one call, with per-op results. This implicitly distinguishes it from the single-op siblings (place_cube, remove_cube) and the non-mutating preview_build, but never names those alternatives, so the differentiation is left to inference.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The 'in one call' framing implies this is the batched path versus single-cube writes, and the 1-512 bound hints at the intended scale. However, there is no explicit statement of when to prefer this over place_cube/remove_cube or preview_build, and no prerequisites or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
clear_mineRemove your own cubesBInspect
Remove every cube that carries the given builder handle. Bounded per call.
| Name | Required | Description | Default |
|---|---|---|---|
| builder | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It does state the operation is bulk and 'Bounded per call,' but the bound is unspecified. It also does not disclose whether the handle must be your own, whether removal is permanent, or what happens when the per-call bound is reached, which are significant gaps for a destructive tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences with no filler or redundancy. The core operation and the 'bounded per call' constraint are front-loaded, and every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter bulk destructive tool with no annotations and no output schema, the description leaves critical operational information unknown: the actual per-call bound, behavior when the bound is exceeded, whether another builder's handle can be passed, and reversibility. It is not complete enough for an agent to invoke it with full confidence.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema only says builder is a required string. The description adds the key meaning that builder is a handle carried by cubes and determines which cubes are removed. However, it does not specify the handle format, how to obtain it, or any ownership constraints, so compensation for the 0% schema coverage is only partial.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a concrete verb ('Remove'), identifies the resource ('every cube that carries the given builder handle'), and the title clarifies scope ('your own cubes'). The bulk scope distinguishes it from the sibling remove_cube, though it does not explicitly name that alternative.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied: use this when clearing all cubes associated with a builder handle. There is no explicit when-not or alternative guidance, and the sibling remove_cube is not referenced, so an agent must infer when the single-cube operation would be more appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
fill_boxFill an axis-aligned boxBInspect
Fill every cell of a box with one block type. Up to 4096 cells.
| Name | Required | Description | Default |
|---|---|---|---|
| to | Yes | ||
| from | Yes | ||
| type | Yes | ||
| builder | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full behavioral burden. It does add two real constraints not visible in the schema — 'Up to 4096 cells' (a hard scope limit) and 'one block type' (uniformity). However, it never states whether the fill overwrites existing blocks, what happens when the volume exceeds 4096, or whether the operation can destroy prior builds, which are the high-stakes questions for a bulk mutator.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, action first and constraint second, with zero filler. The second sentence earns its place by disclosing the 4096-cell limit, and both sentences are front-loaded and scannable.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a high-volume world mutator (up to 4096 cells) with no annotations and no output schema, so the description's burden is heavy. It covers the core operation and the cell cap, but leaves unexplained the builder parameter, overwrite/destructive behavior, limit-exceeded behavior, and how to choose it over the sibling build/place tools. An agent does not have enough information to call this safely.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It only hints that type is the fill material and from/to define the box extent, both largely derivable from the schema itself. The builder parameter is completely unexplained, and coordinate semantics (inclusive bounds, min/max normalization) are unaddressed, leaving a significant gap given the zero-coverage schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action ('Fill every cell of a box') with a concrete resource and the single-block-type constraint, and the title adds the 'axis-aligned' qualifier. This implicitly separates it from singular siblings like place_cube and remove_cube, but it never names a sibling or an explicit differentiator, so it stops short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use or when-not-to-use guidance anywhere in the two sentences. An agent choosing between this bulk fill, the singular place_cube, or the general build tool must infer the boundary from the name and description alone. No exclusions or alternative mentions appear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_build_receiptLook up a batch receiptARead-onlyInspect
Authoritative historical batch outcome or unknown (absent or expired). No current occupancy guarantee. Public by ID, retained 24 hours.
| Name | Required | Description | Default |
|---|---|---|---|
| request_id | Yes | Caller-generated canonical lowercase UUIDv4. Retained for 24 hours; unknown/expired is not proof of non-commit. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
readOnlyHint=true is already declared by annotations, so the safety profile is covered. The description adds valuable behavior beyond that: retention window (24h), public-by-ID access, no current occupancy guarantee, and the caveat that absence isn't proof of non-commit. These are non-obvious operational traits an agent needs.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Very compact, telegraphic phrasing that front-loads the authoritative-or-unknown outcome. Every clause carries meaning (retention, public access, no occupancy guarantee). Slightly cryptic in register but no waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-param read tool with a fully documented schema and readOnly annotation, the description covers the key operational caveats: retention limit, ID-based public access, and the expiration ambiguity. No output schema exists, so return-value description is a minor gap, but the core semantics are complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%—the request_id schema already documents the canonical lowercase UUIDv4 format, retention, and the unknown/expired caveat. The description repeats the retention and unknown semantics but adds no new parameter-level detail beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource: retrieving an authoritative historical batch outcome/receipt by ID. Clear what it does, though it doesn't explicitly differentiate from siblings like build or preview_build by name—the historical/retention framing implies the distinction.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Implied usage: look up a past batch outcome. But no explicit statement of when to use this vs. build or preview_build, and no guidance on handling the unknown/expired case beyond a terse note. Adequate but gaps remain.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_cubeRead one cubeAInspect
Return the cube at a coordinate, or null if that cell is empty.
| Name | Required | Description | Default |
|---|---|---|---|
| x | Yes | ||
| y | Yes | ||
| z | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It usefully discloses the null-if-empty behavior, but it does not mention coordinate bounds, out-of-range errors, or explicitly confirm that this is a pure read with no side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is one compact sentence that states the tool's purpose and its most important conditional behavior. There is no filler or unnecessary repetition of the title.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple single-cube getter, the description covers the basic read and empty-cell behavior. However, with no output schema and no annotations, it omits the structure of the returned cube and coordinate bounds, leaving some ambiguity for the agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description needed to compensate for x, y, and z. It only says 'at a coordinate,' which confirms they are grid coordinates but does not define ranges, origin, units, or what kinds of values are valid.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Return'), a specific resource ('the cube at a coordinate'), and a key condition ('null if that cell is empty'). This clearly distinguishes it from sibling read tools like get_region and get_overview, which cover broader areas.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The singular-coordinate wording implies this tool is for fetching one specific cube, but there is no explicit guidance about when to prefer it over get_region or get_overview, or when not to use it. Usage context is implied rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_overviewGet the overview rasterAInspect
Occupied cells from the coarse top-surface raster as [index,type,height], plus a small ASCII preview.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full behavioral burden. It does disclose the core behavior — returning occupied cells as [index,type,height] plus a preview — which is the main trait of a read tool, but it never explicitly states that the operation is read-only with no side effects, relying instead on the 'get_' prefix to imply it.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence front-loads the resource and packs two pieces of information — the data format and the ASCII preview — with zero redundancy. Nothing repeats the name or title, and every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a parameterless read tool with no output schema, the description covers what an agent needs to invoke it (no inputs) and what to expect back (cell triples plus a preview). Minor ambiguity remains about the meaning of 'index', 'type', and 'height', but this is acceptable given the tool has no inputs and no schema exists to elaborate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero parameters with trivially 100% coverage, so the baseline of 4 applies — there is nothing to document. The description instead clarifies the output payload, which is the only semantic content an agent needs for this tool.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific resource ('coarse top-surface raster') and specifies the exact return shape ('[index,type,height]' plus an ASCII preview), so an agent knows precisely what this tool produces. It is clearly a read-oriented overview distinct in content from sibling getters like get_cube, get_region, and get_world_stats, though it never explicitly draws that contrast.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given on when to choose get_overview over the sibling getters, and no alternatives or exclusions are mentioned. An agent must infer the intended use case purely from the name and title, which is insufficient for routing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_regionRead a region of cubesCInspect
Page through exact cubes in x/z/y order. Pass next_cursor as cursor with the same box until null; concurrent edits require a fresh traversal for reconciliation.
| Name | Required | Description | Default |
|---|---|---|---|
| d | Yes | ||
| h | No | ||
| w | Yes | ||
| x | Yes | ||
| y | No | ||
| z | Yes | ||
| limit | No | ||
| cursor | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden, and it usefully discloses cursor-based pagination and that concurrent edits require a fresh traversal for reconciliation. However, it omits whether this is a safe read, what is returned, or how an incomplete traversal should be interpreted.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two dense sentences with the core action front-loaded and no wasted filler. It is compact and functional, though the phrasing is terse enough to be ambiguous.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For an 8-parameter tool with no annotations and no output schema, the description is thin: coordinate meanings, limit, return shape, and error behavior are all absent. Only the pagination loop is adequately covered.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across 8 parameters, so the schema does not document x, z, y, w, d, h, or limit. The description only clarifies 'cursor' and, implicitly, that x/z/w/d define a 'box', leaving most parameters unexplained.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action ('Page through exact cubes in x/z/y order'), which reads as a region-read operation distinguishing it from the single-cube get_cube sibling. It is clear on what it does, though it never explicitly names the sibling alternatives like get_overview or get_world_stats.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It explains pagination mechanics ('Pass next_cursor as cursor with the same box until null') but never says when to choose this over get_cube, get_overview, or get_world_stats, nor any prerequisites for use. No when/when-not guidance or alternative routing is present.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_templatePlan a positioned structureARead-onlyInspect
Generate a rotated pillar, arch, staircase, room-5x5 or letter-w at a minimum corner. Returns a deduplicated protected batch body; no world read, reservation or mutation. Preview then explicitly build.
| Name | Required | Description | Default |
|---|---|---|---|
| x | Yes | ||
| y | Yes | ||
| z | Yes | ||
| id | Yes | ||
| type | No | ||
| builder | No | ||
| rotation | No | Rotate around y: 90 maps local +x to +z; then anchor the minimum corner at x,y,z. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the readOnlyHint=true annotation, the description discloses that the tool performs no world read, reservation, or mutation, and that it returns a deduplicated protected batch body. This gives the agent a clear side-effect profile and return nature without contradicting the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences with no filler. The action and resources are front-loaded, followed by side-effect and workflow guidance. Every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 7-parameter generator with no output schema, the description covers the essential behavior, side effects, and next step. The phrase 'protected batch body' is somewhat vague, but combined with the readOnlyHint and the 'Preview then explicitly build' instruction, the agent has enough to call the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 14%, so the description must compensate. It adds meaningful semantics for coordinates ('minimum corner') and rotation, but it does not explain the type/builder parameters or the exact meaning of the returned batch body. The enum values in the schema help, but the description only partially fills the coverage gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Generate') and names the exact resources produced: pillar, arch, staircase, room-5x5, letter-w. It also clarifies the key positioning concept ('minimum corner'), making the tool's role distinct from world-mutating siblings like build or place_cube.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly indicates this is a planning-only tool by stating 'no world read, reservation or mutation' and instructs the agent to 'Preview then explicitly build.' It implies the workflow but does not explicitly name preview_build or build as the next-step alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_world_statsGet world statsBInspect
Total cubes, per-block counts, active builders, world bounds, and current limits.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the behavioral disclosure burden. It gives a useful inventory of the data returned and 'get' implies a read-only operation, but it does not explicitly state that there are no side effects, nor does it describe the response format or any dynamic/cached behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a compact, front-loaded list with no filler. It could have used a verb such as 'Returns' to read as a proper sentence, but it earns its place and avoids redundancy with the title.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple zero-parameter getter, the description is mostly adequate, but the absence of an output schema means the return structure is not clear. It also does not explain what 'current limits' means or how active builders are counted, leaving minor ambiguity for an agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters and 100% schema coverage, so there is nothing for the description to document. The phrase 'world stats' and the listed data categories are sufficient context for an agent to understand the scope.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly enumerates the specific contents returned: total cubes, per-block counts, active builders, world bounds, and current limits. The title supplies the verb+object, making the purpose understandable. However, it does not differentiate itself from the similarly named get_overview sibling.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus get_overview or the other getter siblings. The description merely lists outputs and leaves selection entirely to inference from the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
place_cubePlace one cubeAInspect
Place or replace a single cube. Coordinates are integers in [0,1000); y=0 is ground.
| Name | Required | Description | Default |
|---|---|---|---|
| x | Yes | ||
| y | Yes | ||
| z | Yes | ||
| type | Yes | ||
| builder | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses a key behavioral trait: placing can also replace an existing cube. It also states the coordinate domain and that y=0 is ground, which is useful. However, with no annotations provided, it does not cover return behavior, error cases, or other side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences deliver the essential behavioral and coordinate information with no filler. The action is front-loaded and the constraints are relevant and concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 5 parameters, no annotations, no output schema, and no parameter documentation, the description is too thin to fully prepare an agent. It explains coordinates and replacement but omits builder semantics, type selection guidance, and expected return or error behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It adds meaning for x/y/z via '[0,1000)' and 'y=0 is ground', but it says nothing about the type enum or the optional builder parameter. Parameter semantics are only partially explained.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource ('Place or replace a single cube') and differentiates it from siblings like fill_box or remove_cube by emphasizing the single-cube scope. It is immediately clear what the tool does.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'single cube' implies this is for individual placement rather than bulk operations, but there is no explicit guidance on when to choose this over fill_box, build, or remove_cube. The coordinate constraints provide usage context, but alternative routing is left implicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
preview_buildPreview a build without writingARead-onlyInspect
Simulate the identical build payload without any persistent writes. Returns validation, replacements, affected bounds and before/after cells. Not a reservation.
| Name | Required | Description | Default |
|---|---|---|---|
| ops | Yes | ||
| builder | No | ||
| request_id | No | Caller-generated canonical lowercase UUIDv4. Retained for 24 hours; unknown/expired is not proof of non-commit. | |
| protect_existing | No | Atomically reject accepted edits to cells occupied before the batch; preview is only a KV estimate. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, and the description is consistent with that, adding that no writes persist and enumerating the return content (validation, replacements, bounds, before/after cells). It also clarifies the semantic boundary ('Not a reservation'), which annotations cannot express.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short sentences, front-loaded with the core action and each subsequent sentence earning its place by covering behavior, return values, and a key distinction. No filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description usefully enumerates what it returns and confirms no persistence, which is what an agent needs to know for a dry-run tool. Minor gap: it doesn't clarify limits like the maxItems=512 batch size or how 'ops' maps to the payload.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 50%: request_id and protect_existing are documented in-schema, but 'ops' and 'builder' are undocumented anywhere. The description's 'identical build payload' implies the ops shape but adds no syntax or format detail to compensate for the gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Simulate the identical build payload') with a clear scope qualifier ('without any persistent writes'). This cleanly distinguishes it from the sibling 'build' tool and from a reservation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'without any persistent writes' and 'Not a reservation' establish when this is appropriate (dry-run validation before a real build) and rule out one misinterpretation. It stops short of explicitly naming 'build' as the alternative to call afterward, but the context is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
remove_cubeRemove one cubeCInspect
Clear the cube at a coordinate.
| Name | Required | Description | Default |
|---|---|---|---|
| x | Yes | ||
| y | Yes | ||
| z | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It only states 'clear' and does not reveal what happens when no cube exists at the coordinate, whether the operation is permanent, if it affects neighboring cubes, or what the tool returns.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single clear sentence with no filler or repetition. The action is front-loaded, making it easy to scan, though it may be too sparse for a tool with no annotations.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutation tool with no annotations, no output schema, and three required parameters, the description is incomplete for an agent. Missing context includes failure behavior for absent cubes, coordinate bounds, idempotency, and return value expectations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate by explaining the parameters. It only says 'at a coordinate', which weakly ties x, y, and z together, but it does not explain their meaning, ordering, ranges, or coordinate system beyond what their names imply.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Describes a specific action (clear) on a specific resource (cube) identified by a coordinate, so an agent can tell this removes one cube. It is distinguishable from place_cube and get_cube by the action and singular target, though it does not explicitly differentiate from clear_mine or fill_box.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given on when to use this tool versus siblings like place_cube, fill_box, or clear_mine. There are no exclusions, prerequisites, or alternative conditions described.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
1 tool update
- Added
get_template
2 tool updates
- Changed
build1 field changed- added
Input schema / properties / protect_existingAdded value: +{ + "default": false, + "description": "Atomically reject accepted edits to cells occupied before the batch; preview is only a KV estimate.", + "type": "boolean" +}
- Changed
preview_build1 field changed- added
Input schema / properties / protect_existingAdded value: +{ + "default": false, + "description": "Atomically reject accepted edits to cells occupied before the batch; preview is only a KV estimate.", + "type": "boolean" +}
3 tool updates
- Changed
build1 field changed- added
Input schema / properties / request_idAdded value: +{ + "description": "Caller-generated canonical lowercase UUIDv4. Retained for 24 hours; unknown/expired is not proof of non-commit.", + "maxLength": 36, + "minLength": 36, + "pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$", + "type": "string" +}
- Added
get_build_receipt - Changed
preview_build1 field changed- added
Input schema / properties / request_idAdded value: +{ + "description": "Caller-generated canonical lowercase UUIDv4. Retained for 24 hours; unknown/expired is not proof of non-commit.", + "maxLength": 36, + "minLength": 36, + "pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$", + "type": "string" +}
1 tool update
- Changed
get_region2 fields changed- added
Input schema / properties / cursorAdded value: +{ + "maxLength": 256, + "minLength": 1, + "type": "string" +} - added
Input schema / properties / limitAdded value: +{ + "maximum": 8192, + "minimum": 1, + "type": "integer" +}
2 tool updates
- Changed
build1 field changed- added
Input schema / properties / builderAdded value: +{ + "type": "string" +}
- Added
preview_build
9 tool updates
- First observed
build - First observed
clear_mine - First observed
fill_box - First observed
get_cube - First observed
get_overview - First observed
get_region - First observed
get_world_stats - First observed
place_cube - First observed
remove_cube
Related MCP Connectors
- UnifAPIOAuthcom.unifapi
Hosted MCP server for live public-data APIs and Skills for AI agents.
Cloudflare Workers MCP server: ai-agent-scratchpad
Live index of AI agents, MCP servers and tools with observed liveness and capability search.
Official MCP server for Agentwork — delegate tasks to AI agents with human-in-the-loop
Related MCP Servers
- AlicenseBqualityAmaintenancePersistent 3D/2D spatial world model MCP server for AI agents. Entity tracking, object permanence, AABB collision simulation & view frustum projection via local SQLite.152,941 npm29MIT
- AlicenseAqualityAmaintenanceA local-first MCP server that gives AI coding agents persistent memory and controlled commands. Features a git-backed markdown knowledge vault with FTS5 search, surgical section edits, token-aware context budgeting, and a sandboxed command engine with human approval gates. Works with Claude Code, Cursor, Copilot, Gemini, and more.458249 npm1Apache 2.0
- AlicenseAqualityAmaintenanceMCP server for Project CPU, a blockchain game on EVM. It lets an AI agent play on your behalf: read the world map, reveal cells, build and mine, craft, move resources, trade at marketplaces, and cash out to on-chain $CPU.71271 npm1MIT
- AlicenseNot gradedqualityBmaintenanceEnables AI agents to collaboratively build and edit voxel structures in a shared browser-based arena, using WebMCP tools to place, query, transform, and undo block edits in real-time.MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.