Skip to main content
Glama

Check the plumbing project

plumbing
Read-only

Review a storey's cold/hot water and sewer design against NBR 5626 and NBR 8160, checking fixtures, points, pipes, drains, traps, and code findings.

Instructions

Plumbing review, NBR 5626 (cold and hot water) and NBR 8160 (sewer): points are the catalog's plumbing pieces (water and sewer points, valves, drains, traps, grease trap, inspection box, meter, gas, vent) and fixtures are the pieces that use water. Answers {points:{kind:count}, pipes_m, findings:[[sev, place, msg, src, key, accepted?]], pending, orphaned, sources}: water and sewer points by every fixture, discharge diameters, floor drains and traps in wet rooms, grease trap, where the water comes from and the sewer goes, points no pipe reaches. The drain models and what each check demands: rules topic=plumbing. Pipe runs are laid with edit_plumbing; accept marks a finding right as drawn.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
levelNoStorey to review, an id like `lv3` (default: the one shown)

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
pointsYes
pendingYes
pipes_mYes
sourcesYes
findingsYes
orphanedYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed7 schema fields changedv3.0.0
    • addedInput schema / properties
      Added value: +{
      +  "level": {
      +    "description": "Storey to review, an id like `lv3` (default: the one shown)",
      +    "type": "string"
      +  }
      +}
    • removedOutput schema / properties / findings / description
      Removed value: -"Rows [severity erro|alerta|dica, place, message, source, key, accepted reason?]"
    • removedOutput schema / properties / orphaned / description
      Removed value: -"Acceptances whose finding is gone: [key, reason, successor key?]"
    • removedOutput schema / properties / pending / description
      Removed value: -"Findings not accepted"
    • removedOutput schema / properties / pipes_m / description
      Removed value: -"Pipe metres: {cold, hot, sewer, vent}"
    • removedOutput schema / properties / points / description
      Removed value: -"Points by kind"
    • removedOutput schema / properties / sources / description
      Removed value: -"Standards cited, by code: [title, tier, url]"
  2. First observedv0.1.0

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already give readOnlyHint=true and openWorldHint=false, so safety is covered. The description adds real behavioral value beyond that: it declares the exact response shape, the checks it runs (fixture-level water/sewer points, discharge diameters, traps, grease trap, orphaned points), and its relationship to the write counterpart `edit_plumbing`. It still doesn't mention scope limits or performance/failure behavior, so not 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.

Conciseness4/5

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

Purpose and vocabulary are front-loaded in the first clause, then output shape, then checks, then routing hints. It is dense but nearly every clause carries distinct information. It is longer than typical, though the complexity of the review arguably justifies the length.

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?

For a complex multi-standard review tool it covers intent, output structure, the specific diagnostics produced, and the adjacent tools needed to act on results. With an output schema present it need not restate return values, yet it usefully sketches them anyway. Minor gaps remain around scope boundaries versus the `electrical` sibling.

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

Parameters3/5

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

Only one parameter (`level`) with a fully documented schema (`Storey to review, an id like lv3 (default: the one shown)`), so the schema does the heavy lifting and 100% coverage sets the baseline at 3. The description adds nothing about the level semantics or the default-storey behavior beyond what the schema states.

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+resource (plumbing review) scoped to two named standards (NBR 5626, NBR 8160), and defines its own vocabulary ('points', 'fixtures'). It also enumerates the concrete checks performed, so an agent knows this is a project-wide compliance review rather than a mutation. It never explicitly contrasts itself with the analogous `electrical` tool, so sibling differentiation is only partial.

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?

Routes the agent usefully: pipe runs belong to `edit_plumbing`, drain models/rules live under `rules` topic=plumbing, and `accept` is how findings get marked. That establishes when this tool is the read/review step versus the write/detail steps. There is no explicit 'use this when / do not use when' statement or comparison to `electrical`.

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