Skip to main content
Glama
derekriemer

tactile-terrain

by derekriemer

describe_model

Reads a tactile-terrain model as text, reporting footprint, scale, high and low points, line paths, crossings, cross-sections, legend, and distortion; optional sections add specified cross-sections.

Instructions

Read a model out as text: footprint, scale, high and low points, the course of every line, crossings, cross-sections, the tactile legend and distortion. sections adds extra cross-sections: {"y_mm": 40}, {"x_mm": 60} or {"through": "Second Creek", "direction": "EW"}.

Input Schema

NameRequiredDescriptionDefault
nameYes
sectionsNo

Output Schema

NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A3.6/5.0
Behavior3/5

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

No annotations are supplied, so the description carries the full behavioral burden. 'Read ... out as text' does effectively signal a non-mutating read, and the enumeration hints the output can be large ('the course of every line'), but nothing is said about failure modes (unknown/ambiguous model name) or cost of a full dump.

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

Conciseness4/5

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

Two sentences, front-loaded with the core action and its scope, with the `sections` example payloads placed where they are needed. The inline JSON examples add length but each one disambiguates a distinct accepted form, so little is wasted.

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

Completeness4/5

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

An output schema exists, so return values needn't be re-explained, and the description still gives a helpful summary of the content. For a two-parameter read tool this is close to complete; only the meaning/format of `name` and error behavior are left unaddressed.

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

Parameters4/5

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

Schema coverage is 0%, so the description must compensate. It does so well for the non-obvious parameter, giving three concrete shapes for `sections` ({"y_mm": 40}, {"x_mm": 60}, {"through": "Second Creek", "direction": "EW"}) that the schema's anonymous object array conveys nothing about. The required `name` parameter is only inferable from 'Read a model', not explicitly described.

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?

The description opens with a specific verb+resource: 'Read a model out as text', then enumerates exactly what the text covers (footprint, scale, high/low points, line courses, crossings, cross-sections, tactile legend, distortion). An agent can tell this is a read/inspection tool rather than a mutation, though it never explicitly contrasts itself with the sibling analyze_model or get_spec.

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

Usage Guidelines3/5

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

Usage is only implied: the enumerated output contents suggest when an agent would want this (when it needs a full textual dump of a model). There is no explicit when-to-use, when-not-to-use, or 'prefer analyze_model for X' routing against the sibling tools, which is a notable gap given eight adjacent tools.

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