Metamodel

io.github.joegra2003由 GitHub 帳號 joegra2003 發布v1.2.0更新於 Oct 28, 2026

AI-callable calculators and engineering models with real formulas. No hallucinated math.

已驗證Streamable HTTP可網頁執行開發者工具資料與分析

概覽

AI 產生的概覽

讓助理瀏覽已發布的 MetaModel 計算器、讀取其輸入輸出結構,並執行以公式為基礎的運算,而不是自行估算數學結果。

可以做什麼
  • 列出已發布的計算器與工程模型,包含名稱、描述、權杖和模型名稱
  • 取得專案結構:模型名稱、含型別與預設值和驗證規則的輸入參數、輸出欄位與公式
  • 將專案匯出為易讀的 KN 記法文字,此表示刻意省略部分內容
  • 送出一次輸入值即可執行運算,輸入會依屬性名稱自動路由,並回傳所有模型的輸出,包括跨模型串接結果
適用情境
適合需要確定性、有公式依據的數值時使用,例如尺寸計算、定價、成本估算、工程或生活類計算器,而不是讓模型自行做算術;前提是相關模型已在 MetaModel 上發布。
執行需求
可使用託管的遠端端點(免安裝,網頁與行動裝置皆可用),或透過 npx 以 stdio 執行本機 npm 套件 metamodel-mcp,後者需要 Node 18 以上版本。未宣告需要驗證、API 金鑰或環境變數;已發布專案是公開的,以發布權杖識別。
安裝前請注意
工具被描述為唯讀且無狀態,輸入運算後即丟棄;託管端點依用戶端限流。呼叫結構與運算工具需要列表回傳的發布權杖,未發布或已刪除的專案會回報找不到。結果取決於已發布模型本身的品質,標示為僅供展示的模型不應用於分析。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Metamodel,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Web executable,透過 Streamable HTTP。 遠端服務在工作區中設定後即可從網頁執行環境執行。

交給代理程式安裝

把這段提示詞貼上到 Claude Code、Codex、Cursor 等代理程式,或 SourceWeft 對話中。代理程式會讀取該伺服器的安裝指南,先向你展示發布者、端點和登入方式,經你同意後再把它新增到你的客戶端。金鑰不會寫進任何命令。

閱讀 https://sourceweft.com/mcp/io.github.joegra2003%2Fmetamodel/install.md,並按其中說明把這個 MCP 伺服器接入我的客戶端。修改任何設定之前,先告訴我它的發布者、端點和登入方式,等我確認。不要把 API 金鑰寫進命令或我會提交的檔案;問我金鑰應從哪裡取得。

檢視代理程式所依據的安裝指南

其他 MCP 客戶端

把它新增到你客戶端的 mcpServers 設定中。

{
  "mcpServers": {
    "metamodel": {
      "type": "http",
      "url": "https://www.metamodel.app/api/mcp"
    }
  }
}

README

MetaModel MCP Server

[npm] [MCP] [license]

An MCP (Model Context Protocol) server that lets AI assistants use MetaModel's formula engine for certified computation. Turn published calculators, pricing tools, and engineering models into AI-callable tools — no hallucinated math.

All tools are read-only. This server fetches published project schemas and runs stateless computations. It never writes, modifies, or stores any data.

Quick Start

Remote (hosted) — easiest

No install. Add the URL as a custom connector:

https://www.metamodel.app/api/mcp
  • Claude.ai / Claude Desktop: Settings → Connectors → Add custom connector → paste the URL
  • Claude Code: claude mcp add --transport http metamodel https://www.metamodel.app/api/mcp

Works on web and mobile; no Node required. The hosted endpoint is stateless, read-only, and rate-limited.

Claude Desktop

Add to your Claude Desktop config (~/Library/Application Support/Claude/claude_desktop_config.json on macOS):

json
{  "mcpServers": {    "metamodel": {      "command": "npx",      "args": ["-y", "metamodel-mcp"]    }  }}

