Jarroba Tools · Calculation

io.github.Invarato由 GitHub 账号 Invarato 发布v0.3.0更新于 Oct 29, 2026

Maths a model gets wrong: units with dimensional checking, equations, sheets. 5 tools, local.

发布方自己的服务:calc.engineer

已验证STDIO仅桌面开发者工具数据与分析

概览

AI 生成的概览

本地 MCP 服务器,提供五个计算工具:带单位的算术、方程求解、计算表、符号求导与分步推导。

可以做什么
  • 进行带单位与量纲检查的算术运算,包括单位换算和矩阵行列式
  • 求解单个方程或线性方程组,并说明结果是精确还是近似、搜索区间及未显示的复根数量
  • 运行多行计算表,变量向下传递、单位随数值传递、错误只留在本行
  • 计算保留单位的精确符号导数,支持高阶与在指定点求值
  • 给出线性或二次方程、导数与高斯消元的分步推导
适用场景
适合需要做数学计算且错误答案容易看似正确的场景:单位换算、量纲检查、多根方程,或需要给人阅读的推导过程。它是本地离线运行的小型替代方案,不必依赖模型自身的算术。
运行要求
通过 stdio 在本机运行,通常用 npx 启动 npm 包 @jarroba/mcp-calc。需要 Node.js,无需 API 密钥或账号。可选环境变量 JARROBA_MCP_DOMAINS 用于选择发布哪些工具域。
安装前请注意
不访问网络、不上传数据,因此不涉及凭据。它明确不做符号化简,也不支持积分、极限和不等式,分步推导仅限二次及以下方程;使用时应留意这些已声明的限制。计算表中的汇率由调用方自行提供。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Jarroba Tools · Calculation,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

@jarroba/mcp-calc

An MCP server for the maths a language model gets wrong — and, above all, for the ones it gets wrong silently.

bash
claude mcp add jarroba-calc -- npx -y @jarroba/mcp-calc
jsonc
// Claude Desktop, Cursor, Cline, VS Code…{ "mcpServers": { "jarroba-calc": { "command": "npx", "args": ["-y", "@jarroba/mcp-calc"] } } }

5 tools · ~1.6k tokens of context · stdio, runs on your machine · nothing is uploaded, no API key.

Why this exists

A model that gets 17 * 23 wrong is not the problem: that one is easy to catch. The problem is the answer that looks right.

  • 5 km + 300 m. Not a hard sum — but is the answer 305, 5.3, or 5300? A dimensional slip produces a number, not an error, and the number travels into the next formula.
  • x^3 - 1 = 0. «x = 1» is true, and it is also only a third of the answer. A tool that stops there and says nothing teaches the caller that there was nothing else.
  • 9.8 m/s^2 * t^2 / 2. Here m, s and t are all names of units and perfectly ordinary variable names. Read them wrong and you get a plausible quantity in the wrong dimension.

So every tool here reports how sure it is, not just what it found: exact or approximate, over which interval it searched, how many complex roots it is not showing, and which names it read as units. The one thing none of them will do is fill a gap with something plausible.

The tools

calc_evalArithmetic with units and dimensional checking: 100 km/h to m/s, 5 km + 300 m, 70 kg to lbs, det([[1,2],[3,4]]). Adding metres to kilos is an error, not a silent number. Flags results that are not finite (NaN, ±∞), and says which names it read as units
calc_solveOne equation (x^2 - 5x + 6 = 0, sin(x) = 0.5) or a linear system, one equation per line. Says whether the answer is exact or approximate, over which interval it searched, the degree of the polynomial and how many complex roots are not shown. Never invents a root it did not find
calc_sheetA multi-line calculation sheet with the result of every line. Variables carry downwards, units travel with the value, # starts a comment, ans is the previous result, and an error stays on its own line instead of killing the sheet. Declare currencies with # @moneda USD = 1.08 EUR — you supply the rate, so the sheet still computes the same thing next year. Optional Markdown table out
calc_deriveExact symbolic derivatives that keep the units: d/dx (3 m * x) is 3 m, not 3. Higher orders, and can evaluate the result at a point. Refuses to answer «0» when the variable is not in the expression, because a correct zero for the wrong question is the worst answer there is
calc_stepsThe worked steps, verified: a linear or quadratic equation, a derivative (naming the rule), or Gaussian elimination row by row. When it cannot explain a case it returns covered: false instead of writing a plausible derivation — which is the point, if a person is going to read it

What it will not do

  • No symbolic simplification. It was the obvious sixth tool and it was dropped after measuring: the engine leaves (x+1)^2 - (x-1)^2 untouched (it is 4x) and does not know sin²+cos²=1. A tool that hands back your own input under the label "simplified" is worse than no tool, because the caller cannot tell «already simplest» from «I could not do it».
  • No integrals, no limits, no inequalities. Not supported, and said so here rather than discovered at the wrong moment.
  • Steps beyond degree 2 for equations. calc_solve still answers exactly; what is missing is the explanation, and calc_steps says which cases it covers in every response.

Where it comes from

The engine is the same code that runs the calculator at jarroba.com/tools — pure TypeScript, ~200 unit tests, no server. This package is the whole catalogue filtered down to the calculation domain; if you want the other 95 tools (logs, tests, SQL, SPARQL, diagrams…), install @jarroba/mcp instead. You can also widen this one without switching packages: JARROBA_MCP_DOMAINS=calc,core.

MIT. Nothing here talks to the network. Source: github.com/Invarato/jarroba-mcp.

来源:mcp/packages/calc/README.md,提交 b94171a

工具

0
SourceWeft 尚未在沙箱中启动过该软件包,因此其工具未知。

版本历史

9
  1. v0.3.0最新Oct 29, 2026
  2. v0.2.0Oct 23, 2026
  3. v0.1.11Oct 21, 2026
  4. v0.1.10Oct 18, 2026
  5. v0.1.9Oct 9, 2026
  6. v0.1.7Oct 2, 2026
  7. v0.1.6Sep 29, 2026
  8. v0.1.5Sep 26, 2026
  9. v0.1.4Sep 16, 2026

评分

已满足适用检查项的 50%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分

其他 Calc 集成