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 分