PolarHub
  • Agents
  • MCP Servers
  • Skills
  • PolarBear
PolarHub © 2026
MCP Serverscode-executionsdiehl
返回「code-execution」

sdiehl

modelscope·@sdiehl/sympy-mcp

code-execution0下载LocalModelScope

简介

暂无描述。

MCP Server 详情

来自 ModelScope 索引
<div align="center"> <img src=".github/logo.png" alt="Sympy MCP Logo" width="400" /> </div>

符号代数MCP服务器

Sympy-MCP是一个模型上下文协议(Model Context Protocol, MCP)服务器,允许大型语言模型(LLMs)自主执行符号数学和计算机代数。它向MCP客户端暴露了SymPy核心功能中的许多工具,用于操作数学表达式和方程。

为什么?

语言模型在符号操作方面表现非常糟糕。它们会臆造变量、随机常数,重新排列项,并且通常会制造混乱。但我们有专门用于符号操作的计算机代数系统,因此我们可以使用工具调用来编排一系列变换,让符号内核完成所有繁重的工作。

虽然你可以让一个LLM生成Mathematica或Python代码,但如果你想将LLM用作代理或即时计算器,使用MCP服务器并直接暴露符号工具会提供更好的体验。

该服务器暴露了一部分符号数学能力,包括代数方程求解、积分和微分、矢量微积分、广义相对论的张量微积分,以及常微分方程和偏微分方程。

例如,你可以用自然语言要求它解一个微分方程:

解决带有强迫项的阻尼谐振子问题:由微分方程描述的质量-弹簧-阻尼系统,其中m是质量,c是阻尼系数,k是弹簧常数,F(t)是外部力。

$$ m\frac{d^2x}{dt^2} + c\frac{dx}{dt} + kx = F(t) $$

或者涉及广义相对论的问题:

使用反德西特时空的逆度规$g^{\mu\nu}$计算里奇张量$R_{\mu\nu}$的迹,以确定其常数标量曲率$R$。

使用方法

首先你需要uv。

  • Homebrew : brew install uv
  • Curl : curl -LsSf https://astral.sh/uv/install.sh | sh

然后你可以通过以下命令安装并运行服务器:

shell

设置项目

git clone https://github.com/sdiehl/sympy-mcp.git cd sympy-mcp uv sync

将服务器安装到Claude Desktop

uv run mcp install server.py

运行服务器

uv run mcp run server.py

现在你应该能在Claude Desktop应用程序中看到这个服务器了。对于其他客户端,请参见下文。

如果你想要一个完全独立版本,只需一条命令即可运行,可以使用以下命令。注意这正在从GitHub运行任意代码,请小心。

shell uv run --with https://github.com/sdiehl/sympy-mcp/releases/download/0.1/sympy_mcp-0.1.0-py3-none-any.whl python server.py

如果你想进行广义相对论计算,需要安装einsteinpy库。

shell uv sync --group relativity

可用工具

sympy-mcp服务器提供了以下符号数学工具:

工具工具ID描述
变量引入intro引入具有指定假设的变量并存储它
多个变量intro_many同时引入多个具有指定假设的变量
表达式解析器introduce_expression使用可用的局部变量解析表达式字符串并存储它
LaTeX打印机print_latex_expression以LaTeX格式打印存储的表达式及其变量假设
代数求解器solve_algebraically在给定域上为给定变量代数地求解方程
线性求解器solve_linear_system求解线性方程组
非线性求解器solve_nonlinear_system求解非线性方程组
函数变量introduce_function引入用于微分方程的函数变量
ODE求解器dsolve_ode求解常微分方程
标准度规create_predefined_metric创建预定义的时空度规(例如:史瓦西、克尔、闵可夫斯基)
度规搜索search_predefined_metrics搜索可用的预定义度规
张量计算器calculate_tensor从度规计算张量(里奇、爱因斯坦、韦尔张量)
自定义度规create_custom_metric从提供的组件和符号创建自定义度规张量
张量 LaTeX 输出print_latex_tensor以 LaTeX 格式打印存储的张量表达式
简化器simplify_expression使用 SymPy 的规范化函数简化数学表达式
替换substitute_expression在另一个表达式中用一个表达式替换变量
积分integrate_expression对变量积分表达式
微分differentiate_expression对变量微分表达式
坐标系create_coordinate_system创建用于矢量微积分操作的3D坐标系
矢量场create_vector_field在指定坐标系中创建矢量场
旋度calculate_curl计算矢量场的旋度
散度calculate_divergence计算矢量场的散度
梯度calculate_gradient计算标量场的梯度
单位转换器convert_to_units将数量转换为目标单位
单位简化器quantity_simplify_units简化带有单位的数量
矩阵创建器create_matrix从提供的数据创建 SymPy 矩阵
行列式matrix_determinant计算矩阵的行列式
矩阵逆matrix_inverse计算矩阵的逆
特征值matrix_eigenvalues计算矩阵的特征值
特征向量matrix_eigenvectors计算矩阵的特征向量

