Precision Math
FreeNot checkedProvides LLMs with accurate mathematical computation through a real calculator powered by math.js, offering tools for arithmetic, algebra, calculus, unit conver
About
Provides LLMs with accurate mathematical computation through a real calculator powered by math.js, offering tools for arithmetic, algebra, calculus, unit conversion, and more.
README
LLMs can't do math. They predict tokens, not compute answers. Ask an LLM to multiply large numbers or solve equations, and you might get confident-sounding wrong answers.
This MCP server fixes that by giving your LLM a real calculator. It's powered by math.js, a battle-tested math library with 14k+ GitHub stars, handling everything from basic arithmetic to symbolic calculus.
All expressions use math.js syntax - see math.js documentation for full expression reference.
Features
6 Mathematical Tools:
calculate- Evaluate mathematical expressionssimplify- Simplify algebraic expressionsderivative- Compute symbolic derivativessolve- Solve equations for variablesformat- Format numbers with precision/notationconvert- Convert between units
3 Transport Modes:
stdio- Standard I/O (default, for Claude Desktop)http- Streamable HTTP transportsse- Server-Sent Events (backwards compatibility)
Quick Start
Run directly without installing (requires Bun, npm, yarn, or pnpm):
# Using bunx (recommended)
bunx -y @nerdo/precision-math-mcp
# Using npx
npx -y @nerdo/precision-math-mcp
# Using yarn
yarn dlx @nerdo/precision-math-mcp
# Using pnpm
pnpm dlx @nerdo/precision-math-mcp
Installation
Global Install
# Using bun
bun add -g @nerdo/precision-math-mcp
# Using npm
npm install -g @nerdo/precision-math-mcp
# Using yarn
yarn global add @nerdo/precision-math-mcp
# Using pnpm
pnpm add -g @nerdo/precision-math-mcp
Then run with:
precision-math-mcp
Local Development
git clone https://github.com/nerdo/precision-math-mcp
cd precision-math-mcp
bun install
bun run src/index.ts
Usage
Transport Modes
# Stdio mode (default)
bunx -y @nerdo/precision-math-mcp --stdio
# HTTP mode
PORT=3141 bunx -y @nerdo/precision-math-mcp --http
# HTTP mode with authentication
PORT=3141 MCP_AUTH_TOKEN=your-secret bunx -y @nerdo/precision-math-mcp --http
Environment Variables
| Variable | Default | Description |
|---|---|---|
PORT |
3141 | HTTP server port |
MCP_AUTH_TOKEN |
(none) | Optional auth token for HTTP |
MCP_TRANSPORT |
stdio | Transport mode: stdio, http, sse |
DESCRIPTION_MODE |
mandatory | Tool description mode: mandatory (AI must use for all math) or relaxed (optional use) |
MCP Client Configuration
Claude Desktop
Add to your Claude Desktop configuration file:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"precision-math": {
"command": "bunx",
"args": ["-y", "@nerdo/precision-math-mcp"]
}
}
}
Or using npx:
{
"mcpServers": {
"precision-math": {
"command": "npx",
"args": ["-y", "@nerdo/precision-math-mcp"]
}
}
}
Claude Code
Add to your Claude Code MCP settings:
{
"mcpServers": {
"precision-math": {
"command": "bunx",
"args": ["-y", "@nerdo/precision-math-mcp"]
}
}
}
Tool Examples
calculate
Evaluate mathematical expressions with optional variables.
{
"name": "calculate",
"arguments": {
"expression": "sqrt(a^2 + b^2)",
"scope": { "a": 3, "b": 4 }
}
}
// Returns: { "result": "5", "type": "number" }
Supports:
- Basic arithmetic:
2 + 2 * 3→8 - Functions:
sin(pi/4),log(100),factorial(5) - Complex numbers:
sqrt(-1)→i - Matrices:
[[1,2],[3,4]] * [[1,0],[0,1]] - Units:
2 inch to cm→5.08 cm
simplify
Simplify algebraic expressions.
{
"name": "simplify",
"arguments": {
"expression": "2x + 3x - x"
}
}
// Returns: { "result": "4 * x" }
derivative
Compute symbolic derivatives.
{
"name": "derivative",
"arguments": {
"expression": "x^3 + 2*x",
"variable": "x"
}
}
// Returns: { "result": "3 * x ^ 2 + 2", "simplified": "3 * x ^ 2 + 2" }
solve
Solve equations for a variable.
{
"name": "solve",
"arguments": {
"equation": "x^2 - 4 = 0",
"variable": "x"
}
}
// Returns: { "solutions": ["2", "-2"], "type": "exact" }
format
Format numbers with specific precision or notation.
{
"name": "format",
"arguments": {
"value": "pi",
"precision": 4
}
}
// Returns: { "result": "3.142" }
convert
Convert between units.
{
"name": "convert",
"arguments": {
"value": "100 km/h",
"toUnit": "m/s"
}
}
// Returns: { "result": "27.77777777777778 m / s", "numericValue": 27.77777777777778 }
Testing
# Run all tests
bun test
# Run specific test file
bun test tests/tools/calculate.test.ts
Testing with MCP Inspector
npx @modelcontextprotocol/inspector bun run src/index.ts
Opens the MCP Inspector at http://localhost:6274 where you can:
- View all available tools
- Invoke tools with custom arguments
- See JSON-RPC communication logs
Development
# Type check
bunx tsc --noEmit
# Run in watch mode
bun --watch run src/index.ts
License
MIT
Install Precision Math in Claude Desktop, Claude Code & Cursor
unyly install precision-math-mcpInstalls into Claude Desktop, Claude Code, Cursor & VS Code — handles npx, uvx and build-from-source repos for you.
First time? Get the CLI: curl -fsSL https://unyly.org/install | sh
Or configure manually
Run in your terminal:
claude mcp add precision-math-mcp -- npx -y @nerdo/precision-math-mcpFAQ
Is Precision Math MCP free?
Yes, Precision Math MCP is free — one-click install via Unyly at no cost.
Does Precision Math need an API key?
No, Precision Math runs without API keys or environment variables.
Is Precision Math hosted or self-hosted?
Self-hosted: the server runs locally on your machine via the install command above.
How do I install Precision Math in Claude Desktop, Claude Code or Cursor?
Open Precision Math on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.
Related MCPs
GitHub
PRs, issues, code search, CI status
by GitHubFilesystem
Secure file operations with configurable access controls.
Memory
Knowledge graph-based persistent memory system.
Template MCP Server
A CLI tool to create a new Model Context Protocol server project with TypeScript support, dual transport options, and an extensible structure
by mcpdotdirectCompare Precision Math with
Not sure what to pick?
Find your stack in 60 seconds
Author?
Embed badge for your README
Browse similar
All development MCPs
