Sagemath MCP
UnclaimedStateful SageMath MCP server: 37 tools for symbolic math, algebra, number theory, graphs and plotting. A persistent Sage session per client, an AST policy in front of it, and a hardened container as the real boundary.
Install
docker run -p 8314:8314 sagemath-mcp:latest --transport streamable-httpUnclaimed listing
Is this your MCP server?
This listing was auto-indexed from the public record. Claim it to edit the page, set compatibility and unlock growth tools. Takes under two minutes.
Claim this serverTools (40)
calculate_expression
Evaluate a symbolic expression and return both its string representation and numeric value (when possible). Uses Sage's sageeval() internally with pre-declared variables x, y, z, t.
capture_stdout
bool
code
string
determinant
float or string
differentiate_expression
Compute the symbolic derivative of an expression. Calls Sage's diff(expr, var, order) internally.
direction
string or null
eigenvalues
list[float]
elapsed_ms
float
equation
string or list[string]
expand_expression
Expand products, powers, and trigonometric/logarithmic identities using Sage's expand().
expression
string
factor_expression
Factor a symbolic expression or integer using Sage's factor().
function
string
integrate_expression
Compute indefinite or definite integrals. Calls Sage's integrate() function.
inverse
list[list[float]]
latex
string or null
limit_expression
Compute the limit of an expression as a variable approaches a point. Calls Sage's limit() function.
lower_bound
string or null
matrix
list[list[float]]
matrix_a
list[list[float]]
matrix_b
list[list[float]]
matrix_multiply
Multiply two matrices over the Symbolic Ring (SR). Input matrices are nested lists of numbers.
matrix_operation
Perform a single matrix operation. Supports six operations on matrices over the Symbolic Ring.
operation
string
order
int (>= 1)
point
string
rank
int
result
string or null
result_type
"expression" or "statement"
rref
list[list[float]]
series_expansion
Compute a Taylor or Laurent series expansion around a point. Calls Sage's .series() method.
simplify_expression
Apply Sage's simplify() function to reduce a symbolic expression to a simpler form.
solve_equation
Solve a single equation or a system of simultaneous equations. Calls Sage's solve() function. Equations are parsed by splitting on =: the string "x^2 - 1 = 0" becomes the Sage equation x^2 - 1 == 0.
solve_ode
Solve an ordinary differential equation using Sage's desolve(). The equation is specified as a string using Sage's diff() notation. The solver returns a general solution with arbitrary constants (C, K1, K2, etc.).
stdout
string
timeout
float
transpose
list[list[float]]
upper_bound
string or null
variable
string
want_latex
bool