axiom-advanced-math-mcp
Exact symbolic math for LLMs: integrals, equations, matrices, and claim verification via Giac/Xcas. MCP server + CLI.
Install / Use
claude mcp add tufantunc -- npx -y github:tufantunc/axiom-advanced-math-mcpIf the server publishes to npm under a different name, use that package instead — check the repo README.
MCP Server
Model Context Protocol server
Quality Score
Category
AI & Machine LearningSupported Platforms
Tags
Our assessment of axiom-advanced-math-mcp
axiom-advanced-math-mcp scores 80/100 on our quality scale, 761st of 949 AI & Machine Learning skills we index.
Its MCP Server is 30 KB long, well organised into 45 sections with 20 code examples: a thorough specification that gives an agent plenty to work with.
It has 3 GitHub stars, so there is little community track record yet; judge it on its content.
Maintenance, license and trust
- The repository was last updated 17 days ago, so axiom-advanced-math-mcp is actively maintained.
- It is released under GPL-3.0, a copyleft license: you can use it, but modified versions you distribute must carry the same license.
- Its trust signals score 92/100, with 1 caution from licensing, adoption, age or documentation. These come from repository metadata, not a code audit — read the skill file before letting an agent act on it.
axiom-advanced-math-mcp compared with similar skills
All 4 of these similar skills score higher than axiom-advanced-math-mcp; compare them before choosing.
| Skill | Score | Stars | Updated | Format |
|---|---|---|---|---|
| axiom-advanced-math-mcp (this skill)by tufantunc | 80 | 3 | 17d ago | MCP Server |
| claude-memby thedotmack | 100 | 101.9k | today | CLAUDE.md |
| Agent-Reachby Panniantong | 100 | 100.1k | today | CLAUDE.md |
| Understand-Anythingby Egonex-AI | 100 | 87.2k | 8d ago | CLAUDE.md |
| headroomby headroomlabs-ai | 100 | 76.5k | today | CLAUDE.md |
Frequently asked questions
- How do I install axiom-advanced-math-mcp?
- Run
claude mcp add tufantunc -- npx -y github:tufantunc/axiom-advanced-math-mcp. The install tabs above show the steps for each supported agent. - Which AI agents does axiom-advanced-math-mcp work with?
- It is written for Claude Code and Claude Desktop, as a MCP Server file. Other agents that read the same format can often use it too.
- Is axiom-advanced-math-mcp safe to use?
- It is GPL-3.0-licensed and scores 92/100 on trust signals. Skills are instructions an agent will follow, so read the file before installing it and do not approve commands you do not understand.
- Is axiom-advanced-math-mcp still maintained?
- The repository was last updated 17 days ago, so axiom-advanced-math-mcp is actively maintained.
Skill content
View source on GitHubAxiom — Advanced Math MCP Server
Exact symbolic and numerical mathematics for LLMs — a real computer algebra
system (Giac/Xcas) behind the Model Context Protocol, and behind a shell
command. Published as axiom-math.

