# Math MCP Learning MCP server

Educational MCP server with 12 math/stats tools, visualizations, and persistent workspace

## Links
- Registry page: https://www.getdrio.com/mcp/io-github-clouatre-labs-math-mcp-learning-server
- Repository: https://github.com/clouatre-labs/math-mcp-learning-server

## Install
- Command: `uvx math-mcp-learning-server`
- Endpoint: https://math-mcp.fastmcp.app/mcp
- Auth: Not captured

## Setup notes
- Package: Pypi math-mcp-learning-server v0.9.1
- Remote endpoint: https://math-mcp.fastmcp.app/mcp

## Tools
- calc_expression (Mathematical Calculator) - Safely evaluate mathematical expressions with support for basic operations and math functions.

Supported operations: +, -, *, /, **, ()
Supported functions: sin, cos, tan, log, sqrt, abs, pow

Note:
    Use this tool to evaluate a single mathematical expression. To compute descriptive statistics over a list of numbers, use the statistics tool instead.

Examples:
- "2 + 3 * 4" → 14
- "sqrt(16)" → 4.0
- "sin(3.14159/2)" → 1.0 Endpoint: https://math-mcp.fastmcp.app/mcp
- calc_statistics (Statistical Analysis) - Perform statistical calculations on a list of numbers.

Available operations: mean, median, mode, std_dev, variance

Note:
    Use this tool to compute descriptive statistics over a list of numbers. To evaluate a single mathematical expression, use the calculate tool instead.

Examples:
    statistics([1.0, 2.5, 3.0, 4.5, 5.0], "mean")  # Returns 3.2
    statistics([1.0, 2.5, 3.0, 4.5, 5.0], "std_dev")  # Returns ~1.58 Endpoint: https://math-mcp.fastmcp.app/mcp
- calc_interest (Compound Interest Calculator) - Calculate compound interest for investments.

Formula: A = P(1 + r/n)^(nt)
Where:
- P = principal amount
- r = annual interest rate (as decimal)
- n = number of times interest compounds per year
- t = time in years

Examples:
    compound_interest(10000, 0.05, 5)  # $10,000 at 5% for 5 years → $12,762.82
    compound_interest(5000, 0.03, 10, 12)  # $5,000 at 3% compounded monthly → $6,744.25 Endpoint: https://math-mcp.fastmcp.app/mcp
- calc_units (Unit Converter) - Convert between different units of measurement.

Supported unit types:
- length: mm, cm, m, km, in, ft, yd, mi
- weight: g, kg, oz, lb
- temperature: c, f, k (Celsius, Fahrenheit, Kelvin)

Examples:
    convert_units(5, "km", "mi", "length")  # 5 kilometers → 3.11 miles
    convert_units(150, "lb", "kg", "weight")  # 150 pounds → 68.04 kilograms Endpoint: https://math-mcp.fastmcp.app/mcp
- matrix_multiply (Matrix Multiplication) - Multiply two matrices (A × B).

Note:
    Requires NumPy. Raises ValueError if NumPy is unavailable.

Examples:
    matrix_multiply([[1, 2], [3, 4]], [[5, 6], [7, 8]])
    matrix_multiply([[1, 2, 3]], [[1], [2], [3]]) Endpoint: https://math-mcp.fastmcp.app/mcp
- matrix_transpose (Matrix Transpose) - Transpose a matrix (swap rows and columns).

Note:
    Requires NumPy. Raises ValueError if NumPy is unavailable.

Examples:
    matrix_transpose([[1, 2, 3], [4, 5, 6]])
    matrix_transpose([[1], [2], [3]]) Endpoint: https://math-mcp.fastmcp.app/mcp
- matrix_determinant (Matrix Determinant) - Calculate the determinant of a square matrix.

Note:
    Requires NumPy. Raises ValueError if NumPy is unavailable.

Examples:
    matrix_determinant([[1, 2], [3, 4]])
    matrix_determinant([[1, 0, 0], [0, 1, 0], [0, 0, 1]])  # Identity matrix Endpoint: https://math-mcp.fastmcp.app/mcp
- matrix_inverse (Matrix Inverse) - Calculate the inverse of a square matrix.

Note:
    Requires NumPy. Raises ValueError if NumPy is unavailable.

Examples:
    matrix_inverse([[1, 2], [3, 4]])
    matrix_inverse([[2, 0], [0, 2]])  # Diagonal matrix Endpoint: https://math-mcp.fastmcp.app/mcp
- matrix_eigenvalues (Matrix Eigenvalues) - Calculate the eigenvalues of a square matrix.

Note:
    Requires NumPy. Raises ValueError if NumPy is unavailable.

Examples:
    matrix_eigenvalues([[4, 2], [1, 3]])
    matrix_eigenvalues([[3, 0, 0], [0, 5, 0], [0, 0, 7]])  # Diagonal matrix Endpoint: https://math-mcp.fastmcp.app/mcp
- workspace_save (Save Calculation to Workspace) - Save calculation to persistent workspace (survives restarts).

Examples:
    save_calculation("portfolio_return", "10000 * 1.07^5", 14025.52)
    save_calculation("circle_area", "pi * 5^2", 78.54) Endpoint: https://math-mcp.fastmcp.app/mcp
- workspace_load (Load Variable) - Load previously saved calculation result from workspace.

Examples:
    load_variable("portfolio_return")  # Returns saved calculation
    load_variable("circle_area")       # Access across sessions Endpoint: https://math-mcp.fastmcp.app/mcp
- plot_function (Function Plotter) - Generate mathematical function plots (requires matplotlib).

Examples:
    plot_function("x**2", (-5, 5))
    plot_function("sin(x)", (-3.14, 3.14)) Endpoint: https://math-mcp.fastmcp.app/mcp
- plot_histogram (Statistical Histogram) - Create statistical histograms (requires matplotlib).

Examples:
    plot_histogram([1.0, 2.0, 2.5, 3.0, 3.5, 4.0, 5.0])
    plot_histogram([10, 20, 30, 40, 50], bins=5, title="Test Scores") Endpoint: https://math-mcp.fastmcp.app/mcp
- plot_line_chart (Line Chart) - Create a line chart from data points (requires matplotlib).

Note:
    Use for general XY data. For time-series price data with optional moving average, use plot_financial_line instead.

Examples:
    plot_line_chart([1, 2, 3, 4], [1, 4, 9, 16], title="Squares")
    plot_line_chart([0, 1, 2], [0, 1, 4], color='red', x_label='Time', y_label='Distance') Endpoint: https://math-mcp.fastmcp.app/mcp
- plot_scatter (Scatter Plot) - Create a scatter plot from data points (requires matplotlib).

Examples:
    plot_scatter([1, 2, 3, 4], [1, 4, 9, 16], title="Correlation Study")
    plot_scatter([1, 2, 3], [2, 4, 5], color='purple', point_size=100) Endpoint: https://math-mcp.fastmcp.app/mcp
- plot_box_plot (Box Plot) - Create a box plot for comparing distributions (requires matplotlib).

Examples:
    plot_box_plot([[1, 2, 3, 4, 5], [2, 4, 6, 8, 10]], group_labels=["A", "B"])
    plot_box_plot([[10, 20, 30], [15, 25, 35], [5, 15, 25]], title="Comparison") Endpoint: https://math-mcp.fastmcp.app/mcp
- plot_financial_line (Financial Line Chart) - Generate and plot synthetic financial price data (requires matplotlib).

Creates realistic price movement patterns for educational purposes.
Does not use real market data.

Note:
    Use for time-series price data with optional moving average overlay. For general XY data, use plot_line_chart instead.

Examples:
    plot_financial_line(days=60, trend='bullish')
    plot_financial_line(days=90, trend='volatile', start_price=150.0, color='orange') Endpoint: https://math-mcp.fastmcp.app/mcp

## Resources
- math://functions - List all available mathematical functions with examples and syntax help. MIME type: text/plain
- math://history - Get the history of calculations performed across sessions. MIME type: text/plain
- math://workspace - Get persistent calculation workspace showing all saved variables.

This resource displays the complete state of the persistent workspace,
including all saved calculations, metadata, and statistics. The workspace
survives server restarts and is accessible across different transport modes. MIME type: text/plain
- math://catalog/tools - Catalog of all available tools with category, description, and example. MIME type: text/plain
- math://variables - List all variable names saved in the workspace (lightweight alternative to math://workspace). MIME type: text/plain

## Prompts
- math_tutor - Math Tutor Generate a structured math tutoring prompt for a mathematical concept at a chosen difficulty level, optionally including step-by-step worked examples. Arguments: topic, level, include_examples
- formula_explainer - Formula Explainer Generate a comprehensive prompt for explaining a mathematical formula: variable definitions, contextual background, step-by-step breakdown, example calculation, real-world applications, and common mistakes. Arguments: formula, context

## Metadata
- Owner: io.github.clouatre-labs
- Version: 0.9.1
- Runtime: Pypi
- Transports: STDIO, HTTP
- License: Not captured
- Language: Not captured
- Stars: Not captured
- Updated: Dec 10, 2025
- Source: https://registry.modelcontextprotocol.io
