从科学任务和数据源所有者入手
先选择工作流,再选服务器。明确已有的标识符、所需的记录或计算,以及最终答案必须保留的证据。即使都通过 MCP 访问,化合物识别、蛋白质注释、结构检索和材料筛选也需要不同的契约。
区分上游提供方、集成维护者和代理客户端。第三方服务器并不等同于它查询的数据库,文档中记载的客户端配置也不构成互操作性认证。本比较报告来源中描述的能力,并提出评估步骤;它不代表已执行安装或科学测试。
协议背景请参阅化学领域的 MCP。本文聚焦的问题更窄:哪个工具接口能够在来源追溯、权限和运维要求可接受的前提下回答你的科学问题?
比较功能前先确定角色
候选方案分为四类:
- 科学计算: RDKit MCP 提供工具包函数;NovoMCP 封装计算和可配置的外部服务。
- 证据检索: UniProt、RCSB、PubMed 和 Materials Project 集成用于检索指定数据提供方的记录。
- 面向工作流的综合: PocketScout 汇集公开证据,用于已知结合位点的初步筛查。
- 研究接口: Benchling 检索实验室记录;ChemCP 提供嵌入式分子查看器。
不要把这些角色与自主性混为一谈。工作流提示用于指导客户端;它们不是由服务器执行的实验方案。同样,Skill 指令与运行中的软件是两回事,也不会安装依赖项。托管端点会增加一道运营方边界,而 REST API 提供的是另一种访问接口,并不代表额外的科学验证。
对比九个核心候选方案
这九个候选方案的证据截至 2026-10-06(UTC)。表格描述的是来源文档,并非实时服务可用性。许可标签仅涉及仓库代码;上游数据和托管服务的条款需要另行考虑。
| 资源 | 领域与数据来源 | 主要工具或接口 | 代码许可/开源证据 | 典型选择用途 |
|---|---|---|---|---|
| RDKit MCP Server (TandemAI) | 化学信息学;RDKit 库 | 暴露 RDKit 函数、工具列表实用程序、OpenAI CLI、评估套件 | 提供 MIT 许可文本 | 查看实际工具清单后调用工具包计算 |
| UniProt MCP (cyanheads) | 蛋白质证据;UniProt REST | uniprot_search_proteins、条目、ID 映射、分类学、FASTA |
提供 Apache-2.0 许可文本 | 确定蛋白质身份并保留注释来源信息 |
| RCSB MCP (cnyambura) | 结构生物学;RCSB PDB API | get_pdb_entry、聚合物元数据、下载、自定义查询 |
README 声明 MIT;独立许可文本未确认,状态尚未明确 | 检查已知 PDB 条目并获取坐标文件 |
| Materials Project MCP (benedictdebrah) | 材料数据;通过 mp_api 访问 Materials Project |
search_materials、结构、电子/声子数据、性质和能量工具 |
提供 MIT 许可文本 | 搜索材料并检查选定的数据库属性 |
| PubMed MCP (cyanheads) | 生物医学文献;PubMed、PMC、Europe PMC 及备用来源 | 搜索、元数据、可获取的全文、MeSH、引文 | 提供 Apache-2.0 许可文本 | 构建附有提供方和完整性标签的文献证据集 |
| Benchling MCP (longevity-genie) | 实验室记录;Benchling 工作区 | 条目、序列、项目检索和实体搜索 | 提供 MIT 许可文本 | 检索有权访问的研究记录,而非控制仪器 |
| PocketScout MCP | 结合位点初筛;UniProt、PDB、ChEMBL、PubMed、AlphaFold DB | 已知配体接触、保守性、变异、口袋整合和提示 | 提供 MIT 许可文本 | 深入设计工作前汇总靶点简报 |
| NovoMCP | 计算化学;科学软件包和配置的服务 | get_molecule_profile、搜索、可选模拟、流程审计、MCP 和 REST |
Apache-2.0 许可的封装/接口;核心采用 BUSL-1.1,并非统一开源 | 在配置所需服务后协调计算 |
| ChemCP | 分子可视化;在浏览器中加载 RDKit.js | 根据 SMILES 执行 render_molecule;交互式图示和描述符 |
清单声明 ISC;独立许可文本未确认,状态尚未明确 | 在支持 MCP Apps 的宿主中检查结构 |
RDKit 计划暴露所有函数,但这并不能证明已实现全面覆盖。RCSB 的生物体搜索工具返回的是搜索说明,而非检索到的匹配结果。PocketScout 的 interpretation 字段属于软件生成的上下文,应与原始证据明确区分。
检查凭据、运行时和接口要求
以下条件的证据日期均为 2026-10-06(UTC)。这些要求是文档所述的设置条件,并非经过测试的兼容性结论。
| 候选方案 | 凭据 | 文档记录的运行条件和决策要点 |
|---|---|---|
| RDKit MCP | 随附 CLI 客户端需要 OpenAI 密钥 | Python 3.10+ 和固定版本的 RDKit 依赖;选择操作前先检查工具 |
| UniProt MCP | 上游 REST 接口无需密钥 | 支持 STDIO、Streamable HTTP 和托管路由;Bun 前置要求存在冲突,需按具体修订版本核查 |
| RCSB MCP | 摘录未说明需要凭据 | Python 3.13+ 元数据;提供独立运行和 Claude Desktop 示例;检查下载目标路径 |
| Materials Project MCP | Materials Project API 密钥 | 本地 Python 3.12+ 配合 uv,或运行中的 Docker 环境 |
| PubMed MCP | NCBI 密钥可选;提供联系邮箱可启用 Unpaywall 备用方案 | Bun 1.4+ 或 Node.js 24+;支持 STDIO、Streamable HTTP 和托管路由 |
| Benchling MCP | 已启用 API 的账户、密钥和域名 | Python 3.10+;传输文档与入口点默认设置不一致 |
| PocketScout MCP | NCBI 密钥可选 | 本地 Python 3.11+ 或文档所述的托管端点;元数据标注为 Alpha |
| NovoMCP | 本地默认配置不包含身份验证;托管配置有所不同 | README 指定 Python 3.10–3.12;可选科学服务决定了可用能力 |
| ChemCP | 未说明需要服务器凭据 | Node.js 18+;查看器需要 MCP Apps 支持和 CDN 访问权限 |
UniProt 的 README 最低要求为 Bun 1.3,而其清单要求 1.4。Benchling 的 README 将直接启动描述为 HTTP,但元数据却将其映射为 STDIO。应检查选定的修订版本和启动路由,不要猜测。ChemCP 的 web connector 处于实验阶段,内容安全限制可能会阻止 RDKit.js 加载。
根据任务选择最精简而有效的工具接口
对于化学信息学,先决定需要计算还是检索。RDKit MCP 是工具包接口;ChemCP 是查看器。RDKit 工作流指南可帮助规划计算阶段。
对于化合物信息补充,PubChem MCP (cyanheads)提供标识符、分子式和结构搜索,以及性质、安全记录、生物活性和构象。PubChem MCP (PhelanShao)则侧重于 get_pubchem_data、JSON/CSV/XYZ,以及结构文件下载。不得将备用方案生成的坐标称为从 PubChem 检索到的构象。设计标识符传递流程时,可参阅PubChem 集成指南。
对于药物发现,UniProt 提供蛋白质身份信息,RCSB 提供结构记录,ChEMBL MCP (cyanheads)则关联化合物、靶点、测得的活性和测定来源信息。PocketScout 是针对已知位点初筛的专用替代方案;NovoMCP 则增加依赖服务的计算功能。蛋白质结构生物学工作流提供了按阶段组织的补充视角。
对于文献研究,如需查询详情、文章元数据和可获取的文本,可选择 PubMed。对于材料发现,应单独评估第三方 Materials Project 服务器明确列出的工具与 Materials Project API。官方 mp-api 项目声明提供可选的 MCP 依赖项和 mpmcp 入口点,但摘录并未说明其 MCP 工具清单。
对于实验室自动化,Benchling 的文档范围是记录检索和搜索,而不是编辑记录或控制仪器。对于广义的科学数据任务,来源可追溯性和数据完整性应优先于宣传的工具数量。化学 API 指南有助于判断直接访问 API 是否更适合确定性流程。
材料研究的阶段划分可参阅材料科学 AI 工作流。
检查输入、输出和权限契约
为可接受的标识符、必填字段、筛选条件、单位、分页、文件和错误状态建立契约表。分别检查工具和资源:仅支持工具的客户端可能无法呈现 URI 资源或嵌入式查看器。
保留重要差异。PubChem 会区分 ok、no_ghs_data 和 cid_not_found;没有分类数据不等于证明安全。UniProt ID 映射会区分仍在运行的作业凭证与已完成页面的续页标记,而超大条目可能需要按区段后续获取。ChEMBL 将缺失的效力值保留为 null,并区分 null_potency 和已排序行。其可选 DuckDB 分析对预览和分阶段数据设有不同的上限,删除数据表还需单独选择启用。
审查网络目标、日志、存储和文件系统写入。公开来源数据并不意味着机密查询不会造成风险。RCSB 下载和 PhelanShao 缓存需要进行文件系统审查;Benchling 需要工作区访问控制。NovoMCP 的本地默认配置未启用身份验证,在向网络开放前需要有意实施隔离。只批准任务所需的操作。
拟议示例:多服务器靶点证据档案
**拟议但未经测试的工作流:**为人类 EGFR 和三个已公开确定的化合物准备档案。输入包括基因符号及生物体、具有可用结构标识符的化合物名称、测量类型 IC50,以及有界的文献日期范围。不需要对接或生成坐标。
- **使用 UniProt 确认身份。**获取登录号、生物体、整理状态指标和相关交叉引用。若身份仍有歧义则停止;对仍在运行的映射任务使用任务凭证或续页标记继续处理,而不是重复提交作业。
- **使用 PubChem 和 ChEMBL 确认化合物。**保存来源各自的标识符和结构。若身份无法解析或存在冲突则停止;仅凭共同名称不足以完成核对。
- **通过 ChEMBL 检索活性。**根据已确认的登录号解析靶点,收集化合物—靶点测量结果,并用
chembl_get_assay检查选定记录。保留一种standard_type;同时保留测量值限定符(relation)、单位、物种和缺失的效力值。 - **通过 RCSB 检查引用的结构。**为已确认的 PDB 交叉引用检索条目和聚合物元数据。判断是否需要下载坐标;不能把存在结构当作化合物有效的证据。
- **通过 PubMed 检索文献。**保存实际执行的查询、标识符、摘要、勘误/撤稿链接,以及全文提供方或无法获取的标签。
拟议输出为一份证据表,其中包括标识符、测定背景、结构引用、引文、检索条件和未解决问题。可以将 PocketScout 作为备选初筛分支进行评估,但不能假定它能独立复现这条组合构建的流程。将档案传递给 DrugAgent 属于另行拟议的下游集成,并非已证实的互操作性。
明确处理故障和科学局限
使用一小组非敏感样本,并与独立确认的预期记录进行核对。纳入含糊名称、无效 ID、缺失字段、多页响应、无法获取的全文和受控的提供方故障。保留原始输出和摘要;检查摘要过程是否保留了部分失败和截断信息。在有界策略内重试暂时性故障;对无效输入应先修正,而不是反复发送。
科学适用性是另一个独立门槛。相似性不等同于身份;测量类型相同也不保证测定结果可比。检索到的坐标、计算描述符和依赖服务的预测具有不同的证据作用。PocketScout 面向已知位点,不用于预测新口袋;其保守性方法是局部上下文匹配,而非完整的多序列比对。仅检索材料性质并不能证明材料可通过实验实现。基于 LLM 的评估裁判和仓库测试说明均不能证明科学有效性。
保留一份简明决策清单
- [ ] 定义所需输入、输出、单位和来源归属。
- [ ] 确认实际工具清单和缺失数据状态。
- [ ] 记录凭据、运行时、修订版本以及客户端/传输配对。
- [ ] 部署前解决已记录的运行时或传输冲突。
- [ ] 限制网络、工作区、存储、日志和文件权限。
- [ ] 分别评估分页、部分故障和科学解释。
- [ ] 区分代码、数据库和托管服务条款。
- [ ] 记录仍未知的事项,并在接口变更后重新评估。
来源
主要能力参考资料:RDKit README、UniProt README、RCSB README、Materials Project MCP README、PubMed README、Benchling README、PocketScout README、NovoMCP README 和 ChemCP README。
补充契约资料:cyanheads PubChem、PhelanShao PubChem、ChEMBL、Materials Project 官方软件包元数据 和官方数据访问文档。NovoMCP 的许可区分依据其顶层许可文件和核心许可文件。