Server Details
Educational MCP server with 17 math/stats tools, visualizations, and persistent workspace
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
- Repository
- clouatre-labs/math-mcp-learning-server
- GitHub Stars
- 2
See and control every tool call
Available Tools
17 toolscalculateTry in Inspector
Safely evaluate mathematical expressions with support for basic operations and math functions.
Supported operations: +, -, *, /, **, () Supported functions: sin, cos, tan, log, sqrt, abs, pow
Examples:
"2 + 3 * 4" → 14
"sqrt(16)" → 4.0
"sin(3.14159/2)" → 1.0
| Name | Required | Description | Default |
|---|---|---|---|
| expression | Yes |
compound_interestTry in Inspector
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
| Name | Required | Description | Default |
|---|---|---|---|
| rate | Yes | ||
| time | Yes | ||
| principal | Yes | ||
| compounds_per_year | No |
convert_unitsTry in Inspector
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)
| Name | Required | Description | Default |
|---|---|---|---|
| value | Yes | ||
| to_unit | Yes | ||
| from_unit | Yes | ||
| unit_type | Yes |
create_histogramTry in Inspector
Create statistical histograms (requires matplotlib).
Args: data: List of numerical values bins: Number of histogram bins (default: 20) title: Chart title ctx: FastMCP context for logging
Returns: Dict with base64-encoded PNG image or error message
Examples: create_histogram([1.0, 2.0, 2.5, 3.0, 3.5, 4.0, 5.0]) create_histogram([10, 20, 30, 40, 50], bins=5, title="Test Scores")
| Name | Required | Description | Default |
|---|---|---|---|
| bins | No | ||
| data | Yes | ||
| title | No | Data Distribution |
load_variableTry in Inspector
Load previously saved calculation result from workspace.
Args: name: Variable name to load
Examples: load_variable("portfolio_return") # Returns saved calculation load_variable("circle_area") # Access across sessions
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes |
matrix_determinantTry in Inspector
Calculate the determinant of a square matrix.
Args: matrix: Square matrix (n x n)
Returns: Determinant value (scalar)
Examples: matrix_determinant([[1, 2], [3, 4]]) matrix_determinant([[1, 0, 0], [0, 1, 0], [0, 0, 1]]) # Identity matrix
| Name | Required | Description | Default |
|---|---|---|---|
| matrix | Yes |
matrix_eigenvaluesTry in Inspector
Calculate the eigenvalues of a square matrix.
Args: matrix: Square matrix (n x n)
Returns: List of eigenvalues (may be complex numbers)
Examples: matrix_eigenvalues([[4, 2], [1, 3]]) matrix_eigenvalues([[3, 0, 0], [0, 5, 0], [0, 0, 7]]) # Diagonal matrix
| Name | Required | Description | Default |
|---|---|---|---|
| matrix | Yes |
matrix_inverseTry in Inspector
Calculate the inverse of a square matrix.
Args: matrix: Square matrix (n x n)
Returns: Inverse matrix (n x n)
Examples: matrix_inverse([[1, 2], [3, 4]]) matrix_inverse([[2, 0], [0, 2]]) # Diagonal matrix
| Name | Required | Description | Default |
|---|---|---|---|
| matrix | Yes |
matrix_multiplyTry in Inspector
Multiply two matrices (A × B).
Args: matrix_a: First matrix (m x n) matrix_b: Second matrix (n x p)
Returns: Result matrix (m x p)
Examples: matrix_multiply([[1, 2], [3, 4]], [[5, 6], [7, 8]]) matrix_multiply([[1, 2, 3]], [[1], [2], [3]])
| Name | Required | Description | Default |
|---|---|---|---|
| matrix_a | Yes | ||
| matrix_b | Yes |
matrix_transposeTry in Inspector
Transpose a matrix (swap rows and columns).
Args: matrix: Input matrix (m x n)
Returns: Transposed matrix (n x m)
Examples: matrix_transpose([[1, 2, 3], [4, 5, 6]]) matrix_transpose([[1], [2], [3]])
| Name | Required | Description | Default |
|---|---|---|---|
| matrix | Yes |
plot_box_plotTry in Inspector
Create a box plot for comparing distributions (requires matplotlib).
Args: data_groups: List of data groups to compare group_labels: Optional labels for each group title: Chart title y_label: Y-axis label color: Box color (name or hex code, e.g., 'blue', '#2E86AB') ctx: FastMCP context for logging
Returns: Dict with base64-encoded PNG image or error message
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")
| Name | Required | Description | Default |
|---|---|---|---|
| color | No | ||
| title | No | Box Plot | |
| y_label | No | Values | |
| data_groups | Yes | ||
| group_labels | No |
plot_financial_lineTry in Inspector
Generate and plot synthetic financial price data (requires matplotlib).
Creates realistic price movement patterns for educational purposes. Does not use real market data.
Args: days: Number of days to generate (default: 30) trend: Market trend ('bullish', 'bearish', or 'volatile') start_price: Starting price value (default: 100.0) color: Line color (name or hex code, e.g., 'blue', '#2E86AB') ctx: FastMCP context for logging
Returns: Dict with base64-encoded PNG image or error message
Examples: plot_financial_line(days=60, trend='bullish') plot_financial_line(days=90, trend='volatile', start_price=150.0, color='orange')
| Name | Required | Description | Default |
|---|---|---|---|
| days | No | ||
| color | No | ||
| trend | No | bullish | |
| start_price | No |
plot_functionTry in Inspector
Generate mathematical function plots (requires matplotlib).
Args: expression: Mathematical expression to plot (e.g., "x**2", "sin(x)") x_range: Tuple of (min, max) for x-axis range num_points: Number of points to plot (default: 100) ctx: FastMCP context for logging
Returns: Image object with PNG data or VisualizationError on failure
Examples: plot_function("x**2", (-5, 5)) plot_function("sin(x)", (-3.14, 3.14))
| Name | Required | Description | Default |
|---|---|---|---|
| x_range | Yes | ||
| expression | Yes | ||
| num_points | No |
plot_line_chartTry in Inspector
Create a line chart from data points (requires matplotlib).
Args: x_data: X-axis data points y_data: Y-axis data points title: Chart title x_label: X-axis label y_label: Y-axis label color: Line color (name or hex code, e.g., 'blue', '#2E86AB') show_grid: Whether to show grid lines ctx: FastMCP context for logging
Returns: Dict with base64-encoded PNG image or error message
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')
| Name | Required | Description | Default |
|---|---|---|---|
| color | No | ||
| title | No | Line Chart | |
| x_data | Yes | ||
| y_data | Yes | ||
| x_label | No | X | |
| y_label | No | Y | |
| show_grid | No |
plot_scatter_chartTry in Inspector
Create a scatter plot from data points (requires matplotlib).
Args: x_data: X-axis data points y_data: Y-axis data points title: Chart title x_label: X-axis label y_label: Y-axis label color: Point color (name or hex code, e.g., 'blue', '#2E86AB') point_size: Size of scatter points (default: 50) ctx: FastMCP context for logging
Returns: Dict with base64-encoded PNG image or error message
Examples: plot_scatter_chart([1, 2, 3, 4], [1, 4, 9, 16], title="Correlation Study") plot_scatter_chart([1, 2, 3], [2, 4, 5], color='purple', point_size=100)
| Name | Required | Description | Default |
|---|---|---|---|
| color | No | ||
| title | No | Scatter Plot | |
| x_data | Yes | ||
| y_data | Yes | ||
| x_label | No | X | |
| y_label | No | Y | |
| point_size | No |
save_calculationTry in Inspector
Save calculation to persistent workspace (survives restarts).
Args: name: Variable name to save under expression: The mathematical expression result: The calculated result
Examples: save_calculation("portfolio_return", "10000 * 1.07^5", 14025.52) save_calculation("circle_area", "pi * 5^2", 78.54)
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| result | Yes | ||
| expression | Yes |
statisticsTry in Inspector
Perform statistical calculations on a list of numbers.
Available operations: mean, median, mode, std_dev, variance
| Name | Required | Description | Default |
|---|---|---|---|
| numbers | Yes | ||
| operation | Yes |
To claim this server, publish a /.well-known/glama.json file on your server's domain with the following structure:
{
"$schema": "https://glama.ai/mcp/schemas/connector.json",
"maintainers": [
{
"email": "your-email@example.com"
}
]
}The email address must match the email associated with your Glama account. Once verified, the server will appear as claimed by you.
Control your server's listing on Glama, including description and metadata
Receive usage reports showing how your server is being used
Get monitoring and health status updates for your server
The connector status is unhealthy when Glama is unable to successfully connect to the server. This can happen for several reasons:
The server is experiencing an outage
The URL of the server is wrong
Credentials required to access the server are missing or invalid
If you are the owner of this MCP connector and would like to make modifications to the listing, including providing test credentials for accessing the server, please contact support@glama.ai.
Discussions
No comments yet. Be the first to start the discussion!
Your Connectors
Sign in to create a connector for this server.