Skip to main content
Glama

ARCNM Cost Breakdown

arcnm_cost_breakdown
Read-onlyIdempotent

Get one calculation as a single rough-to-detailed hierarchy — headline → cost category → operation → feature, with time and cost side by side — so you can stop at the depth you need. The cost tier is the itemised cost sheet: every category with the tiers beneath it (per machine, per clamping, per work element), each line carrying its time, its rate and the factors that would move it — the same tree the app renders, node for node. Pass a persona to slice it: 'procurement' (headline + band, shareable without a CAD seat), 'workprep' (the routing / operations tier as a work plan), 'operations' (routing + machines for shop balancing), 'design' (the cost sheet + per-feature drivers for DfM), or 'full' (every tier). Every persona also gets material_stock: the stock the part is bought as (format, size, parts per stock), its mass balance, and the material line's purchase and scrap and remnant credits. Pass quantity (1 to 1,000,000,000) to read the headline, the times and the cost tier at another lot size, with quantity and basis stating which lot and where the figures come from: a quantity on the calculation's lot-size curve is served as recorded, any other is restated from the calculation's own closed form; a calculation that records no closed form (or one that cannot be read) refuses the quantity by name. The headline at any lot is the manufacturing cost per part, the same figure the ordered lot's unit_cost means. The operations, feature and material_stock tiers describe the lot the calculation was priced for. Read-only.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
personaNofull
quantityNoLot size to read the headline, the times and the cost tier at; omit for the lot the calculation was priced for. The operations, feature and material_stock tiers describe the priced lot either way.
calculation_idYes

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
basisNoWhere the figures at `quantity` come from: 'priced' (the ordered lot, exact), 'curve_point' (recorded on the calculation's lot-size curve while pricing) or 'restated' (priced from the same closed form the curve was built from). Null when the calculation records no lot-size curve.
errorNoWhy this calculation produced no price, in one sentence, when its status is terminal (failed / cancelled).
statusYes
personaYesThe persona view this result is sliced for.
currencyNoThe calculation's currency; every money figure here is in it.
featuresNo
guidanceYes
machinesNo
quantityNoThe lot size this result is stated at: the calculation's own ordered lot unless `quantity` was passed, in which case the headline, the times and the cost tier are all at that lot size.
cost_bandNo[low, high] prediction band for the unit cost. Stated at the lot the calculation was priced at only: the band is fitted to that run and does not carry to another quantity.
unit_costNoUnit cost per part at `quantity`, BEFORE the cost-sheet surcharges the costing environment states. The price to quote is offer_price.
confidenceNoQuote-trust signal — the headline the procurement / supplier persona reads with the band before trusting the should-cost.
cost_linesNoThe itemised cost sheet as a tree — every category with the tiers beneath it, each carrying its time, its rate and the factors that move it.
operationsNo
setup_costNoSetup cost for the whole lot at `quantity`, in `currency` — the sheet's setup line times the lot.
total_costNounit_cost for the whole lot at `quantity`, before the cost-sheet surcharges.
offer_priceNoThe offer price per unit — unit_cost plus the cost-sheet surcharges the costing environment states; equal to unit_cost when no sheet is stated. The SAME figure arcnm_explain_cost states, so the shareable procurement headline is the price, not the bare manufacturing cost. Absent on older calculations.
unit_time_sNoTime per unit at `quantity`, in seconds, across every activity: machine time plus the bench work plus the per-part programming and inspection shares. One meaning at every lot size, and never smaller than `machine_time_s`. Null at a lot size a calculation priced before the two were told apart.
needs_reviewNoTrue when this cost needs a human check before it is trusted. Reported for EVERY persona — a trust flag must never be sliced away, or a persona that doesn't get the review tier reads a flagged cost as clean.
setup_time_sNoSetup time for the whole lot at `quantity`, in seconds.
material_noteNo
calculation_idYes
machine_time_sNoMachine time per unit at `quantity`, in seconds: the billable run plus the finishing pass under the allowance.
material_stockNoThe stock the part is bought as — format, size, parts per stock — its mass balance, and the material line's purchase and credits, at the lot the calculation was priced for whichever quantity was asked. Null on a bought-in part and on a calculation priced before 2026-08-28, which recorded no material detail; one priced before the 2026-09-26 release states no scrap or remnant mass and no bar length.
cost_categoriesNoPer-unit cost by category, keyed by the cost sheet's own bucket slugs (material, setup, machine, labour, programming, tooling, inspection, finishing, subcontract, then the surcharge ladder). The top level of ``cost_lines`` flattened: same numbers, in the calculation's currency, adding up to the price per part.
currency_factorNoWhat every money figure here was multiplied by to carry it from the environment's rate currency into `currency`; 1.0 when the two are the same. The prices and per-lot charges in a cost line's `label_params` are in the rate currency, so a line's amount is that arithmetic (mass x price per kilogram, time x rate) times this factor — and times the calibration it was charged at on a calibrated environment. Absent where the calculation does not state it.
machine_name_at_nNoThe machine the figures at `quantity` were priced on, where it differs from or restates the calculation's own route.
material_resolvedNo
selection_failureNoThe same refusal as data when no machine in the costing environment could make the part.
cost_sheet_rebuiltNoTrue when the sheet was reconstructed from the rates, times and cost lines this calculation stored rather than recorded while it was priced. A reconstructed sheet carries the cost categories and the surcharge ladder but not the per-machine, per-clamping or per-operation tiers — those are recorded only while pricing and cannot be derived afterwards. Every amount is the amount charged either way. Null when no sheet was read for this persona.
costing_environment_idNoThe costing environment this was priced in — pass it to arcnm_cost_factors to read the factors named in each line's ``factors``, their range and where each one is saved.
inputs_changed_since_runNoNull when this price reflects every input on its part revision. Otherwise {roles, corrections, latest_at}: files attached and corrections applied to the part after the run read its inputs, which a new calculation reads and this one did not.
environment_changed_since_runNoNull when this price was computed on its costing environment as it stands. Otherwise {latest_at}: the environment was edited after the run read it, and a new calculation prices with the current setup while this result does not.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

Score is being calculated.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources