electrochemical_server
MCP 服务配置
复制以下 JSON 到 OPClaw 或其他 MCP 客户端的配置文件中即可使用
{
"mcpServers": {
"electrochemistry-mcp-server": {
"args": [
"C:\\Users\\Cheng Wang\\Desktop\\教育部大模型项目\\尝试搭建MCP\\Try_MCP\\electrochem_mcp_server.py"
],
"command": "D:\\anaconda3\\envs\\pytorch_cuda12\\python.exe"
}
}
}
服务介绍
电化学MCP服务器 (Electrochemical MCP Server)
一个用于大模型调用电化学工具的集成平台,提供原电池电动势计算等功能。
项目简介
电化学MCP服务器是一个基于Python和官方MCP SDK构建的Model Context Protocol (MCP)服务,旨在为大模型提供电化学工具调用接口,实现大模型与电化学计算工具的无缝集成。
核心功能
- ⚡ 原电池电动势计算: 提供基于标准电极电势和Nernst方程的电化学电势计算
- 📋 标准电极数据库: 内置多种常见电极的标准电势数据
- 🤖 MCP协议支持: 完全符合Model Context Protocol标准
- 📦 模块化设计: 易于扩展和维护
技术栈
- Python 3.10+
- 官方MCP SDK
- asyncio (异步编程)
快速开始
安装依赖
确保已经安装了Python 3.10或更高版本,然后安装MCP SDK:
pip install mcp
启动服务器
直接运行服务器文件:
python electrochem_mcp_server.py
服务器将以stdio模式启动,等待MCP客户端连接。
MCP客户端配置
在支持MCP协议的客户端(如Claude Desktop)中使用以下JSON配置:
{
"mcpServers": {
"electrochemistry-mcp-server": {
"command": "D:\\anaconda3\\envs\\pytorch_cuda12\\python.exe",
"args": [
"C:\\Users\\Cheng Wang\\Desktop\\教育部大模型项目\\尝试搭建MCP\\Try_MCP\\electrochem_mcp_server.py"
],
"cwd": "C:\\Users\\Cheng Wang\\Desktop\\教育部大模型项目\\尝试搭建MCP\\Try_MCP"
}
}
}
可用工具
1. calculate_cell_potential
计算原电池的电动势,考虑标准电极电势和Nernst方程。
参数:
cathode: 阴极电对 (如 "Cu2+/Cu")anode: 阳极电对 (如 "Zn2+/Zn")concentration_cathode: 阴极离子浓度 (默认: 1.0 M)concentration_anode: 阳极离子浓度 (默认: 1.0 M)temperature: 温度 (默认: 298.15 K)
响应示例:
{
"cathode": {
"electrode": "Cu2+/Cu",
"E_standard": 0.34
},
"anode": {
"electrode": "Zn2+/Zn",
"E_standard": -0.76
},
"E_cell_standard_V": 1.1,
"E_cell_actual_V": 1.1296,
"n_electrons": 2,
"is_spontaneous": true,
"conditions": {
"concentration_cathode_M": 1.0,
"concentration_anode_M": 0.1,
"temperature_K": 298.15
}
}
2. list_electrodes
列出所有内置的标准电极电势数据。
参数:无
响应示例:
[
{
"electrode": "Li+/Li",
"E_standard_V": -3.04,
"n_electrons": 1
},
{
"electrode": "K+/K",
"E_standard_V": -2.93,
"n_electrons": 1
},
...
]
3. get_electrode_potential
获取特定电极的标准电势数据。
参数:
electrode: 电极电对 (如 "Cu2+/Cu")
响应示例:
{
"electrode": "Cu2+/Cu",
"E_standard_V": 0.34,
"n_electrons": 2
}
项目结构
Try_MCP/
├── electrochem_mcp_server.py # 电化学MCP服务器主程序
├── test_electrochem.py # 服务器测试文件
└── README.md # 项目文档
使用示例
在支持MCP的AI模型中,您可以这样使用这些工具:
我想计算一个Cu-Zn原电池的电动势,其中铜离子浓度为1.0M,锌离子浓度为0.1M,温度为25°C。请使用calculate_cell_potential工具。
或者:
请列出所有可用的电极电势数据,使用list_electrodes工具。
测试服务器
运行测试脚本验证服务器功能:
python test_electrochem.py
扩展开发
添加新的电极电势
在electrochem_mcp_server.py文件中,找到STANDARD_ELECTRODE_POTENTIALS字典,添加新的电极数据:
STANDARD_ELECTRODE_POTENTIALS = {
"新电极": (电势值, 转移电子数),
# 其他电极...
}
添加新的工具
- 在
electrochem_mcp_server.py文件中,定义新的工具函数 - 使用
@server.tool()装饰器注册工具 - 在
@server.list_tools()中添加工具信息 - 在
@server.call_tool()中处理工具调用
注意事项
- 确保使用正确的Python环境,该环境需要安装mcp库
- 服务器使用stdio与MCP客户端通信,不需要网络端口
- 内置的电极电势数据基于标准条件(25°C, 1 atm)
许可证
MIT License
联系信息
如有问题或建议,请随时联系项目维护者。