Skip to main content
Glama

Pitch, headlap and gauge sanity check

check_pitch_headlap
Read-onlyIdempotent

Checks a roof covering type against the pitch, the headlap and the batten gauge: is the pitch below the typical minimum for that kind of tile or slate, is the headlap enough for the exposure, does the gauge leave the headlap you want. Returns overall (ok_subject_to_maker_data, check_with_maker or fail), each check with its working, and what to confirm. Indicative: always confirm against the maker's data for the exact product. Pass maker_min_pitch_deg and maker_min_headlap_mm from the data sheet to check against those instead. Typical call: {"covering":"natural_slate","pitch_deg":25,"headlap_mm":75,"exposure":"severe"}.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "covering": "<covering>",
      "pitch_deg": "<pitch_deg>"
    },
    "name": "check_pitch_headlap"
  }
}

Input Schema

NameRequiredDescriptionDefault
tradeNoOptional. The roofer's own business details (Nero Trade Profile v1). Used to put the contractor on risk notes and to give a stable nero_trade_ref. Not stored by Ridge Pack.
coveringYesRoof covering. concrete_interlocking: Concrete interlocking tile (large format); clay_interlocking: Clay interlocking tile; clay_pantile: Clay pantile (traditional); plain_tile: Plain tile, clay or concrete (265 x 165 mm); natural_slate: Natural slate (500 x 250 mm default); fibre_cement_slate: Fibre cement slate (600 x 300 mm default).
exposureNoExposure to wind-driven rain. Default moderate.
gauge_mmNoBatten gauge planned, mm.
pitch_degYesRafter pitch in degrees.
headlap_mmNoHeadlap planned, mm.
tile_length_mmNoUnit length, mm (to check the gauge).
maker_min_pitch_degNoMinimum pitch from the maker's data sheet, if known.
maker_min_headlap_mmNoMinimum headlap from the maker's data sheet, if known.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.7/5.0
Behavior5/5

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

Beyond the read-only, idempotent, non-destructive annotations, it discloses that typical limits are used by default, that results are indicative, and that manufacturer limits can replace those defaults. It also sets detailed output expectations: three possible overall statuses, each check's working, and outstanding items to confirm.

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 opening sentence front-loads both purpose and scope, and subsequent sentences each earn their place by covering outputs, authority limitations, overrides, and an example invocation. Despite being information-dense, it contains no filler and remains easy to scan.

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 nine-parameter read-only calculation with no output schema, the description supplies the essential scope, result categories, supporting output details, limitations, and manufacturer-data behavior needed to select and invoke it correctly. Exact thresholds and formulas are omitted, but the promise of per-check working and the fully documented schema make that a minor gap rather than an invocation barrier.

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 description coverage is 100%, so the schema already carries the basic field meanings, units, enums, and defaults. The description adds useful semantics by connecting exposure to headlap, gauge to the resulting headlap, and the two maker_min parameters to an override workflow, reinforced by a concrete example call.

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

Purpose5/5

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

The description gives a specific verb and resource, then identifies three distinct checks: minimum pitch for the covering, headlap adequacy for exposure, and whether gauge preserves the intended headlap. This narrow roof-covering geometry scope makes the tool's role clear and readily distinguishable within the sibling set.

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?

It positions the tool as an indicative sanity check, explicitly requires confirmation against the exact manufacturer's data, and explains when to supply maker-specific pitch and headlap limits. The realistic example further supports invocation, although there is no explicit routing to an alternative tool for cases outside this scope.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.