Claude Code

bash
claude mcp add metamodel -- npx -y metamodel-mcp

Other MCP Clients

Any MCP-compatible client can connect via stdio:

bash
npx -y metamodel-mcp

Tools

metamodel_list_projects

Browse available calculators and engineering models. Returns project names, descriptions, publish tokens, and model names.

  • Annotations: readOnlyHint: true

metamodel_get_schema

Discover inputs and outputs for a specific project. Returns model names, input parameters (with types, defaults, validation rules), output fields, and formulas.

  • Annotations: readOnlyHint: true
ParameterTypeRequiredDescription
tokenstringYesProject publish token (from metamodel_list_projects)

metamodel_compute

Run a computation with input values. Send inputs once — they're auto-routed to the correct model by property name. Outputs from all models are returned, including cross-model cascading.

  • Annotations: readOnlyHint: true
ParameterTypeRequiredDescription
tokenstringYesProject publish token
modelstringNoTarget a specific model. When omitted, returns all models (recommended).
inputsobjectNoInput values as key-value pairs. Auto-routed to the correct model. Omitted inputs use defaults.

Examples

Example 1: List Available Projects

Prompt: "What calculators are available on MetaModel?"

Tool call: metamodel_list_projects()

Response (truncated):

json
{  "projects": [    {      "token": "989bc6ae-e4d7-4585-8908-bfd03358043e",      "name": "Deck Builder",      "description": "Interactive deck builder with code-compliant sizing. Uses LOOKUP tables for beams, frost depths, and railing requirements.",      "models": ["deck", "platformModel", "beamsModel", "postsModel", "railingModel", "summaryModel"]    },    {      "token": "fdc5fbef-9d4b-46c3-b72d-1950e03d4bf4",      "name": "Building Engineer",      "description": "Complete building engineering calculator. Enter room dimensions to auto-size HVAC, electrical, and lighting systems with full cost estimation.",      "models": ["room", "hvac", "electrical", "lighting", "costEstimator"]    },    {      "token": "363c7753-ac4b-4de4-b1e7-e4536cb2f9bb",      "name": "Life Expectancy Calculator",      "description": "Estimate your life expectancy based on age, sex, and lifestyle factors.",      "models": ["basics", "lifestyle", "results"]    }  ]}

Example 2: Get Project Schema

Prompt: "What inputs does the Building Engineer calculator need?"

Tool call: metamodel_get_schema({ token: "fdc5fbef-9d4b-46c3-b72d-1950e03d4bf4" })

Response (truncated):

json
{  "projectName": "Building Engineer",  "models": [    {      "name": "room",      "title": "Room Dimensions",      "inputs": [        { "name": "length", "type": "number", "defaultValue": 35.26 },        { "name": "width", "type": "number", "defaultValue": 60 },        { "name": "height", "type": "number", "defaultValue": 12 }      ],      "outputs": [        { "name": "floorArea", "formula": "floorArea = length * width" },        { "name": "volume", "formula": "volume = length * width * height" }      ]    },    {      "name": "hvac",      "title": "HVAC Sizing",      "inputs": [        { "name": "climateZone", "defaultValue": "cold" },        { "name": "btuFactor", "type": "number", "defaultValue": 25 }      ],      "outputs": [        { "name": "btuRequired", "formula": "btuRequired = volume@room * btuFactor" },        { "name": "tonnage", "formula": "tonnage = btuRequired / 12000" },        { "name": "annualCost", "formula": "annualCost = tonnage * 120" }      ]    }  ]}

Note the cross-model references: volume@room means "use the volume output from the room model." MetaModel handles this cascading automatically.

Example 3: Run a Computation

Prompt: "Size the HVAC, electrical, and lighting for a 50×80 ft room with 14 ft ceilings"

Tool call: metamodel_compute({ token: "fdc5fbef-...", inputs: { length: 50, width: 80, height: 14 } })

Response:

