Skip to main content
Glama

terrain

Create a ground mesh from a noise height map for outdoor levels; same seed yields same terrain.

Instructions

Make a ground mesh from a noise height map, for outdoor levels. Same seed, same ground. size is [width along X, depth along Y] and resolution the grid step, in metres (0.5 looks low-poly). Over 160000 vertices is an error: raise resolution. height is the full range above the z of the object. scale is the size of the biggest hills in metres; octaves adds finer bumps. at is the world position of the centre and the origin. edge_falloff 0-1 makes an island: the share of the half size at the border where the ground sinks to zero. flat_center is the radius of a level circle in the middle (for a building); it blends out over half that radius. plateau_levels (2 or more) makes terraces of equal height. The bottom is open. skirt (a world z below the lowest border point) adds walls down to that z and a flat bottom: a closed block. Faces are flat shaded unless smooth=true. Returns the vertex count and height range. Then use path_carve for roads and scatter for rocks and trees.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
atNo
nameYes
seedNo
sizeNo
scaleNo
skirtNo
heightNo
smoothNo
octavesNo
resolutionNo
flat_centerNo
edge_falloffNo
plateau_levelsNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.4.0

TDQS

A4.6/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden and does so unusually well: it discloses a hard error condition (>160000 vertices), the default open-bottom topology, that `skirt` closes the mesh into a solid block, that faces are flat-shaded unless smooth=true, and what the call returns. This is exactly the operational detail an agent needs before invoking a mesh generator.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The purpose sentence leads, then parameter semantics are packed into terse clauses with no filler, and the workflow hint closes. Every sentence conveys distinct information despite the density.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 13-parameter procedural generator with no annotations and no output schema, the description covers purpose, determinism, error limits, topology options and return values, so an agent can call it correctly without further probing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% across 13 parameters, so the description must compensate and it does: it defines units and semantics for size (metres, [X,Y]), resolution, height, scale, octaves, at, edge_falloff, flat_center, plateau_levels, skirt and smooth, plus the seed determinism guarantee. Only the self-evident `name` is left implicit.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Make a ground mesh from a noise height map') plus its domain ('outdoor levels'), which is far more than a restatement of the name. The only gap is that it never distinguishes itself from the sibling `ground`, which an agent could reasonably confuse it with.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives a clear usage context (outdoor levels) and an explicit downstream workflow ('Then use path_carve for roads and scatter for rocks and trees'), which is genuinely routing guidance. It lacks any when-not-to-use or alternative-selection statement, e.g. versus `ground` or `build_from_grid`.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.