Skip to main content
Glama

Craft Quantities: construction material calculators

One-page job sheet for the van

make_job_sheet
Read-onlyIdempotent

The one-page job sheet a takeoff page prints for the van: the job's picture as SVG, key dimensions in metric and imperial, the build-up, each line going in with what to buy, labour hours by trade, and the link reopening the page on these figures. Words and figures for the PDF; no prices.

Input Schema

NameRequiredDescriptionDefault
paperNoThe sheet's paper; the market's when left out.
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
takeoffYesThe takeoff's id, such as concrete-slab or stud-wall.
leaveOutNoRows the reader leaves out of the job: still worked and shown, not put in the project or counted in labour.
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. Added

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 and destructiveHint=false, so the safety profile is covered. The description adds one genuine behavioural fact beyond that – 'no prices' in the output – but most of the rest restates what the output schema already documents, so the marginal value is modest.

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 dense sentence, front-loaded with the purpose and then listing contents in a sensible order; the closing 'no prices' constraint lands last where it is easy to catch. Some phrasing ('the van', 'the build-up') is idiomatic at the cost of precision, but there is no padding.

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 a full output schema, rich annotations and 100% schema coverage, the description needs only to frame what the tool is for and it does so thoroughly, including the business constraint on prices. The only mild gap is that the relationship to the takeoff-running tools (must it exist first?) is left implicit.

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 every parameter including enums and nested selection/measurements is already documented structurally; baseline 3 applies. The description's only parameter-adjacent remark is that dimensions appear in metric and imperial, which lightly echoes the 'system' parameter without adding syntax or constraints.

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?

A specific verb-phrase and resource: it produces the one-page job sheet for a takeoff, and enumerates what that sheet contains (SVG picture, dimensions in both unit systems, build-up, buy lines, labour hours, reopening link). That is enough to separate it from siblings like get_takeoff or run_takeoff, but it never names those alternatives, so differentiation is inferential rather than stated.

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 one-page job sheet a takeoff page prints for the van' – an agent can infer this is the printable/field-handout output step after a takeoff exists. There is no explicit when-to-use, no prerequisite stated (does the takeoff need to be run first?), and no alternative tool named.

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