Skip to main content
Glama

Craft Quantities: construction material calculators

Check a builder's or contractor's quote

check_quote
Read-onlyIdempotent

Is a builder's quote right on quantities? Reads a contractor's quote (pasted text) against the reader's own job and returns each quoted quantity against the range the job's calculators give, the lines it leaves out or adds, and the questions to ask. Money is removed and not judged; a difference is a question, not a verdict.

Input Schema

NameRequiredDescriptionDefault
jobYesThe quote check: bathroom-quote, plastering-quote, or a takeoff's ({takeoff id}-quote).
quoteYesThe quote's text. Prices may be left in; they are taken out before reading.
detailNofull (the default): the whole answer. summary: the result lines, the citation line and the page only — fewer tokens to read.full
marketNoOptional. A market whose own opening choice some inputs take (a UK reader's code, an IEC motor), and whose currency symbol prints the caller's own money figures.
systemNoThe unit system inputs left out open in, and the one the page link opens in. The answer comes in both.metric
selectionNoBuild-up choice id → option id, the takeoff's own (a stud size, an insulation, a cladding). Choices left out take the page's own for the system.
inputUnitsNoSend "base" to pass bare numbers on dimensioned inputs in base units (m, m², L, kg …), as the published test vectors are written. Without it a length, area or volume must carry its unit.
measurementsNoMeasurement id → value, each length, area or volume with its unit ("12 ft", {"value": 3.6, "unit": "m"}); counts as numbers. Ids are those of the takeoff; any left out opens at the page's own figure.

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already cover safety (readOnly, idempotent, non-destructive, closed-world), so the bar is lower, yet the description adds genuine behavioral context: money is stripped and not judged, and differences are returned as questions rather than verdicts. That framing is not inferable from the schema or annotations. It stops short of describing volume, cost, or latency traits.

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?

Three sentences, front-loaded with a framing question, then the mechanics, then the important caveat about money and verdicts. Dense but nearly every clause carries information; the parenthetical '(pasted text)' is the only mild redundancy.

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 an 8-parameter tool with nested objects, five enums, and an output schema, the description gives enough to call it correctly and previews the return shape (per-line quantity vs. calculator range, missing/extra lines, questions to ask). The output schema carries the detail, so nothing critical is missing, though the 75-value job enum and selection/measurements interplay are left entirely to the schema.

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?

Schema description coverage is 100%, so the schema already documents job, quote, detail, market, system, selection, inputUnits, and measurements. The description reinforces that the quote arrives as pasted text and that prices are tolerated, but adds no syntax or constraint detail beyond the schema. Baseline 3 applies.

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?

States a clear verb and object ('checks a contractor's quote against the reader's own job') and immediately distinguishes the operation from sibling quote tools like import_quote or create_supplier_quote_request by framing it as a verification against calculator ranges, not a capture or a request. The opening question plus the enumerated outputs make the purpose unmistakable.

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 implied by the mechanics: the caller must supply pasted quote text plus a job, so the agent can infer when it applies. However, it never explicitly says when to prefer this over import_quote or when the tool is inappropriate, and no prerequisites are stated.

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.

Resources