Skip to main content
Glama
nerdo

precision-math-mcp

by nerdo

precision-math-mcp

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 expressions

    • simplify - Simplify algebraic expressions

    • derivative - Compute symbolic derivatives

    • solve - Solve equations for variables

    • format - Format numbers with precision/notation

    • convert - Convert between units

  • 3 Transport Modes:

    • stdio - Standard I/O (default, for Claude Desktop)

    • http - Streamable HTTP transport

    • sse - Server-Sent Events (backwards compatibility)

Related MCP server: Math MCP Server

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 * 38

  • 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 cm5.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

Related MCP Connectors

Related MCP Servers

  • F
    license
    A
    quality
    D
    maintenance
    Enables mathematical calculations through basic arithmetic operations including addition, subtraction, multiplication, division, exponentiation, and logarithms. Provides a simple interface for AI agents to perform mathematical computations.
    6
    3
    -
  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables LLMs to perform accurate mathematical calculations by evaluating expressions using mathjs. Supports basic arithmetic, functions, constants, and complex mathematical operations through natural language requests.
    -
  • A
    license
    Not graded
    quality
    D
    maintenance
    Provides comprehensive mathematical capabilities including basic arithmetic, advanced functions, statistical tools, and access to mathematical constants. It allows users to perform computations and generate math-related prompts through a standardized MCP interface.
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Provides a comprehensive set of mathematical functions as MCP tools, enabling language models to perform calculations including arithmetic, trigonometry, logarithms, and more.
    6 npm
    1
    MIT