Math MCP Learning

Educational MCP server with math operations, statistics, visualizations, and persistent workspace.

Math MCP Learning Server

PyPI version Python License: MIT Ruff

Educational MCP server with 17 tools, persistent workspace, and cloud hosting. Built with FastMCP and the official Model Context Protocol Python SDK.

Available on:

Requirements

Requires an MCP client:

  • Claude Desktop - Anthropic's desktop app
  • Claude Code - Command-line MCP client
  • Goose - Open-source AI agent framework
  • OpenCode - Open-source MCP client by SST
  • Kiro - AWS's AI assistant
  • Gemini CLI - Google's command-line tool
  • Any MCP-compatible client

Quick Start

Cloud (No Installation)

Connect your MCP client to the hosted server:

Claude Desktop (claude_desktop_config.json):

{
  "mcpServers": {
    "math-cloud": {
      "transport": "http",
      "url": "https://math-mcp.fastmcp.app/mcp"
    }
  }
}

Local Installation

Automatic with uvx (recommended):

{
  "mcpServers": {
    "math": {
      "command": "uvx",
      "args": ["math-mcp-learning-server"]
    }
  }
}

Manual installation:

# Basic installation
uvx math-mcp-learning-server

# With matrix operations support
uvx --from 'math-mcp-learning-server[scientific]' math-mcp-learning-server

# With visualization support
uvx --from 'math-mcp-learning-server[plotting]' math-mcp-learning-server

# All features
uvx --from 'math-mcp-learning-server[scientific,plotting]' math-mcp-learning-server

Tools

CategoryToolDescription
Workspacesave_calculationSave calculations to persistent storage
load_variableRetrieve previously saved calculations
MathcalculateSafely evaluate mathematical expressions
statisticsStatistical analysis (mean, median, mode, std_dev, variance)
compound_interestCalculate compound interest for investments
convert_unitsConvert between units (length, weight, temperature)
Matrixmatrix_multiplyMultiply two matrices
matrix_transposeTranspose a matrix
matrix_determinantCalculate matrix determinant
matrix_inverseCalculate matrix inverse
matrix_eigenvaluesCalculate eigenvalues
Visualizationplot_functionPlot mathematical functions
create_histogramCreate statistical histograms
plot_line_chartCreate line charts
plot_scatter_chartCreate scatter plots
plot_box_plotCreate box plots
plot_financial_lineCreate financial line charts

Resources

  • math://workspace - Persistent calculation workspace summary
  • math://history - Chronological calculation history
  • math://functions - Available mathematical functions reference
  • math://constants/{constant} - Mathematical constants (pi, e, golden_ratio, etc.)
  • math://test - Server health check

Prompts

  • math_tutor - Structured tutoring prompts (configurable difficulty)
  • formula_explainer - Formula explanation with step-by-step breakdowns

See Usage Examples for detailed examples.

Development

See CONTRIBUTING.md for development setup, testing, and contribution guidelines.

Security

The calculate tool uses restricted eval() with a whitelist of allowed characters and functions, restricted global scope (only math module and abs), and no access to dangerous built-ins or imports. All tool inputs are validated with Pydantic models. File operations are restricted to the designated workspace directory. Complete type hints and validation are enforced for all operations.

Links

Related Servers