项目简介
这是一个基于 Model Context Protocol (MCP) 实现的服务器,它通过 MCP 协议将 Wolfram Alpha 的强大计算和知识查询能力暴露给大型语言模型(LLM)客户端。项目包含服务器和客户端示例,展示了如何让 LLM 利用 Wolfram Alpha 处理复杂的数学、科学或数据问题。
主要功能点
- 集成 Wolfram Alpha: 将 Wolfram Alpha 的查询功能封装为 MCP 工具,供 LLM 调用。
- 提供计算和知识查询能力: LLM 可以通过此服务端执行数学计算、单位转换、获取科学数据等。
- 模块化设计: 核心功能通过 MCP 工具暴露,易于扩展集成其他 API。
- 支持图文结果: 能够获取并传递 Wolfram Alpha 返回的文本和图片结果(需客户端和 LLM 支持)。
安装步骤
- 克隆仓库:
git clone https://github.com/ricocf/mcp-wolframalpha.git cd mcp-wolframalpha - 配置 API 密钥:
创建一个名为 '.env' 的文件,并添加以下内容,替换 'your_wolframalpha_appid' 为你的 Wolfram Alpha API 密钥:
WOLFRAM_API_KEY=your_wolframalpha_appid - 安装依赖:
pip install -r requirements.txt
服务器配置
此仓库的核心是 MCP 服务器端代码,位于 'src/core/server.py'。它通常不是直接命令行运行给用户交互的,而是由支持 MCP 协议的 LLM 客户端(如 VSCode 插件、Claude Desktop 等)启动和管理的子进程。
MCP 客户端需要配置服务器的启动信息才能与其通信。典型的配置方式是提供一个 JSON 格式的描述,指明如何启动服务器进程。你需要告诉你的 MCP 客户端:
- 服务器的名称(例如 'WolframAlphaServer')。
- 执行服务器的命令(通常是 'python' 或 'python3')。
- 传递给命令的参数(即服务器脚本的路径,例如 '/path/to/your/cloned/repo/src/core/server.py')。
重要提示: 服务器需要访问 'WOLFRAM_API_KEY' 环境变量。确保在启动服务器的环境中设置了此变量,或者通过客户端配置的方式传递给服务器进程。具体的配置方式请参考你使用的 MCP 客户端的文档。
基本使用方法
MCP 服务器一旦由客户端按上述配置启动,就会在后台运行,监听来自客户端的 JSON-RPC 请求。
- 启动 MCP 客户端: 启动你配置好此 Wolfram Alpha MCP 服务器的 LLM 客户端应用(例如 VSCode with MCP Server Extension, Claude Desktop 等)。
- 客户端调用工具: LLM 客户端会自动发现此服务器提供的工具(本例中是 'query_wolfram'),并在 LLM 需要执行计算或查询知识时,通过 MCP 协议调用 'query_wolfram' 工具,将用户的查询内容作为参数传递给服务器。
- 获取结果: 服务器接收到请求后,会调用 Wolfram Alpha API 执行查询,并将结果通过 MCP 响应返回给客户端,最终由 LLM 根据结果生成回复。
本项目提供的 'main.py' 和 'src/ui' 是一个使用 LangChain 和 Gradio 构建的 MCP 客户端示例,展示了如何连接到此服务器并与 LLM 结合使用。你可以运行 'python main.py --ui' 或 'python main.py' 来测试客户端功能。
信息
分类
AI与计算