PubChem MCP Server

PubChem MCP Server

site icon
2025.03.31 3
Python化学数据查询PubChem 数据库接口其它
PubChem MCP Server 是一个基于 Python 实现的 MCP 服务器,用于从 PubChem 数据库中检索化学化合物数据。它通过标准的 MCP 接口提供对化合物属性、2D 结构和 3D 分子坐标的便捷访问。
View on GitHub

Overview

基本能力

产品定位

PubChem MCP Server 是一个专门用于查询化学化合物数据的 MCP 服务器,主要服务于需要访问 PubChem 数据库的 AI 模型和应用。

核心功能

  • 通过名称或 PubChem CID 查询化合物
  • 检索全面的化合物数据,包括:
  • IUPAC 名称
  • 分子式
  • 分子量
  • SMILES 表示法
  • InChI 和 InChIKey
  • 支持多种输出格式:
  • JSON(默认)
  • CSV
  • XYZ(3D 结构)
  • 内置缓存系统以提高性能
  • 自动重试机制提高 API 可靠性
  • 如果 PubChem 3D 不可用,提供备用 3D 结构生成

适用场景

  • AI 模型需要查询化学化合物信息
  • 需要从 PubChem 数据库获取化合物属性的应用
  • 需要处理 3D 分子结构的化学研究

工具列表

  1. get_pubchem_data
  2. 检索化学化合物结构和属性数据
  3. 参数:

    • query(必需):化合物名称或 PubChem CID
    • format(可选):输出格式 - "JSON"(默认)、"CSV" 或 "XYZ"
    • include_3d(可选):是否包含 3D 结构(仅当格式为 "XYZ" 时有效)
  4. download_structure

  5. 下载化合物的结构文件
  6. 参数:
    • cid(必需):PubChem CID
    • format(可选):文件格式 - "sdf"(默认)、"mol" 或 "smi"
    • filename(可选):下载结构的自定义文件名

常见问题解答

  • 缓存机制:API 响应缓存在内存中,3D 结构数据缓存在 ~/.pubchem-mcp/cache/
  • 3D 结构处理:可选安装 RDKit 以增强 3D 结构处理能力

使用教程

使用依赖

  • Python 3.8+
  • Requests 库
  • RDKit(可选,用于增强 3D 结构处理)

安装教程

# 克隆仓库
git clone https://github.com/yourusername/pubchem-mcp-server.git
cd pubchem-mcp-server/python_version

# 安装包
pip install -e .

# 如需增强 3D 结构处理,安装 RDKit
pip install -e ".[rdkit]"

MCP 配置

在 MCP 配置文件中添加以下内容:

{
  "mcpServers": {
    "pubchem": {
      "command": "python3",
      "args": ["/path/to/pubchem-mcp-server/python_version/mcp_server.py"],
      "env": {
        "PYTHONUNBUFFERED": "1"
      },
      "disabled": false,
      "autoApprove": [
        "get_pubchem_data",
        "download_structure"
      ]
    }
  }
}

调试方式

  • 确保 Python 环境正确配置
  • 检查依赖库是否安装完整
  • 验证 MCP 配置文件路径是否正确
  • 测试基本查询功能是否正常工作

许可证

该项目遵循 MIT 开源许可条款。