
TakeoffMetric Construction Calculators
io.github.tresor4kv0.1.1更新於 Oct 5, 2026
Construction takeoff calculators (concrete, gravel, asphalt, roofing) and sourced constants.
概覽
提供 15 個建築工程量計算器(混凝土、礫石、瀝青、屋面、木材、風管),並可檢索附出處的估算常數表。
- 功能
- 這是一個本機 stdio MCP 伺服器,把 TakeoffMetric 的建築計算器提供給 MCP 用戶端。內含 15 個計算器,涵蓋混凝土板與成本、鋼筋、礫石、回填土、砂、表土、立方碼、瀝青、板英尺、屋面與屋面坡度、圍籬、風管尺寸和鋪面基層,另有 list_calculators 與 search_constants。每個計算器回傳 JSON 文字區塊,含主要與次要結果、工程量清單、警告與假設。輸入項皆為選填,未提供時採用引擎預設值;結果僅為估算。
- 適用情境
- 適合讓助理把尺寸換算成建築材料用量與訂購量,用於建築或景觀估算,或依出處查詢估算常數。適用於前期工程量與預算作業,不適用於合規設計。
- 執行需求
- 使用者電腦需 Node.js 20 或以上版本;透過 stdio 在本機執行,通常以 npx 啟動。未宣告帳號、API 金鑰、環境變數或標頭,伺服器不會發出網路請求。僅支援桌面端。
安裝
在 SourceWeft 中
- 開啟 儀表板中的 TakeoffMetric Construction Calculators,將其新增到工作區。
- 為需要使用其工具的對話啟用該服務。
Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。
其他 MCP 客戶端
參照 儲存庫 中的啟動說明。
README
takeoffmetric-mcp
A Model Context Protocol server (stdio) that runs the construction calculators of TakeoffMetric (https://takeoffmetric.com/) from an MCP client. It ships 15 calculators, a tool that lists them, and a search over a table of estimating constants in which every row names its published source.
The calculators are not re-implemented here. The site's TypeScript engine is bundled unchanged into
vendor/engine.mjs, and the test suite checks that each tool returns what the engine source computes.
Install
Requires Node.js 20 or later.
Claude Desktop (claude_desktop_config.json):
Claude Code:
Tools
Two more tools complete the server:
list_calculators: tool name, title, page URL, one-line description and input keys of each calculator.search_constants: rows of the constants table matched by a substring (query) and/or acategory, 50 rows at most per call.
Inputs
Each calculator's input schema is generated at start-up from the engine's own input list, so keys, bounds, options and defaults are the ones of the matching form on the site.
- Every input is optional. A key you leave out takes the engine default, as an untouched form field does.
systemis"imperial"(default) or"metric". It sets the unit the numbers are typed in and the defaults.- A length is a number in the unit named in its description, or a string that carries its unit, such as
"20 ft 6 in". - An unknown key or an out-of-range value returns
isError: truewith one message per field. Nothing is computed from a clamped value.
Output
A JSON text block: calculator, url, system, engine_version, revised, inputs_used, primary, secondary,
takeoff, warnings, assumptions. inputs_used is the engine's normalized input (lengths in metres). assumptions
lists what the result rests on, and warnings carries the cautions the page would show.
Worked example
Request (tools/call, tool calc_concrete_slab):
Response, copied from a run of this server (whitespace condensed):
How the numbers are sourced
- Formulas, constants and rounding rules come from the engine bundle.
vendor/ENGINE_COMMIT.txtrecords the commit it was built from, and every response carries the calculator'sengine_versionandreviseddate. - Each tool computes with the same engine as its page on the site.
calc_gravel, for instance, runs the engine behind https://takeoffmetric.com/earthwork/gravel-calculator/. search_constantsreadsvendor/constants.csv(dataset 1.1.0, 148 rows). Each row gives the value, its unit, the SI value, the condition it applies to, and the publisher, title and URL of the document it was read from. 55 rows carry no value because their publishers do not allow republication: they returnvalue: null,values_withheld: true, the publisher's domains inwithheld_hosts, and the URL where the value can be read.- The site's methodology (tested formulas, assumptions shown on the page, sources as documents, versioned sheets) is at https://takeoffmetric.com/methodology/.
Limits
- Results are estimates. Confirm quantities with your plans, your supplier and your local code before ordering or building.
- This release covers 15 calculators. Calculators that apply building-code provisions, or that rely on third-party tables the site links to without reproducing them, are not part of it.
- Responses carry numbers and notes only: no drawing and no CSV export.
unitfields use the engine's unit codes. Several results that are not plain counts are codedea; readlabelanddisplayfor their meaning.- Prices are whatever you type in. The server holds no price data and makes no network request.
- Transport is stdio only.
Development
The tests run with this repository alone. npm run sync-engine and npm run make-fixtures are maintainer scripts:
they rebuild vendor/ and test/fixtures.json from the site's source repository, which users of the package never need.
License
Server code: MIT. Calculation engine (vendor/engine.mjs): copyright TakeoffMetric, distributed with this package to run
as part of it, not licensed for modification or separate redistribution. Both are set out in LICENSE.
Constants table: CC BY 4.0 for the compilation; federal values are public domain; any other value stays under its
publisher's terms. See DATA_LICENSE.md.
來源:README.md,提交 3b10dc6
工具
0版本歷史
1- v0.1.1最新Oct 5, 2026

