Skip to main content
Glama

Calculiva Cut Planner

Server Details

Plans flooring, trim and wallpaper orders from computed cut layouts. Free, read-only, no account.

If you are the author of this connector, you can claim ownership by verifying the domain or GitHub account it belongs to. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Uptime
100.0% over 24 days
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL
ChatGPT
–
Claude
–

TDQS

A4.2/5.0

Scored across 4 tools

Disambiguation5/5

Each of the three plan tools targets a distinct material (flooring, trim, wallpaper), and build_order_sheet is clearly the aggregate that consumes their outputs. The description even specifies it takes the same arguments as the three plan tools, leaving no overlap in purpose.

Naming Consistency5/5

All four names follow a uniform snake_case verb_noun pattern (plan_*_order, build_order_sheet). The verb choice is predictable and readable across the set.

Tool Count5/5

Four tools is tightly scoped: three material planners plus one consolidation tool, each with a clear reason to exist. Nothing feels redundant or missing for the stated purpose.

Completeness5/5

The surface covers all three advertised material domains plus a combined order sheet, forming a full plan-to-order workflow. As stateless calculation tools, no update/delete lifecycle is needed, so there are no obvious dead ends.

Available Tools

4 tools
build_order_sheetBuild one order sheetA
Read-onlyIdempotent
Inspect

Builds one consolidated order sheet from the flooring, trim and wallpaper plans of the same project (pass the same arguments as plan_flooring_order, plan_trim_order and plan_wallpaper_order): cartons, boards per stock length, rolls, total offcuts, the cut list by material and a CSV. Trim pieces of all walls and all types (battens, rails, chair rail, frames) are packed together on the stock boards, and the sheet compares that with one order per wall, each wall on its own best stock length (total length bought, then offcut, then boards).

NameRequiredDescriptionDefault
kerfNoSaw kerf, charged between two cuts on the same board. Default 1/8 in. Length with its unit, e.g. "12 ft 6 in", "12'6\"", "150 in", "3m80"; a bare number is read as inches.
trimNoTrim walls, one per wall, with the plan_trim_order arguments (stock, kerf and extra are set once below).
flooringNoFlooring orders, one per plank product, with the plan_flooring_order arguments.
wallpaperNoWallpaper orders, one per paper, with the plan_wallpaper_order arguments.
extraPercentNoExtra boards to buy, % of the boards in the cut plan. Default 10.
stockLengthsFtNoBoard lengths you can buy, in feet (1 to 8 values, each up to 24). Default: 8, 10, 12 and 16 ft are compared and any of them can be recommended; pass the lengths your store sells to plan on those.

Output Schema

NameRequiredDescription
csvYes
trimYes
linksYes
orderYes
methodYes
cutListYes
offcutsYes
optimalYes
flooringYes
warningsYes
wallpaperYes
comparisonRuleYesThe ranking used for every "better" statement in this result; a tie recommends nothing.
stockLengthsFtYes

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 bar is low, and the description adds real behavioral context: how trim pieces are packed (all walls and types on shared stock) and that it compares this against one order per wall, ranked by total length bought, then offcut, then boards. It does not cover failure modes or size limits, but the added planning logic is substantive.

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 composition are front-loaded in the first clause, with the packing/comparison detail following. The second sentence is dense and slightly long-winded, but every clause carries information about outputs or optimization behavior.

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?

A rich output schema exists, so return values need no narration, and annotations carry the safety profile. The description covers composition, argument inheritance and the key packing/comparison rule; only explicit routing-away-from-siblings and any input limits are absent.

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% and the schema itself already explains every argument, including that stock, kerf and extra are shared. The description only restates that the same arguments apply and hints at the stock-length comparison; it adds little syntactic meaning beyond the schema, so baseline 3.

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 specific verb and resource ('Builds one consolidated order sheet') plus exactly what the sheet contains (cartons, boards per stock length, rolls, offcuts, cut list, CSV). It is clearly the consolidating tool among the plan_* siblings, and it names those siblings explicitly.

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?

Explicitly routes the agent by saying to 'pass the same arguments as plan_flooring_order, plan_trim_order and plan_wallpaper_order', which tells the caller this is the one-shot combined alternative. It stops short of an explicit when-not (e.g. use plan_* individually if you only need one material), so it is clear context rather than a full decision rule.

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

plan_flooring_orderPlan a plank flooring orderA
Read-onlyIdempotent
Inspect

Plans laminate, vinyl plank (LVP) or engineered plank flooring for 1 to 12 rooms, rectangles or L shapes, with the plank size and planks per carton from the carton: cartons to buy, every cut piece traced to its source plank, offcuts carried from one room to the next, the 8 scenarios (direction x offset 1/3 or 1/2 x reuse, plus aligned joints in the chosen direction when offset 0 is chosen) and the best one when no other ties it (fewest cartons, then least offcut, then fewest planks), and how many planks a flat waste allowance would miss. Up to 3,000 planks per call. Lengths accept feet and inches. Returns a link per room to the full plan on calculiva.com.

NameRequiredDescriptionDefault
kerfNoSaw kerf, charged on each cut. Default 1/8 in. Length with its unit, e.g. "12 ft 6 in", "12'6\"", "150 in", "3m80"; a bare number is read as inches.
orderNoLaying order by room name; offcuts only flow forward. Default: the order of rooms.
reuseNoCut a row end from the offcut of a row start in the same room (default true).
roomsYesRooms to floor with the same plank, 1 to 12, in laying order unless order is given.
offsetNoEnd-joint stagger between rows, as a fraction of the plank: 1/3 (default), 1/2 or 0 (aligned).
minReuseNoShortest offcut worth carrying to another room. Default 0 (any offcut long enough). Length with its unit, e.g. "12 ft 6 in", "12'6\"", "150 in", "3m80"; a bare number is read as inches.
clearanceNoExpansion gap on every wall, from the product instructions. Default 0. Length with its unit, e.g. "12 ft 6 in", "12'6\"", "150 in", "3m80"; a bare number is read as inches.
directionNohorizontal = planks run along the room width (default); vertical = along the room length.
minStarterNoMinimum row starter length; 0 disables the check. Default 0. Length with its unit, e.g. "12 ft 6 in", "12'6\"", "150 in", "3m80"; a bare number is read as inches.
plankWidthYesInstalled plank width (face), from the carton. Length with its unit, e.g. "12 ft 6 in", "12'6\"", "150 in", "3m80"; a bare number is read as inches.
minRowWidthNoMinimum edge-row width; 0 disables the check. Default 0. Length with its unit, e.g. "12 ft 6 in", "12'6\"", "150 in", "3m80"; a bare number is read as inches.
plankLengthYesInstalled plank length (face), from the carton. Length with its unit, e.g. "12 ft 6 in", "12'6\"", "150 in", "3m80"; a bare number is read as inches.
balancedRowsNoSplit the partial row width between the first and last rows (default true).
firstStarterNoLength of the first row starter; 0 = full plank. Default 0. Length with its unit, e.g. "12 ft 6 in", "12'6\"", "150 in", "3m80"; a bare number is read as inches.
planksPerBoxYesPlanks per carton, from the carton label.
minJointSpacingNoMinimum distance between end joints of adjacent rows; 0 disables the check. Default 0. Length with its unit, e.g. "12 ft 6 in", "12'6\"", "150 in", "3m80"; a bare number is read as inches.
allowancePercentNoFlat waste allowance you would otherwise buy (e.g. 10): the answer says how many planks it misses.
carryBetweenRoomsNoOffcuts of a room feed the next rooms (default true).

Output Schema

NameRequiredDescription
roomsYes
methodYes
scenarioYes
shareUrlYes
warningsYes
allowanceYes
scenariosYes
transfersYes
boxesToBuyYes
offcutsLeftYes
planksToBuyYes
sparePlanksYes
bestScenarioYesThe single best of the scenarios (8, or 10 when offset 0 is chosen) by comparisonRule; null when several tie.
planksPerBoxYes
sourcePlanksYes
wastePercentYes
bestDecidedByYesThe first criterion of comparisonRule on which the two options differ.
floorAreaSqFtYes
comparisonRuleYesThe ranking used for every "better" statement in this result; a tie recommends nothing.
roomsAlonePlanksYes
shareUrlCompleteYes
scenariosTiedAtBestYes
planksSavedBetweenRoomsYes

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare readOnly/idempotent/non-destructive, and the description adds real behavioral context: offcuts flow forward room to room, 8 scenarios are evaluated, the tie-break chain (fewest cartons → least offcut → fewest planks), and the 3,000-plank call limit. This is meaningful disclosure of computation and limits beyond the safety profile.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

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