默认情况下,变量会预先定义假设(类似于 symbols() 函数在 SymPy 中的工作方式)。除非另有说明,默认假设是变量是复数、可交换的,并且是在复数域 (\mathbb{C}) 上的项。

属性值
commutativetrue
complextrue
finitetrue
infinitefalse

Claude 桌面设置

通常,mcp install 命令会自动将服务器添加到 claude_desktop_config.json 文件中。如果它没有这样做,你需要找到配置文件并添加以下内容:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%Claudeclaude_desktop_config.json

在 mcpServers 对象中添加以下内容,将 /ABSOLUTE_PATH_TO_SYMPY_MCP/server.py 替换为 sympy-mcp server.py 文件的绝对路径。

json { "mcpServers": { "sympy-mcp": { "command": "/opt/homebrew/bin/uv", "args": [ "run", "--with", "einsteinpy", "--with", "mcp[cli]", "--with", "pydantic", "--with", "sympy", "mcp", "run", "/ABSOLUTE_PATH_TO_SYMPY_MCP/server.py" ] } } }

Cursor 设置

在你的 ~/.cursor/mcp.json 中,添加以下内容,其中 ABSOLUTE_PATH_TO_SYMPY_MCP 是指向 sympy-mcp server.py 文件的路径。

json { "mcpServers": { "sympy-mcp": { "command": "/opt/homebrew/bin/uv", "args": [ "run", "--with", "einsteinpy", "--with", "mcp[cli]", "--with", "pydantic", "--with", "sympy", "mcp", "run", "/ABSOLUTE_PATH_TO_SYMPY_MCP/server.py" ] } } }

VS Code 设置VS Code 和 VS Code Insiders 现在支持 代理模式 下的 MCP。对于 VS Code,您可能需要在设置中启用 Chat > Agent: Enable。

  1. 一键设置:

在 VS Code 中安装

在 VS Code Insiders 中安装

或者手动将配置添加到您的 settings.json(全局):

json { "mcp": { "servers": { "sympy-mcp": { "command": "uv", "args": [ "run", "--with", "einsteinpy", "--with", "mcp[cli]", "--with", "pydantic", "--with", "sympy", "mcp", "run", "/ABSOLUTE_PATH_TO_SYMPY_MCP/server.py" ] } } } }

  1. 单击服务器配置上方的“启动”按钮切换到聊天中的代理模式,并尝试使用命令如 "integrate x^2" 或 "solve x^2 = 1" 开始。

#…

相关 MCP Servers(来自「code-execution」)

Doris模型控制面板服务

后端服务,实现了模型控制面板协议,可连接到 Apache Doris 数据库,允许用户执行 SQL 查询、管理元数据,并且有可能利用大语言模型(LLMs)完成自然语言到 SQL 的转换等任务。

@apache/doris-mcp-server

SEE文件系统MCP服务器

实现模型上下文协议(MCP)的 Node.js 服务器,用于文件系统操作,允许人工智能系统在指定的允许路径内读取、写入、编辑文件和管理目录。

@dinh-ai-system-exe-com-vn/file-system-mcp-see

twilio-labs

暂无描述。

@twilio-labs/mcp

dave-wind

暂无描述。

@dave-wind/mysql-mcp-server

go-playground-mcp

暂无描述。

@samber/go-playground-mcp

VibeShift

暂无描述。

@GroundNG/VibeShift

自动安装

点击按钮会唤起 PolarBear 客户端,并把当前 MCP Server 的 Markdown 详情文档地址传给客户端。

/api/mcps/sdiehl-sympy-mcp/markdown
打开 PolarBear 安装查看 Markdown 文档

手动安装

在 PolarBear 或其他支持 MCP 的客户端中,新建 MCP Server,并参考下方来源或安装提示配置。

暂未识别到安装命令,请打开 ModelScope 详情查看完整配置。

基本信息

分类
code-execution / research-and-data / education-and-learning-tools
运行方式
No
许可证
Apache License 2.0
详情文件
sdiehl-sympy-mcp.md