Surechembl Mcp Server

Surechembl Mcp Server

🚀 非官方 SureChEMBL MCP 服务器

这是一个全面的模型上下文协议(MCP)服务器,用于访问 SureChEMBL 化学专利数据库。该服务器提供了专利搜索、化学发现、结构分析和专利情报研究等工具。

Augmented Nature 开发

🚀 快速开始

SureChEMBL 是一个大规模的化学专利数据库,可提供化学结构及其相关专利文档的访问。此 MCP 服务器能够与 SureChEMBL 的 API 实现无缝集成,提供强大的工具用于:

  • 专利情报:搜索和分析化学专利
  • 化学发现:查找化合物及其专利覆盖范围
  • 现有技术研究:识别现有的化学公开信息
  • 竞争分析:跟踪各公司的化学发展情况
  • 构效分析:将化学结构与专利权利要求相关联

✨ 主要特性

🔍 文档与专利搜索(4 种工具)

  • search_patents - 按文本、关键词或标识符搜索专利
  • get_document_content - 获取带有化学注释的完整专利文档内容
  • get_patent_family - 获取专利族成员及其关系
  • search_by_patent_number - 按特定专利号搜索

🧪 化学物质搜索与检索(4 种工具)

  • search_chemicals_by_name - 按名称或同义词搜索化学物质
  • get_chemical_by_id - 按 SureChEMBL ID 获取详细的化学物质信息
  • search_by_smiles - 按 SMILES 结构表示法搜索化学物质
  • search_by_inchi - 按 InChI/InChI 键搜索化学物质

🖼️ 结构与可视化(2 种工具)

  • get_chemical_image - 生成化学结构图像
  • get_chemical_properties - 获取分子性质和描述符

📊 数据导出与分析(2 种工具)

  • export_chemicals - 批量导出化学物质数据(CSV/XML 格式)
  • analyze_patent_chemistry - 分析专利中的化学物质内容

🔬 高级分析工具(3 种工具)

  • get_chemical_frequency - 获取化学物质在整个专利数据库中的频率统计信息
  • search_similar_structures - 使用相似性搜索查找结构相似的化学物质
  • get_patent_statistics - 获取专利中化学物质内容的统计概述

📚 资源模板

  • surechembl://document/{doc_id} - 专利文档内容
  • surechembl://chemical/{chem_id} - 化合物数据
  • surechembl://family/{patent_id} - 专利族信息
  • surechembl://search/{query} - 搜索结果

📦 安装指南

前提条件

  • Node.js 18+
  • npm 或 yarn

安装依赖项

npm install

构建服务器

npm run build

开发模式

npm run watch

💻 使用示例

启动服务器

npm start

在 Claude Desktop 中使用

将以下内容添加到你的 Claude Desktop 配置文件中: macOS~/Library/Application Support/Claude/claude_desktop_config.json Windows%APPDATA%/Claude/claude_desktop_config.json

{
"mcpServers": {
"surechembl-server": {
"command": "node",
"args": ["/path/to/surechembl-server/build/index.js"]
}
}
}

在 MCP Inspector 中使用

npm run inspector

基础用法

按名称搜索化学物质

// 搜索与阿司匹林相关的化合物
await use_mcp_tool({
server_name: "surechembl-server",
tool_name: "search_chemicals_by_name",
arguments: {
name: "aspirin",
limit: 10,
},
});

获取专利文档内容

// 获取带有化学注释的完整专利文档
await use_mcp_tool({
server_name: "surechembl-server",
tool_name: "get_document_content",
arguments: {
document_id: "WO-2020096695-A1",
},
});

生成化学结构图像

// 根据 SMILES 生成结构图像
await use_mcp_tool({
server_name: "surechembl-server",
tool_name: "get_chemical_image",
arguments: {
structure: "CC(=O)OC1=CC=CC=C1C(=O)O",
width: 300,
height: 200,
},
});

分析专利中的化学物质

// 分析专利中的化学注释
await use_mcp_tool({
server_name: "surechembl-server",
tool_name: "analyze_patent_chemistry",
arguments: {
document_id: "US-2021123456-A1",
},
});

📚 详细文档

工具参考

文档与专利搜索

search_patents

按文本、关键词或标识符搜索专利。 参数

  • query(字符串,必需):搜索查询
  • limit(数字,可选):结果限制(1 - 1000,默认值:25)
  • offset(数字,可选):结果偏移量(默认值:0)
get_document_content

获取带有化学注释的完整专利文档内容。 参数

  • document_id(字符串,必需):专利文档 ID(例如,WO - 2020096695 - A1)
get_patent_family

获取专利族成员及其关系。 参数

  • patent_id(字符串,必需):用于查找族成员的专利 ID
search_by_patent_number

按特定专利号搜索专利。 参数

  • patent_number(字符串,必需):专利号或公开号

化学物质搜索与检索

search_chemicals_by_name

