关于 Mathematica Documentation MCP server
Mathematica Documentation MCP server 让用户查询本地 Mathematica 安装中的文档,也可调用 wolframscript。它还可列出软件包中的符号和函数。
主要功能
- 01查询内置函数文档
- 02查询软件包和附加组件函数
- 03列出软件包中的符号
- 04配置自定义 wolframscript 路径
适用场景
- 01查阅 Mathematica 函数用法
- 02查找软件包函数文档
- 03探索软件包可用符号
MCP 相关
它将文档查询和软件包符号列表作为工具提供给 MCP 客户端,使用本地 Mathematica 安装或 wolframscript。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
Mathematica 文档 MCP 服务
概述与用法
使用 mcp-python-sdk 构建
重要
如果你仍在使用此 MCP 服务的 FastMCP 版本,请考虑重新拉取此仓库并更新到较新版本,因为 FastMCP 已弃用。
要求:pip install -r requirements.txt,并安装 Mathematica(或至少确保可以从终端调用 wolframscript,例如通过 面向开发者的免费 Wolfram 引擎)。
运行 mcp dev path/to/mcp-mma-doc.py 以初始化服务。
运行 mcp install path/to/mcp-mma-doc.py 将其安装到 claude,或将以下内容添加到 claude/cline 配置中:
"mathematica-docs": {
"command": "uv",
"args": [
"run",
"--with",
"mcp",
"mcp",
"run",
"/path/to/mcp-mma-doc.py"
]
}
说明
目前在
uv中使用mcp似乎会导致某些 Linux/macOS 版本的 Claude-desktop 出现问题,你可能需要改为设置为:"mathematica-docs": { "command": "/path/to/mcp", "args": [ "run", "/path/to/mcp-mma-doc.py" ] }其中
/path/to/mcp是通过在终端运行which mcp获取的路径
自定义 wolframscript 安装路径
如果需要自定义 wolframscript 路径,或它不在系统路径中,可以通过环境变量设置:
export WOLFRAMSCRIPT_PATH="/usr/bin/wolframscript"
或在 MCP 配置中将其设置为 env 键
"mathematica-docs": {
"command": ...,
"args": ....
"env": {
"WOLFRAMSCRIPT_PATH": "/usr/bin/wolframscript"
}
}
工具
该插件提供以下命令:
- get_docs:支持工厂函数、通过附加组件提供的函数,以及通过软件包提供的函数。
- 基本用法:get_docs("Plot")
- 使用软件包:get_docs("WeightSystem", packages=["LieART"])
- 使用附加组件:get_docs("FCFeynmanParametrize", packages=["FeynCalc"], load_addons=["FeynArts"])
- list_package_symbols:列出软件包中的所有符号/函数。
- 基本用法:list_package_symbols("FeynCalc")
已知问题
- 如果你在 cline 中看到类似
INFO Processing request of type __init__.py:431 ListToolsRequest的内容,可以忽略;这不会影响其运行。这是因为 cline 会将工具列表与控制台调试信息一起解析,而当前的 python-sdk 无法禁用控制台消息。除了看到此警告外,这不会影响任何函数调用。 - 某些 MMA 文档可能包含复杂的样式格式,难以通过简单的正则表达式移除;这可能会影响你的大模型。请指示它忽略样式格式,并且只使用 InputForm 编写。
截图

评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。