Skip to content

com.mfgcalcs/mfgcalcs

by mfgcalcs.com · remote · no sign-in to list tools · v1.0.0 · published by com.mfgcalcs

5,400+ manufacturing calculators plus live U.S. tariff, PMI, cost-index, wage, and forecast data.

Changes · 3

17 tools: 3 change things and 14 only read.

Scanned Oct 21, 2026

No check matched anything in the tool definitions. No finding is not a safety guarantee. How the checks work.

claude mcp add --transport http mfgcalcs https://www.mfgcalcs.com/api/mcp

Tools

Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.

17 tools

Changes things 3Claude Code: ask
  • askAnswer manufacturing questions from committed data; deterministic, no LLM.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Answer manufacturing questions from committed data; deterministic, no LLM. Missing subjects and product ties ask for clarification. Calculators collect required inputs, retain corrections via `context`, and run when complete; defaults appear only in explicit worked examples. Statistics name period, frequency, scope and measure. `detail`: `answer` is compact, `evidence` adds scoped evidence and calculator guidance, `full` is default. Pass returned `context` for follow-ups. Shared by MFGChat, MFGSearch and `/api/answer`. Cite resolved sources. Try: {"query":"OEE","detail":"evidence"}
  • optimize_sourcingSolve the cheapest legal supplier mix as a real linear program: given candidate suppliers with unit costs, tariff rates, freight and capacities, return the exact cost-minimizing al…No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Solve the cheapest legal supplier mix as a real linear program: given candidate suppliers with unit costs, tariff rates, freight and capacities, return the exact cost-minimizing allocation under a demand requirement, per-supplier capacity limits, and an optional diversification cap on any one supplier's share. Solved by HiGHS, the open-source solver inside SciPy, so this is the PROVEN optimum with dual prices, not a heuristic ranking. Answers 'how should I split this volume?', 'what does the diversification cap actually cost me?', and 'which supplier's capacity is the binding constraint?'. Pass suppliers as a JSON array of objects with name and unitCost, plus optional tariffPct, freightPerUnit and capacity; landed cost per unit is unitCost x (1 + tariffPct/100) + freightPerUnit. Call it with no arguments for the parameter documentation and a runnable example. The LP text is echoed back so the run is reproducible. Cite the returned url.
  • run_calculatorRun a manufacturing calculation.No findings

    Why it is in this group

    • The name "run_calculator" says "run": a word for a change.
    Description, as the server wrote it
    Run a manufacturing calculation. Provide inputs by field key or slugified label (see get_calculator); missing inputs use the calculator's documented defaults. Returns labeled results with units, the formula, and a citation URL that should be shared with the user. Inputs are checked against their documented min/max; an impossible value is refused by name. derivation.confidence grades the OUTPUT: "none" if any result row could not be computed. Try: {"tool":"oee"} (defaults fill every input)
