Skip to main content
Glama

Craft Quantities: construction material calculators

Link to the calculator page with these figures

open_in_site_link
Read-onlyIdempotent

Returns a link that opens a construction calculator's page on craftquantities.com with the reader's figures filled in and their unit system, so a person can see or change the working on the page.

Input Schema

NameRequiredDescriptionDefault
slugYesThe calculator's slug, such as concrete-calculator.
detailNofull (the default): the whole answer. summary: the result lines, the citation line and the page only — fewer tokens to read.full
inputsNoThe calculator's input values, by input id (an unknown id is refused with the accepted ids). A length, area, volume or other measured input takes "12 ft", "3.5 m", "8' 3 1/2\"" or {"value": 12, "unit": "ft"}; a count or percentage takes a number; a select takes one of its option values. Inputs left out take the value the calculator's page opens on.
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
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.

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • changedInput schema / properties / inputs / description
      Previous value: -"Input id → value. A length, area, volume or other measured input takes \"12 ft\", \"3.5 m\", \"8' 3 1/2\\\"\" or {\"value\": 12, \"unit\": \"ft\"}; a count or percentage takes a number; a select takes one of its option values. Inputs left out take the value the calculator's page opens on."New value: +"The calculator's input values, by input id (an unknown id is refused with the accepted ids). A length, area, volume or other measured input takes \"12 ft\", \"3.5 m\", \"8' 3 1/2\\\"\" or {\"value\": 12, \"unit\": \"ft\"}; a count or percentage takes a number; a select takes one of its option values. Inputs left out take the value the calculator's page opens on."
    • changedInput schema / properties / slug / description
      Previous value: -"A calculator slug, such as concrete-calculator."New value: +"The calculator's slug, such as concrete-calculator."
  2. First observed

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false and openWorldHint=false, so the safety profile is fully covered by structured data. The description adds the useful fact that the output is a link embodying the caller's figures and unit system, but does not mention failure behavior (e.g. unknown input ids) or any limits, so it adds modest value over the annotations.

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?

One sentence, front-loaded with the return value and scoped by the site and the filled-in figures. It is dense but not padded; only the trailing 'so a person can see or change the working' is arguably redundant with the annotation set.

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?

With an output schema present, the return shape need not be described, and 100% schema coverage handles all six parameters including nested objects. For a read-only link-builder the description covers purpose and audience adequately, though it never explains how this tool relates to the calculate/run_example siblings.

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%, with detailed per-parameter docs (slug pattern, detail enum, inputs shape, market, system, inputUnits). The description only echoes 'figures filled in and their unit system,' adding nothing the schema does not already say in more detail, so the baseline 3 applies.

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 result ('Returns a link that opens a construction calculator's page on craftquantities.com') plus what the link carries (figures and unit system). It distinguishes itself from siblings like calculate by emphasizing the human-facing artifact ('so a person can see or change the working'), but it never names an alternative tool explicitly.

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?

The trailing clause implies when to use it — when a person needs to view or edit the working on the page rather than receive a computed answer. There is no explicit when-not guidance and no named alternative (e.g. calculate) for the compute-only case, so the routing guidance is only implied.

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