Real-time global intelligence dashboard. AI-powered news aggregation, geopolitical monitoring, and infrastructure tracking in a unified situational awareness interface
MCP server for typed math operations
Jacobian gives agents a vocabulary of mathematical operations they can discover, inspect, and run. It separates one bounded operation from the next, so you can chain exact results instead of relying on one large solver or a fixed proof workflow. The same backend is exposed through MCP, a CLI, and a Python API.
Builders who want their agent to search for math operations, inspect exact contracts, and run them in a local workflow.
You can hand your agent exact mathematical moves and compose their results without re-explaining the math each time.
What it does
Searchable operation vocabulary
`math.find` matches a mathematical need or inspects a single exact contract before you run it.
Typed execution
`math.run` executes the chosen operation and returns a typed result that you can feed into another operation.
CLI access
The same operation library is available through `jacobian inspect` and `jacobian run` for terminal workflows.
MCP server
`jacobian-mcp` exposes the math operations to MCP hosts, with `npx jacobian mcp` as the npm carrier command.
Backend portfolio
The maintained math stack includes SymPy, NetworkX, Z3, and Python-FLINT for exact linear algebra, graphs, SAT/SMT, and more.
Agent setup command
`npx jacobian@latest setup` detects supported agents and writes the registration for you.
How to get it
- 1Set up Jacobian for your agents with a single command. The setup command requires…
npx jacobian@latest setup
- 2Run the canonical Python MCP command without installing Jacobian globally
uvx --from jacobian jacobian-mcp
- 3Where an MCP host requires an npm command, the npm package is a deterministic carrier…
npx jacobian mcp
- 4For a persistent installation
python -m pip install jacobian jacobian-mcp
README
English · 简体中文
Jacobian
An executable mathematical vocabulary for agents: discover one typed operation, run it, and compose its result.
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.
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:
uvx --from jacobian jacobian-mcp
Where an MCP host requires an npm command, the npm package is a deterministic carrier for that same command:
npx jacobian mcp
For a persistent installation:
python -m pip install jacobian
jacobian-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:
jacobian inspect integer.compute.extended_gcd
jacobian 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.20.0 is pre-stable. Its published package and operation contracts describe the supported surface; experimental operation contracts may change between releases.
Documentation
- Documentation home: tutorials, how-to guides, reference, and explanations
- Architecture: runtime structure and trust boundaries
- Product model: operation contracts, ownership, and project boundaries
- Tool reference: MCP resources and invocation contracts
- Backend requirements: maintained Python backends
- Remote deployment: HTTP deployment and authentication
Contributing
Jacobian uses Python 3.12, uv, and a small Makefile:
make setup
make 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
Files in the repo
- .agents
- .devcontainer
- .github
- benchmarks
- containers
- deploy
- docs
- make
- npm
- research
- src
- tests
- tools
- typings
- .dockerignore
- .gitignore
- .jscpd.json
- .markdown-link-check.json
- .pre-commit-config.yaml
- .python-version
- .release-please-manifest.json
- .secrets.baseline
- .uv-version
- AGENTS.md
- CHANGELOG.md
- CONTRIBUTING.md
- Dockerfile
- LICENSE
- Makefile
- pyproject.toml
- README.md
- README.zh-CN.md
- release-please-config.json
- server.json
- uv.lock
Discussion (0)
Ask about usage, or say what you built with itSign in to join the discussion.
No comments yet. Be the first to say what this is good for.
More connectors
High-performance code intelligence MCP server. Indexes codebases into a persistent knowledge graph — average repo in milliseconds. 158 languages, sub-ms queries, 99% fewer tokens. Single static binary, zero dependencies.

Universal provider proxy for OpenAI Codex & Claude Code — use any LLM (Claude, Gemini, Grok, DeepSeek, Ollama…) with Codex CLI, App, SDK, and Claude Code
Git-native persistent memory for AI coding agents. Implements Google OKF v0.2 with sub-300µs in-memory BM25 search, embedded MCP server, and progressive disclosure. Slashes token bloat by 80% with zero external databases or dependencies. Built in pure Go.
Local-first code intelligence graph for MCP and CLI. Builds a persistent map of your codebase so AI coding tools read only what matters, with benchmarked context reductions on reviews and large-repo workflows.
Stop your AI from making things up — it proposes, deterministic tools decide, every claim checked against ground truth with evidence. Grounded facts and context survive resets. Reverse engineering is the proving ground. MCP server + CLI.