Quick start
As a CLI, straight away:
npx -y axiom-math compute 'integrate(sin(x)^3,x)' # -cos(x)+cos(x)^3/3
npx -y axiom-math verify 'diff(x^3,x) = 3*x^2' # exit 0 — it holds
As an MCP server, in any client's config:
{ "command": "npx", "args": ["-y", "axiom-math"] }
As an agent skill — drop in skills/axiom-math/SKILL.md, which teaches an agent the three commands and their exit codes.
Why Axiom?
LLMs often make calculation errors, especially with symbolic math, exact fractions, and multi-step problems. Axiom provides verified, exact results through two layers:
- math.js — Fast numerical evaluation (arithmetic, trigonometry, matrices)
- Giac/Xcas WASM — Symbolic computation (calculus, algebra, equation solving)
Benchmark Results (GLM-5.1, May 2026)
| Dataset | Baseline | +MCP | Delta | | ----------------- | -------- | ------- | --------- | | GSM8K (100) | 96.0% | 98.0% | +2.0% | | MATH L3 (50) | 70.0% | 80.0% | +10.0% | | MATH L4 (50) | 50.0% | 62.0% | +12.0% | | MATH L5 (50) | 38.0% | 52.0% | +14.0% | | CAS-quick (60) | 55.0% | 70.0% | +15.0% | | Omni-MATH ≥7 (50) | 0.0% | 0–4% | (ceiling) |
Key insights:
- Phase 0 grader (LaTeX/Unicode normalization + symbolic equivalence) is the dominant value driver across all datasets
- CAS-quick lifted from 26.7% (April pre-grader) to 70% (post-grader) — the biggest single jump
- Omni-MATH ≥7 is at ceiling for current LLM+CAS setups; needs fundamentally different approaches (Lean/Coq, fine-tuning, RAG)
Full results: benchmark/results/ and docs/superpowers/specs/ (per-phase analysis)
Features
Axiom exposes 3 MCP tools. Almost everything flows through compute, a single gateway that parses a CAS-style problem string and routes it to the right internal engine — so callers learn one tool, not dozens.
| Tool | Purpose |
| --------- | ------------------------------------------------------------------------------------------------------------------------------------- |
| compute | Solve any math problem. Pass a CAS-style string (solve(...), diff(...), det([[...]]), C(10,3), 2+3*sin(pi/4)) or any Giac/Xcas expression. |
| verify | Independently check a mathematical claim (identity, solution, or computation) via symbolic and/or numeric methods. |
| plot | Render a 2D function graph as an SVG image. |
What compute covers
compute recognizes CAS-style verbs and dispatches across these domains. Anything it doesn't recognize falls through to raw Giac/Xcas evaluation.
| Domain | Verbs / examples |
| ----------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Arithmetic & units | 2+3*sin(pi/4), 100 km/h to m/s |
| Equation solving | solve(x^2-4=0, x), csolve(...) (complex), solve_system([x+y=5, x-y=1], [x,y]) |
| Calculus | diff, int, limit, taylor, desolve (ODEs of any order, and linear constant-coefficient systems) |
| Multivariable calculus | gradient, hessian, jacobian, divergence, curl, partial, iint/iiint (multiple integrals), critical_points, lagrange, tangent_plane, directional_derivative |
| Algebra | factor, simplify, expand, partfrac |
| Linear algebra | det, inv, eigenvals, eigenvects, rref, rank, tran, ker, qr, lu, cholesky, svd, norm, cond |
| Number theory | ifactor, isprime, euler, analyze |
| Combinatorics | C(n,k), P(n,k), stirling, bell, catalan, derangements, multinomial |
| Probability | binomial, normal, poisson, geometric, hypergeometric, chi_square, student_t, f_distribution, beta, exponential |
| Hypothesis testing | t_test (one/two/paired), anova, chi_square_test |
| Numerical methods | newton, bisection, secant, romberg, simpson |
| 2D geometry | distance, midpoint, slope, area_*, perimeter, circumference, line_intersection, point_line_distance, angle_between_lines |
| 3D geometry | distance3d, midpoint3d, dot, cross, vector_norm, angle_vectors, plane_from_points, point_plane_distance, line_plane_intersection, plane_plane_angle, line_line_distance, volume_tetrahedron, volume_sphere, volume_parallelepiped |
| Transforms & series | laplace, ilaplace, fourier/fft/ifft, sum, product |
| Exact values | to_exact, to_decimal, simplify_fraction |
| Regression & sequences | linear_regression/fit, polynomial_regression, sequence (pattern identification) |
Installation
The package is axiom-math on npm.
Nothing to install for normal use — npx fetches and caches it:
npx -y axiom-math compute '2+2'
Or install it so the axiom-math command is on your PATH:
npm install -g axiom-math
Node.js >= 20 required. The first run downloads about 3.8 MB (the CAS engine compiled to WebAssembly) and takes a few seconds; later runs come from the npx cache.
From source
For contributors, or to run a modified build:
git clone https://github.com/tufantunc/axiom-advanced-math-mcp.git
cd axiom-advanced-math-mcp
npm install
npm run build
Docker
# Build and run
docker-compose -f docker/docker-compose.yml up -d
# Check logs
docker-compose -f docker/docker-compose.yml logs -f
# Stop
docker-compose -f docker/docker-compose.yml down
Usage
CLI (STDIO Transport)
# Run with stdio transport (default)
npm start
# Development mode
npm run dev
Claude Desktop integration:
// ~/Library/Application Support/Claude/claude_desktop_config.json
{
"mcpServers": [
{
"name": "axiom-math",
"command": "npx",
"args": ["-y", "axiom-math"]
}
]
}
Running from a local checkout instead of npm — point args at the built entry
point:
"args": ["/path/to/axiom-advanced-math-mcp/dist/cli.js"]
Command line
The same binary works as a one-shot CLI, so agents can use it as a skill with no MCP configuration. With no arguments it is the MCP server; with a subcommand it runs one computation and exits.
npx -y axiom-math compute 'integrate(sin(x)^3,x)'
npx -y axiom-math compute -q 'solve(x^2-4=0,x)' # {-2, 2}
npx -y axiom-math verify 'sin(x)^2+cos(x)^2 = 1' # exit 0 if true
npx -y axiom-math plot 'sin(x)' -o wave.svg
echo 'diff(x^3,x)' | npx -y axiom-math compute -q # 3*x^2
| Flag | Meaning |
| --- | --- |
| -q | print one value only, for scripting |
| --json | structured output |
| --latex | LaTeX-focused text (compute only) |
| -h, --help | usage, or usage for a subcommand |
Exit codes: 0 success · 1 tool or usage error · 2 verify checked the
claim and it is false.
2 is a mathematical verdict, so a claim that never got checked does not use
it: one that fails to parse, that the CAS cannot evaluate, or that has a
superscript with more than one reading, exits 1 with nothing on stdout.
axiom-math verify '...' && ... therefore never reads a syntax error as a
disproof.
A ready-to-use agent skill is in skills/axiom-math/SKILL.md.
HTTP Transport
# Start HTTP server (default: http://127.0.0.1:3000)
npm run start:http
# Development HTTP
npm run dev:http
The HTTP transport is stateless: every POST /mcp is handled independently,
no Mcp-Session-Id is issued, and no session state is kept between requests.
This server sends no server-initiated notifications, so nothing is lost — and it
scales horizontally with no shared state.
| Method | Path | Behaviour |
| ------ | --------- | ------------------------------------------------------ |
| POST | /mcp | Handles a JSON-RPC message |
| GET | /mcp | 405 — no SSE stream is offered |
| DELETE | /mcp | 405 — there are no sessions to terminate |
| GET | /health | 200 when ready, 503 when the CAS engine is not |
Security: there is no authentication and no rate limiting. The default bind address is
127.0.0.1, butdocker/docker-compose.ymlsetsMCP_HOST=0.0.0.0. If you expose the port, put it behind a reverse proxy that authenticates and rate-limits —docker/reverse-proxy/is a working, tested one (nginx + basic auth + per-client concurrency cap, with the app publishing no port of its own). SECURITY.md documents the full posture — what is protected, what is not, and how to report a vulnerability.
POST /mcpalso validates theHostheader against an
Truncated for display — read the full file on GitHub.
Related Skills
claude-mem
101.9kPersistent Context Across Sessions for Every Agent – Captures everything your agent does during sessions, compresses it with AI, and injects relevant context back into future sessions. Works with Claude Code, OpenClaw, Codex, Gemini, Hermes, Copilot, OpenCode + More
Agent-Reach
100.1kGive your AI agent eyes to see the entire internet. Read & search Twitter, Reddit, YouTube, GitHub, Bilibili, XiaoHongShu — one CLI, zero API fees.
Understand-Anything
87.2kGraphs that teach > graphs that impress. Turn any code into an interactive knowledge graph you can explore, search, and ask questions about. Works with Claude Code, Codex, Cursor, Copilot, Gemini CLI, and more.
headroom
76.5kCompress tool outputs, logs, files, and RAG chunks before they reach the LLM. 20% fewer tokens for coding agents, 60-95% fewer tokens for JSON, same answers. Library, proxy, MCP server.
Languages
Trust signals
From repository metadata: license, adoption, age and documentation. Not a code audit — see the Safety scan above for what the skill file itself contains.
