Skip to main content
Glama

Craft Quantities: construction material calculators

Build programme (construction schedule) from labour hours

plan_programme
Read-onlyIdempotent

Builds a construction programme (build schedule, Gantt) from a project's labour hours: tasks by trade, stage and level in the usual order of work, each its hours over the crew and working day given, with totals, a CSV and, with a start date, an iCalendar file. Reads a project state token, a My Project file, takeoffs or a drawing. Weather, inspections and lead times are not modelled. No prices.

Input Schema

NameRequiredDescriptionDefault
crewNoPeople in each trade's crew, unless named in crews.
fileNoA My Project file (the backup a project-file answer returns, or one the reader exported): its active project's lines and any hours typed on them.
nameNoThe project's name, for the files.
crewsNoPeople in a trade's crew, by trade id (carpentry, drywall, electrical, roofing …).
tokenNoA project state token (cqp1.…) from a project-file answer or an update: the project whose lines are put in order.
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
daysOffNoDates not worked (holidays, a shutdown), YYYY-MM-DD.
drawingNoA Construction Canvas drawing (a template, a house form, shapes, drawing commands or a canvas document), as a project file takes it; its levels set the level-by-level order.
takeoffsNoWhole-job takeoffs, each an id and its measurements, as a project file takes them.
workDaysNoThe days of the week worked, 1 Monday to 7 Sunday.
startDateNoOptional first day (YYYY-MM-DD): the working days are then given dates and a calendar file is returned. No date is assumed without it.
hoursPerDayNoWorking hours in a crew's day.

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already declare readOnly/idempotent/non-destructive, so the safety profile is covered; the description adds real value beyond that by disclosing the returned deliverables (totals, CSV, an iCalendar file only when a start date is given) and the explicit modelling exclusions. It does not discuss failure modes or error handling, so it falls just short of the top band.

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?

Front-loaded with purpose, then output, inputs and exclusions in a compact block with essentially no filler. It is dense, jargon-heavy and slightly run-on (multiple clauses stacked per sentence), which mildly reduces scannability but does not cost useful content.

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 14-parameter tool with nested objects and zero required inputs, the description covers the purpose, accepted input sources, deliverables and modelling boundaries, and an output schema exists so return values need not be re-explained. Missing only explicit guidance on choosing among the competing input sources (token vs file vs takeoffs vs drawing).

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 all 14 parameters (including nested drawing/takeoffs shapes) carry their own documentation and the baseline is 3. The description adds only soft framing (hours distributed "over the crew and working day given") rather than syntax or defaults not already in the schema.

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?

A specific verb ("Builds") plus a precise resource ("a construction programme … from a project's labour hours"), with the produced artifact spelled out (tasks by trade, stage and level, ordered by the usual sequence of work). An agent can distinguish it from plan_project, plan_room and the create_project_file_* siblings without opening a schema.

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 names the accepted input sources ("a project state token, a My Project file, takeoffs or a drawing") and states scope limits ("Weather, inspections and lead times are not modelled. No prices."), which indicates when the tool applies. It stops short of explicitly routing the agent against a named sibling or stating when-not to use it.

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