json
{  "models": {    "room": {      "outputs": { "floorArea": 4000, "volume": 56000, "wallArea": 3640 }    },    "hvac": {      "outputs": { "btuRequired": 1400000, "tonnage": 116.7, "annualCost": 14000 }    },    "electrical": {      "outputs": { "outletsNeeded": 304, "totalAmps": 456, "circuitCount": 23 }    },    "lighting": {      "outputs": { "totalLumens": 201240, "fixtureCount": 51, "totalWattage": 2040 }    },    "costEstimator": {      "outputs": {        "hvacMaterial": 415917, "electricalMaterial": 18400,        "lightingMaterial": 7650, "totalLabor": 89321, "grandTotal": 531288      }    }  },  "metadata": { "projectName": "Building Engineer", "evaluationMs": 7.1 }}

One API call → room geometry, HVAC sizing, electrical load, lighting design, and full cost estimate. All computed from real formulas in ~7ms, not LLM-generated.

Development

To test against a local MetaModel instance:

bash
# Clone and buildcd packages/mcp-servernpm installnpm run build
# Run with local URLnode dist/index.js --url http://localhost:3000
# Test with MCP Inspectornpx @modelcontextprotocol/inspector node dist/index.js --url http://localhost:3000

Privacy Policy

MetaModel's MCP server is stateless and read-only:

  • No authentication required — all published projects are public
  • No personal data collected — computations are anonymous
  • No data stored — inputs are evaluated and discarded immediately
  • No cookies or tracking — the server makes direct API calls to metamodel.app
  • No third-party data sharing — results go only to the requesting client

Full privacy policy: https://www.metamodel.app/privacy

About MetaModel

MetaModel lets you build calculators, pricing tools, and engineering models with a spreadsheet-like formula language. Describe what you want, AI builds it, publish in seconds. Models become API-callable computation endpoints that any AI assistant can use via this MCP server.

License

MIT

Troubleshooting

  • "Project not found or not published" — the token belongs to an unpublished or deleted project. Ask the project owner for a current publish token, or list what's available with metamodel_list_projects.
  • Unknown input names — inputs are matched by property name. Call metamodel_get_schema first; it returns the exact input names, types, and defaults for the project.
  • Inputs sent as a JSON string — pass inputs as a JSON object ({"width": 12}), not a stringified object. Stringified inputs fail with an "Unknown input" error naming a character index.
  • Rate limits (hosted endpoint) — the hosted URL is rate-limited per client. For heavy use, run the npm package locally with your own network egress.
  • Node version (local install) — the stdio server needs Node 18+.

來源:README.md,提交 3faf819

工具

4

metamodel_list_projects

Browse available MetaModel calculators and engineering models. Returns project names, descriptions, tokens, and model names for each published project.

無需輸入參數。

metamodel_get_schema

Get the input/output schema for a published MetaModel project. Returns model names, input parameters (with types, defaults, validation), and output fields. Models marked "presentation": true are display scaffolding (3D scenes etc.) — skip them for engineering analysis. Use a token from metamodel_list_projects.

輸入參數token必填

metamodel_export_kn

Export a published MetaModel project as KN notation — a human-readable text spelling of the model: nested Component blocks, "Name: value" literals, "Name: expression" formulas, dotted cross-references. Deliberately lossy (rules, indicators, validations, table data and views are omitted). Useful for reading or diffing the engineering knowledge behind a project.

輸入參數token必填

metamodel_compute

Run a computation on a MetaModel project. Send input values and get computed outputs from all models. Inputs are auto-routed to the correct model by property name. Models marked "presentation": true in results are display scaffolding, not engineering outputs. Use metamodel_get_schema first to discover available inputs and outputs.

輸入參數modeltoken必填inputs

版本歷史

1
  1. v1.2.0最新Sep 16, 2026

評分

已滿足適用檢查項的 90%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通必需25 分
  • 已宣告認證方式必需10 分
  • 已列出工具必需15 分
  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分

    請在儲存庫或註冊中心條目中宣告授權條款。