Purpose is front-loaded, but the body is a single sprawling run-on sentence with a long clause chain (scenarios, tie-breaks, waste allowance) that is hard to parse. Every clause is informative, yet the structure sacrifices readability for density.

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 description needn't explain return values, yet it still notes a per-room link, which is helpful. Combined with the constraint disclosures and computation logic, it is largely complete for an 18-parameter planner, though it could say more about prerequisites or failure modes.

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 baseline is 3. The description adds unit-handling ('lengths accept feet and inches') and explains the offset x reuse scenario space, but does not clarify individual parameters like minStarter, minJointSpacing, or clearance beyond what the schema already documents.

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 specific verb ('Plans') and resource (laminate, LVP, engineered plank flooring) with scope (1-12 rooms, rectangles or L shapes) and outputs (cartons to buy, per-cut tracing, best scenario). An agent can distinguish this from plan_trim_order or plan_wallpaper_order purely by the flooring/plank framing.

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 scope details (needs plank size and planks per carton, up to 3,000 planks per call), but the description never states when to choose this over the sibling planners or states exclusions. The only hard boundary given is the 3,000-plank cap, which is more of a constraint than guidance.

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

plan_trim_orderPlan a trim board orderA
Read-onlyIdempotent
Inspect

Plans board and batten, wainscoting or picture frame molding on one wall: spacing, the cut list (miter long and short points for frames) and how many boards of each retail length to buy, with the total length bought and offcut percentage for each stock length; the length to buy is the one that buys the least total length, then the least offcut, then the fewest boards. The cut plan is first-fit decreasing: feasible, not proven optimal. Lengths accept feet and inches. Returns a link to the full plan on calculiva.com.

NameRequiredDescriptionDefault
edgeNoboard-and-batten: start and end the wall with a space (default) or with a batten.
gapXNopicture-frame-molding: gap between boxes. Default 4 in. Length with its unit, e.g. "12 ft 6 in", "12'6\"", "150 in", "3m80"; a bare number is read as inches.
gapYNopicture-frame-molding: gap between rows. Default 4 in. Length with its unit, e.g. "12 ft 6 in", "12'6\"", "150 in", "3m80"; a bare number is read as inches.
kerfNoSaw kerf, charged between two cuts on the same board. Default 1/8 in. Length with its unit, e.g. "12 ft 6 in", "12'6\"", "150 in", "3m80"; a bare number is read as inches.
rowsNopicture-frame-molding: rows of boxes. Default 1.
edgeXNopicture-frame-molding: side margin. Default 4 in. Length with its unit, e.g. "12 ft 6 in", "12'6\"", "150 in", "3m80"; a bare number is read as inches.
styleNowainscoting: applied molding frames (default) or stiles and rails.
hasCapNopicture-frame-molding: a chair rail caps the boxes (default true); false = boxes run to the ceiling.
layoutNoboard-and-batten: vertical battens (default) or a grid with horizontal rails.
columnsNopicture-frame-molding: boxes across. Default 4.
edgeTopNopicture-frame-molding: top margin. Default 4 in. Length with its unit, e.g. "12 ft 6 in", "12'6\"", "150 in", "3m80"; a bare number is read as inches.
projectYesboard-and-batten, wainscoting (applied frames or stile and rail) or picture-frame-molding (boxes of 45° mitered molding).
openingsNoUp to 4 openings or obstacles on the wall; pieces that land on them are flagged and left out of the cut list.
capHeightNopicture-frame-molding: height of the underside of the chair rail. Default 36 in. Length with its unit, e.g. "12 ft 6 in", "12'6\"", "150 in", "3m80"; a bare number is read as inches.
railCountNoboard-and-batten grid: horizontal rails per bay. Default 2.
wallWidthYesWall width. Length with its unit, e.g. "12 ft 6 in", "12'6\"", "150 in", "3m80"; a bare number is read as inches.
edgeBottomNopicture-frame-molding: bottom margin. Default 4 in. Length with its unit, e.g. "12 ft 6 in", "12'6\"", "150 in", "3m80"; a bare number is read as inches.
fullHeightNoboard-and-batten: battens run to the ceiling. Default false.
panelCountNowainscoting: number of panels or frames. Omit to use panelWidth.
panelWidthNowainscoting: target panel width, used when panelCount is omitted. Default 30 in. Length with its unit, e.g. "12 ft 6 in", "12'6\"", "150 in", "3m80"; a bare number is read as inches.
wallHeightYesWall height, floor to ceiling. Length with its unit, e.g. "12 ft 6 in", "12'6\"", "150 in", "3m80"; a bare number is read as inches.
battenCountNoboard-and-batten: number of battens. Omit to use battenSpacing.
battenWidthNoboard-and-batten: actual batten width (a 1x3 is 2 1/2 in). Default 2 1/2 in. Length with its unit, e.g. "12 ft 6 in", "12'6\"", "150 in", "3m80"; a bare number is read as inches.
memberWidthNowainscoting: stile width, or side reveal between frames. Default 3 1/2 in. Length with its unit, e.g. "12 ft 6 in", "12'6\"", "150 in", "3m80"; a bare number is read as inches.
extraPercentNoExtra boards to buy, % of the boards in the cut plan. Default 10.
moldingWidthNowainscoting applied-frames (default 1 1/4 in) or picture-frame-molding (default 1 in): molding face width. Length with its unit, e.g. "12 ft 6 in", "12'6\"", "150 in", "3m80"; a bare number is read as inches.
topRailWidthNoboard-and-batten top rail, or wainscoting stile-and-rail top rail width. Default 3 1/2 in. Length with its unit, e.g. "12 ft 6 in", "12'6\"", "150 in", "3m80"; a bare number is read as inches.
battenSpacingNoboard-and-batten: target gap between battens, used when battenCount is omitted. Default 12 in. Length with its unit, e.g. "12 ft 6 in", "12'6\"", "150 in", "3m80"; a bare number is read as inches.
topRailHeightNoboard-and-batten: height of the top of the top rail from the floor. Default 32 in. Length with its unit, e.g. "12 ft 6 in", "12'6\"", "150 in", "3m80"; a bare number is read as inches.
chairRailWidthNowainscoting: chair rail height (board width). Default 2 1/2 in. Length with its unit, e.g. "12 ft 6 in", "12'6\"", "150 in", "3m80"; a bare number is read as inches.
revealVerticalNowainscoting applied-frames: reveal above and below each frame. Default 3 1/2 in. Length with its unit, e.g. "12 ft 6 in", "12'6\"", "150 in", "3m80"; a bare number is read as inches.
stockLengthsFtNoBoard lengths you can buy, in feet (1 to 8 values, each up to 24). Default: 8, 10, 12 and 16 ft are compared and any of them can be recommended; pass the lengths your store sells to plan on those.
wainscotHeightNowainscoting: overall height from the floor, chair rail included. Default 32 in. Length with its unit, e.g. "12 ft 6 in", "12'6\"", "150 in", "3m80"; a bare number is read as inches.
baseboardHeightNoExisting baseboard height; "0" if none. Default 5 1/4 in. Length with its unit, e.g. "12 ft 6 in", "12'6\"", "150 in", "3m80"; a bare number is read as inches.
bottomRailWidthNowainscoting stile-and-rail: bottom rail width. Default 5 1/2 in. Length with its unit, e.g. "12 ft 6 in", "12'6\"", "150 in", "3m80"; a bare number is read as inches.