按名称、同义词或通用名搜索化学物质。 参数

  • name(字符串,必需):化学物质名称或同义词
  • limit(数字,可选):结果限制(1 - 1000,默认值:25)
get_chemical_by_id

按 SureChEMBL 化学物质 ID 获取详细的化学物质信息。 参数

  • chemical_id(字符串,必需):SureChEMBL 化学物质 ID(数字)
search_by_smiles

按 SMILES 结构表示法搜索化学物质。 参数

  • smiles(字符串,必需):SMILES 字符串
  • limit(数字,可选):结果限制(1 - 1000,默认值:25)
search_by_inchi

按 InChI 或 InChI 键搜索化学物质。 参数

  • inchi(字符串,必需):InChI 字符串或 InChI 键
  • limit(数字,可选):结果限制(1 - 1000,默认值:25)

结构与可视化

get_chemical_image

根据 SMILES 或其他结构表示法生成化学结构图像。 参数

  • structure(字符串,必需):SMILES 字符串或结构表示法
  • height(数字,可选):图像高度(像素)(默认值:200)
  • width(数字,可选):图像宽度(像素)(默认值:200)
get_chemical_properties

获取化学物质的分子性质和描述符。 参数

  • chemical_id(字符串,必需):SureChEMBL 化学物质 ID

数据导出与分析

export_chemicals

以 CSV 或 XML 格式批量导出化学物质数据。 参数

  • chemical_ids(数组,必需):SureChEMBL 化学物质 ID 数组(1 - 100)
  • output_type(字符串,可选):导出格式 - 'csv' 或 'xml'(默认值:csv)
  • kind(字符串,可选):ID 类型 - 'cid' 或 'smiles'(默认值:cid)
analyze_patent_chemistry

分析专利文档中的化学物质内容和注释。 参数

  • document_id(字符串,必需):要分析的专利文档 ID

高级分析工具

get_chemical_frequency

获取化学物质在整个专利数据库中的频率统计信息。 参数

  • chemical_id(字符串,必需):SureChEMBL 化学物质 ID
search_similar_structures

使用相似性搜索查找结构相似的化学物质。 参数

  • reference_id(字符串,必需):用于相似性搜索的参考化学物质 ID
  • threshold(数字,可选):相似性阈值(0.0 - 1.0,默认值:0.7)
  • limit(数字,可选):返回的结果数量(1 - 100,默认值:25)
get_patent_statistics

获取专利中化学物质内容的统计概述。 参数

  • document_id(字符串,必需):用于统计的专利文档 ID
  • include_annotations(布尔值,可选):包括详细的注释统计信息(默认值:true)

资源模板

文档资源

surechembl://document/{doc_id}

访问带有化学注释的完整专利文档内容。

化学物质资源

surechembl://chemical/{chem_id}

访问化合物信息和性质。

专利族资源

surechembl://family/{patent_id}

访问专利族成员及其关系。

搜索资源

surechembl://search/{query}

访问查询的化学搜索结果。

🔧 技术细节

错误处理

服务器包含全面的错误处理机制,用于处理以下情况:

  • 无效的 API 参数
  • 网络超时和连接问题
  • API 速率限制
  • 格式错误的化学结构
  • 缺失的文档或化学物质

所有错误都会返回描述性消息和适当的错误代码。

速率限制

服务器遵守 SureChEMBL 的 API 速率限制:

  • 复杂请求的 30 秒超时
  • 合理的请求间隔
  • 针对临时故障的自动重试逻辑

开发

项目结构

surechembl-server/
├── src/
│   └── index.ts          # 主服务器实现
├── build/                # 编译后的 JavaScript
├── package.json          # 依赖项和脚本
├── tsconfig.json         # TypeScript 配置
└── README.md            # 本文件

可用脚本

  • npm run build - 将 TypeScript 编译为 JavaScript
  • npm run watch - 开发模式下的监听模式
  • npm run inspector - 运行 MCP 检查器
  • npm start - 启动服务器
  • npm run dev - 带监听的开发模式

贡献

  1. 分叉仓库
  2. 创建功能分支
  3. 进行更改
  4. 如有必要添加测试
  5. 提交拉取请求

📄 许可证

本项目采用 MIT 许可证 - 详情请参阅 LICENSE 文件。

支持

如有问题和疑问:

相关项目

引用

如果您在研究或出版物中使用了本项目,请按以下方式引用:

@misc{surechemblmcp2025,
author = {Moudather Chelbi},
title = {SureChEMBL MCP Server},
year = {2025},
howpublished = {https://github.com/Augmented-Nature/SureChEMBL-MCP-Server},
note = {Accessed: 2025-06-29}

SureChEMBL MCP 服务器 - 通过模型上下文协议赋能化学专利情报。

  • 0 关注
  • 0 收藏,15 浏览
  • system 提出于 2025-09-22 07:15

相似服务问题

相关AI产品