Only reads 14Claude Code: allow
  • briefDescribe a SITUATION rather than a question and get every fact bearing on it, each answered and cited.No findings

    Why it is in this group

    • The description's first verb is "describe": a word for reading.
    Description, as the server wrote it
    Describe a SITUATION rather than a question and get every fact bearing on it, each answered and cited. `ask` for one figure, `brief` for a decision. Names what it could not establish. Try: {"situation":"sourcing bearings from china"}
  • get_calculatorGet a calculator's inputs (labels, units, defaults, min/max) and formula before running it.No findings

    Why it is in this group

    • The name "get_calculator" says "get": a word for reading.
    Description, as the server wrote it
    Get a calculator's inputs (labels, units, defaults, min/max) and formula before running it. requiresPositive marks a field whose documented minimum of 0 is really exclusive. Use the tool slug from search_calculators. Try: {"tool":"oee"}
  • get_change_eventsGet every published or revised observation in order with a cursor.No findings

    Why it is in this group

    • The name "get_change_events" says "get": a word for reading.
    Description, as the server wrote it
    Get every published or revised observation in order with a cursor. Poll by offset instead of re-pulling series. Same engine as /api/events and the vintage archive.
  • get_citationGet a ready-to-paste citation for an MFG Calcs dataset — including, for vintage-tracked datasets, the ?asOf= URL that returns the numbers exactly as they read on the access date, s…No findings

    Why it is in this group

    • The name "get_citation" says "get": a word for reading.
    Description, as the server wrote it
    Get a ready-to-paste citation for an MFG Calcs dataset — including, for vintage-tracked datasets, the ?asOf= URL that returns the numbers exactly as they read on the access date, so the citation stays checkable after revisions instead of rotting. Carries a stable site identifier rather than a DOI; none has been minted for this collection yet, and the payload says so. Call with no dataset for the catalogue of citable datasets. Same engine as /api/cite.
  • get_freshnessGet the freshness contract for MFG Calcs' live data: every series with its measured publishing cadence, latest period, age in days, and an honest state (current | due | stale | unk…No findings

    Why it is in this group

    • The name "get_freshness" says "get": a word for reading.
    Description, as the server wrote it
    Get the freshness contract for MFG Calcs' live data: every series with its measured publishing cadence, latest period, age in days, and an honest state (current | due | stale | unknown). This is the number that decides 'answer from memory or call the tool' — and the cheapest way to know whether a re-sync is worth it. Derived from the committed data-status census; stale series are reported as stale.
  • get_indexFetch a published MFG Calcs index, board, ledger, forecast, vintage, revision record, seasonal series, or HS-NAICS map.No findings

    Why it is in this group

    • The name "get_index" says "get": a word for reading.
    Description, as the server wrote it
    Fetch a published MFG Calcs index, board, ledger, forecast, vintage, revision record, seasonal series, or HS-NAICS map. Tariff targets distinguish the tracked manufacturing panel's observed effective calculated-duty rate; origins are statistically associated with those reported Calculated Duties, not causes. The selected index's JSON Schema branch lists its accepted fields; unsupported, dependent, or conflicting fields return invalid params. Try: {"index":"get_state_cost_index","filter":"Ohio"}.
  • get_provenanceGet the MFG Calcs Provenance Manifest: the verifiable record for every branded index and ledger on the site.No findings

    Why it is in this group

    • The name "get_provenance" says "get": a word for reading.
    Description, as the server wrote it
    Get the MFG Calcs Provenance Manifest: the verifiable record for every branded index and ledger on the site. For each one it returns a SHA-256 of the committed artifact and of every committed public-data input it was built from, plus the generator that reproduces it and the page that renders it. Use this to VERIFY a number before quoting it: re-hash the committed artifact (integrity), re-run the named generator on the committed inputs (reproducibility), and read the git history (timestamp). Takes no arguments. The hashes prove the artifacts are intact and reproducible, not the correctness of the underlying government data. Cite the returned url.
  • get_receiptsGet the append-only archive of Ed25519-signed data receipts: every value signed for a series within the rolling window (current + previous signing year), revisions retained, each e…No findings

    Why it is in this group

    • The name "get_receipts" says "get": a word for reading.
    Description, as the server wrote it
    Get the append-only archive of Ed25519-signed data receipts: every value signed for a series within the rolling window (current + previous signing year), revisions retained, each entry carrying its claim, claimHash, signature, and keyId. Call with no series for the catalogue plus the keyId→publicKey map and the permanent yearly ledger URLs. Same engine as /api/receipts. Try: {}
  • get_revisionsGet every restatement of a published figure with its old value, new value, and first-known date.No findings

    Why it is in this group

    • The name "get_revisions" says "get": a word for reading.
    Description, as the server wrote it
    Get every restatement of a published figure with its old value, new value, and first-known date. Filter by series, artifact, since, or limit; omit filters for the full record and per-series revision summary. Use it to judge whether a recent print needs a revision caveat. Cite the returned url.
  • get_vintagesGet the MFG Calcs Vintage Archive: reproduce what a series said on a past date, before later revisions.No findings

    Why it is in this group

    • The name "get_vintages" says "get": a word for reading.
    Description, as the server wrote it
    Get the MFG Calcs Vintage Archive: reproduce what a series said on a past date, before later revisions. Use series + asOf (YYYY-MM-DD) for the historical snapshot, series alone for its revision trail, or omit both for the catalogue. Multiple entries for one period indicate revision. Cite the returned url.
  • get_whats_newGet the daily what-changed digest for the newest data day, in one call with links deeper: every agency series that published a new reading, every agency value restated (derived sig…No findings

    Why it is in this group

    • The name "get_whats_new" says "get": a word for reading.
    Description, as the server wrote it
    Get the daily what-changed digest for the newest data day, in one call with links deeper: every agency series that published a new reading, every agency value restated (derived signals that recomputed are listed separately by name), every projection graded against its printed actual, and the day's Market Wire editions. Designed to be the first call of an agent's day: if `date` hasn't advanced since your last look, nothing moved. Empty days are reported empty with the reason, never padded. Try: {}
  • lookup_tariffLook up U.S.No findings

    Why it is in this group

    • The name "lookup_tariff" says "lookup": a word for reading.
    Description, as the server wrote it
    Look up U.S. manufacturing import tariffs: HTS General/Special fields, informational Chapter 99 references, observed effective calculated-duty rate, eligible families' aggregate customs unit value, source shares, and named-source HHI floor with retained-board coverage. Search by keyword, family, or HTS code. Schedule fields and Chapter 99 references do not establish entry liability; unit value is not a transaction price. USITC reference data, not a customs ruling. Cite the returned url. Try: {"query":"steel"}
  • search_calculatorsSearch MFG Calcs' library of 5,000+ manufacturing calculators (machining, molding, welding, OEE, cost estimating, energy, quality, maintenance, and more).No findings

    Why it is in this group

    • The name "search_calculators" says "search": a word for reading.
    Description, as the server wrote it
    Search MFG Calcs' library of 5,000+ manufacturing calculators (machining, molding, welding, OEE, cost estimating, energy, quality, maintenance, and more). Returns matching calculators with their tool slug for run_calculator. Try: {"query":"OEE"}
  • search_siteSearch everything on mfgcalcs.com beyond calculators: 64 live economic data series (imports, prices, wages, energy), 57 tariff families, state cost data, calculator categories, and…No findings

    Why it is in this group

    • The name "search_site" says "search": a word for reading.
    Description, as the server wrote it
    Search everything on mfgcalcs.com beyond calculators: 64 live economic data series (imports, prices, wages, energy), 57 tariff families, state cost data, calculator categories, and datasets. Returns typed matches with URLs to cite. Use search_calculators for the 5,000+ calculators themselves. Try: {"query":"industrial electricity price"}

This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.

Install

Pinned to version 1.0.0. Values in angle brackets are yours to fill in.

claude mcp add --transport http mfgcalcs https://www.mfgcalcs.com/api/mcp

Run in a terminal.

Claude Code permissions

Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.

.claude/settings.json
{
  "permissions": {
    "allow": [
      "mcp__mfgcalcs__search_calculators",
      "mcp__mfgcalcs__get_calculator",
      "mcp__mfgcalcs__lookup_tariff",
      "mcp__mfgcalcs__get_index",
      "mcp__mfgcalcs__get_provenance",
      "mcp__mfgcalcs__search_site",
      "mcp__mfgcalcs__get_whats_new",
      "mcp__mfgcalcs__get_receipts",
      "mcp__mfgcalcs__get_freshness",
      "mcp__mfgcalcs__get_change_events",
      "mcp__mfgcalcs__get_citation",
      "mcp__mfgcalcs__get_vintages",
      "mcp__mfgcalcs__get_revisions",
      "mcp__mfgcalcs__brief"
    ],
    "ask": [
      "mcp__mfgcalcs__run_calculator",
      "mcp__mfgcalcs__optimize_sourcing",
      "mcp__mfgcalcs__ask"
    ],
    "deny": []
  }
}

Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as mfgcalcs. Review it before you use it.