Output Schema

NameRequiredDescription
buyYesBoards to buy: the best stock length by comparisonRule; null when no length holds the longest piece.
kerfYes
miterYes
layoutYes
methodYes
cutListYes
optimalYes
projectYes
shareUrlYes
warningsYes
linearFeetYes
noStockFitsYes
extraPercentYes
wallAreaSqFtYes
comparisonRuleYesThe ranking used for every "better" statement in this result; a tie recommends nothing.
stockComparisonYes
shareUrlCompleteYes

TDQS

A4.1/5.0
Behavior5/5

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

Annotations already cover the safety profile (readOnly, idempotent, non-destructive, closed-world), and the description adds genuinely non-obvious behavior: the stock-length selection rule (least total length, then least offcut, then fewest boards), the first-fit-decreasing algorithm with the honest 'feasible, not proven optimal' caveat, and unit-parsing tolerance. These are traits an agent could not recover from the schema.

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 is front-loaded in the first clause and every sentence carries substance (outputs, optimization rule, algorithm caveat, units, return). The middle semicolon-chained sentence about tie-breaking is dense and slightly overloaded, but nothing is redundant.

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 35-parameter tool with an output schema and full schema descriptions, the description is largely self-sufficient: project types, optimization policy, algorithm quality, and the return artifact are all stated. The main gap is that it never clarifies which parameters apply to which project variant, leaving that cross-referencing 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% across all 35 parameters, so the schema already documents every field including defaults and per-project applicability. The description's only parameter-level addition, 'Lengths accept feet and inches,' largely restates the schema's repeated unit examples, so baseline 3 is correct.

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?

