Jacobian

io.github.morluto由 GitHub 账号 morluto 发布v0.23.0更新于 Oct 27, 2026

Executable mathematics and independent verification for AI agents.

已验证STDIO仅桌面数据与分析AI 与机器学习

概览

AI 生成的概览

Jacobian 为 AI 助手提供可搜索的类型化数学运算词表,可查找、执行并组合运算以获得精确、可验证的结果。

可以做什么
  • 按需求或精确契约查找并查看类型化数学运算
  • 执行单个有界运算并返回类型化的精确结果
  • 把类型化结果传入后续运算进行组合
  • 覆盖多项式代数、精确线性代数、图论、有界 SAT/SMT、有限代数、概率、几何与拓扑
适用场景
适合需要可信精确计算而非自由推理的场景:行列式、最大公约数、图问题、SAT/SMT 检验,或把小型已验证运算逐步组合成解法。
运行要求
以 stdio 在本地运行。setup 命令需要 Node.js 20.17+、22.13+ 或 23.5+,且 PATH 中有 uvx;Python 服务通过 uvx 或 pip 运行,受测契约要求 glibc Linux x86-64 上的 CPython 3.12 或 3.13。少数运算可选依赖 Singular 与 QEPCAD。未声明认证或环境变量。
安装前请注意
setup 会写入智能体配置文件,确认前应审阅变更,避免无人值守地使用 --yes。项目处于预稳定阶段,实验性运算契约可能随版本变化。Alpine/musl 无法安装完整的必需依赖栈。

安装

在 SourceWeft 中

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

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

其他 MCP 客户端

参照 仓库 中的启动说明。

README

English · 简体中文

Jacobian

An executable mathematical vocabulary for agents: discover one typed operation, run it, and compose its result.

[CI] [PyPI] [npm] [Supported Python versions] [MIT license]

Jacobian is an MCP server that gives AI agents a searchable vocabulary of typed mathematical operations. math.find matches a mathematical need or inspects one exact contract, and math.run executes it and returns its typed result. The same mathematical library is also available through a CLI and native Python API.

Each operation establishes one stable, reusable mathematical postcondition rather than prescribing a workflow or proof strategy. Results are exact where claimed and make approximation, incompleteness, or uncertainty explicit.

Jacobian's hypothesis is that mathematical reasoning benefits from an executable vocabulary of semantically scoped, bounded operations. Rather than exposing large domain solvers or precomposed workflows, Jacobian exposes mathematical primitives that agents can search for and compose into solutions beyond what any individual operation was designed to solve. The library supplies trustworthy mathematical moves; the reasoning model decides which moves to make, how to combine their results, and when to stop. Keeping the operations semantically narrow and domain-owned preserves that search space instead of baking one proof strategy or workflow into the tools themselves.

See Executable mathematical vocabulary for what semantic atomicity means and how the operation vocabulary grows.

Quickstart

Set up Jacobian for your agents with a single command. The setup command requires Node.js 20.17+, 22.13+, or 23.5+ and uvx on your PATH.

sh
npx jacobian@latest setup

Choose detected agents and review the changes before they are written. Setup does not install Node.js, Python, uv, or an agent. For automation, preview an explicit plan with npx jacobian@latest setup --codex --dry-run; use --yes only with explicit agent flags or --all.

To refresh an existing registration explicitly, run npx jacobian@latest upgrade and select the agents to update. The generated launcher pins the exact release resolved by npm.

Run the canonical Python MCP command without installing Jacobian globally:

sh
uvx --python 3.12 --from jacobian jacobian-mcp

Where an MCP host requires an npm command, the npm package is a deterministic carrier for that same command:

sh
npx jacobian mcp

For a persistent installation:

sh
python -m pip install jacobianjacobian-mcp

That package includes Jacobian's exact maintained Python backend stack: SymPy, NetworkX, Z3, and Python-FLINT. A normal Python or npm installation therefore exposes the same built-in Python-backed operation portfolio. The tested binary-install contract is CPython 3.12 or 3.13 on glibc Linux x86-64; the release gate installs the built wheel and starts Jacobian on both Python versions. Other systems may have compatible upstream wheels, but are not part of the tested release contract yet. In particular, Alpine/musl cannot install the complete mandatory stack from PyPI.

Singular and QEPCAD are optional system runtimes for a small subset of operations. The Python installation does not provision them, and ordinary operations do not require Docker. Python callers can use jacobian.backends.check_backend; MCP inspection reports availability in the server environment. See backend requirements for exact coverage and setup.

The Python distribution contains the mathematical kernel, CLI, and MCP server. The npm package deterministically maps its exact package version to the corresponding uvx invocation.

Compute one bounded result

An ordinary operation returns mathematics first. For example, matrix.determinant.compute accepts one exact rational matrix and returns its determinant directly. Callers compose results by passing their typed values to a subsequent operation.

For a local terminal workflow, inspect the exact installed contract and run one of its examples with the CLI:

sh
jacobian inspect integer.compute.extended_gcdjacobian run integer.compute.extended_gcd --json '{"left":"84","right":"30"}'

The second command returns the gcd and Bézout coefficients as JSON. In an MCP host, use math.find in inspection mode to read the same contract and math.run with the same payload shape. See Discover and invoke operations for that agent workflow.

Available mathematics

The built-in portfolio covers work in:

  • polynomial maps and polynomial algebra;
  • exact linear algebra;
  • graphs, paths, colorings, and isomorphism;
  • bounded SAT and SMT solving;
  • finite algebra, probability, geometry, and topology.

SAT and SMT operations use the maintained Z3 Python binding directly. Use math.find to match the mathematical result needed, then use its inspection mode on a promising operation before calling math.run once.

See the domain operation library for the maintained operation portfolio and backend requirements.

Status

Jacobian 0.23.0 is pre-stable. Its published package and operation contracts describe the supported surface; experimental operation contracts may change between releases.

Documentation

Contributing

Jacobian uses Python 3.12, uv, and a small Makefile:

sh
make setupmake affected AFFECTED_BASE=origin/main

Read CONTRIBUTING.md before changing code. It documents focused test commands, verification rules, documentation placement, and pull-request expectations.

License

MIT

来源:README.md,提交 bad9b89

工具

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

版本历史

3
  1. v0.23.0最新Oct 3, 2026
  2. v0.22.0Sep 17, 2026
  3. v0.21.0Sep 16, 2026

评分

已满足适用检查项的 50%

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

  • 近 30 天内可连通25 分

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

  • 已声明认证方式10 分

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

  • 已列出工具15 分

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

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