Names a specific verb (plans) and resource (trim board order for board-and-batten, wainscoting, or picture-frame molding on one wall), and enumerates the concrete outputs (spacing, cut list, boards per retail length). An agent can distinguish this from the flooring/wallpaper planners and from build_order_sheet without opening the schema.

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 scoping phrase 'on one wall' and the project enum, and the mention of a returned plan link hints that a separate order-sheet tool exists. But there is no explicit when-to-use/when-not guidance and no named alternative such as build_order_sheet, so the agent must infer the boundary.

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

plan_wallpaper_orderPlan a wallpaper orderA
Read-onlyIdempotent
Inspect

Counts the wallpaper rolls to buy from the walls, doors and windows and the roll label (width, length, pattern repeat, match): drops per roll, every cut placed on its roll, match waste, and the straight / half-drop / random comparison. Lengths accept feet and inches. Returns a link to the full plan on calculiva.com.

NameRequiredDescriptionDefault
trimNoTrim allowance per drop, top and bottom together. Default 4 in. Length with its unit, e.g. "12 ft 6 in", "12'6\"", "150 in", "3m80"; a bare number is read as inches.
matchNoPattern match from the label: straight (default), half-drop or random.
wallsYesWalls to paper, 1 to 12.
repeatYesVertical pattern repeat from the label; "0" for none. Length with its unit, e.g. "12 ft 6 in", "12'6\"", "150 in", "3m80"; a bare number is read as inches.
openingsNoDoors and windows; only drops fully crossed by an opening are shortened.
rollWidthYesRoll width, from the label of the roll. Length with its unit, e.g. "12 ft 6 in", "12'6\"", "150 in", "3m80"; a bare number is read as inches.
rollLengthYesRoll length, from the label (e.g. "33 ft"). Length with its unit, e.g. "12 ft 6 in", "12'6\"", "150 in", "3m80"; a bare number is read as inches.
deductOpeningsNoShorten drops over doors and windows (default true).

Output Schema

NameRequiredDescription
cutsYes
dropsYes
matchYes
rollsYes
shareUrlYes
warningsYes
cutTotalFtYes
longestCutYes
rollsToBuyYes
linearYardsYes
dropsPerRollYes
matchWasteFtYes
wallAreaSqFtYes
wastePercentYes
areaMethodRollsYes
matchComparisonYesThe same walls with each pattern match; the match is printed on the roll label, so this is not a choice.
openingAreaSqFtYes
shareUrlCompleteYes

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already declare this is a read-only, idempotent, non-destructive, non-open-world call, so the safety burden is lifted. The description still adds value beyond that: it discloses the external artifact produced ('a link to the full plan on calculiva.com') and the unit-parsing behavior ('Lengths accept feet and inches').

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 the core action and tightly packed, with no filler sentences. It is a single long sentence, but each clause carries distinct information (inputs, outputs, units, return link).

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?

An output schema exists, so return-value detail is not required, yet the description still notes the plan link and comparison output. Combined with 100% schema coverage and clear annotations, the definition gives an agent enough to call the tool correctly; only routing guidance against siblings is missing.

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 (walls, rollWidth, rollLength, repeat, match, openings, trim, deductOpenings) is already documented in the schema. The description's brief parenthetical '(width, length, pattern repeat, match)' and the unit note merely restate schema content, so the 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 specific verb and resource ('Counts the wallpaper rolls to buy') and enumerates the concrete outputs: drops per roll, cut placement, match waste, and straight/half-drop/random comparison. The wallpaper domain cleanly separates it from plan_flooring_order and plan_trim_order without needing to name them.

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 description implies the context (estimating material before ordering wallpaper) but never states when to use this versus the sibling planning tools or any preconditions/exclusions. Usage must be inferred from the purpose statement alone.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 4 tool updates
    • First observedbuild_order_sheet
    • First observedplan_flooring_order
    • First observedplan_trim_order
    • First observedplan_wallpaper_order

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables an agent to turn furniture measurements into parametric module parts, optimize panel cutting layouts, and export cut lists, labels, PDF/SVG, CSV, or DXF.
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables users to create and edit 3D floor plans conversationally, describing rooms and layouts or uploading DWG/PDF drawings, then view them in 2D/3D via a live link.
    4
    MIT
  • F
    license
    Not graded
    quality
    D
    maintenance
    Generates workspace floorplans with deterministic layout calculations, providing tools for space layout generation, zone adjacency analysis, and space brief validation.
    -
  • F
    license
    Not graded
    quality
    A
    maintenance
    Floor plans, elevations and sections for agents. Draw a room in real millimetres, place doors, windows and tables, validate with typed errors, render deterministic SVG. Free key, no approval.
    -
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources