本服务器是一个全面的模型上下文协议(MCP)服务器,可提供对 ChEMBL 化学数据库的高级访问。它提供 22 种专业工具,使 AI 助手和 MCP 客户端能够直接通过 ChEMBL 的 REST API 进行复杂的药物发现研究、化学信息学分析和生物活性研究。
由 Augmented Nature 开发
可通过 URI 模板直接访问 ChEMBL 数据,实现无缝集成。
git clone
cd chembl-server
npm install
npm run build
docker build -t chembl-mcp-server .
docker run -i chembl-mcp-server
对于 MCP 客户端集成,可直接使用以下配置:
{
"mcpServers": {
"chembl": {
"command": "docker",
"args": ["run", "-i", "chembl-mcp-server"],
"env": {}
}
}
}
npm start
将服务器添加到 MCP 客户端配置(例如,Claude Desktop):
{
"mcpServers": {
"chembl": {
"command": "node",
"args": ["/path/to/chembl-server/build/index.js"],
"env": {}
}
}
}
按名称、同义词或标识符搜索 ChEMBL 数据库中的化合物。 参数:
query(必填):搜索查询(化合物名称、同义词或标识符)limit(可选):返回结果的数量(1 - 1000,默认值:25)offset(可选):跳过的结果数量(默认值:0)示例:
{
"query": "aspirin",
"limit": 10
}
通过 ChEMBL ID 获取特定化合物的详细信息。 参数:
chembl_id(必填):ChEMBL 化合物 ID(例如,CHEMBL25)示例:
{
"chembl_id": "CHEMBL25"
}
按名称或类型搜索生物靶点。 参数:
query(必填):靶点名称或搜索查询target_type(可选):靶点类型过滤器(例如,SINGLE PROTEIN、PROTEIN COMPLEX)organism(可选):生物体过滤器limit(可选):返回结果的数量(1 - 1000,默认值:25)示例:
{
"query": "dopamine receptor",
"organism": "Homo sapiens",
"limit": 5
}
搜索生物活性测量值和测定结果。 参数:
target_chembl_id(可选):ChEMBL 靶点 ID 过滤器assay_chembl_id(可选):ChEMBL 测定 ID 过滤器molecule_chembl_id(可选):ChEMBL 化合物 ID 过滤器activity_type(可选):活性类型(例如,IC50、Ki、EC50)limit(可选):返回结果的数量(1 - 1000,默认值:25)示例:
{
"target_chembl_id": "CHEMBL2095173",
"activity_type": "IC50",
"limit": 50
}
高效处理多个 ChEMBL ID。 参数:
chembl_ids(必填):ChEMBL 化合物 ID 数组(1 - 50)示例:
{
"chembl_ids": ["CHEMBL25", "CHEMBL59", "CHEMBL1642"]
}
chembl://compound/{chembl_id}chembl://compound/CHEMBL25chembl://target/{chembl_id}chembl://target/CHEMBL2095173chembl://assay/{chembl_id}chembl://assay/CHEMBL1217643chembl://activity/{activity_id}chembl://activity/12345678chembl://search/{query}chembl://search/aspirin搜索与阿司匹林相关的化合物:
// 工具调用
{
"tool": "search_compounds",
"arguments": {
"query": "aspirin",
"limit": 5
}
}
检索阿司匹林的全面信息:
// 工具调用
{
"tool": "get_compound_info",
"arguments": {
"chembl_id": "CHEMBL25"
}
}
查找针对多巴胺受体测试的化合物:
// 工具调用
{
"tool": "search_targets",
"arguments": {
"query": "dopamine receptor D2",
"organism": "Homo sapiens"
}
}
搜索针对特定靶点的 IC50 数据:
// 工具调用
{
"tool": "search_activities",
"arguments": {
"target_chembl_id": "CHEMBL2095173",
"activity_type": "IC50",
"limit": 100
}
}
高效处理多个化合物:
// 工具调用
{
"tool": "batch_compound_lookup",
"arguments": {
"chembl_ids": ["CHEMBL25", "CHEMBL59", "CHEMBL1642", "CHEMBL1201585"]
}
}
本服务器与 ChEMBL REST API 集成,可通过编程方式访问化学数据。有关 ChEMBL 的更多信息:
所有 API 请求包含以下信息:
ChEMBL-MCP-Server/1.0.0https://www.ebi.ac.uk/chembl/api/data服务器包含全面的错误处理机制:
npm run build
以监听模式运行 TypeScript 编译器:
npm run dev
chembl-server/
├── src/
│ └── index.ts # 主服务器实现
├── build/ # 编译后的 JavaScript 输出
├── package.json # Node.js 依赖项和脚本
├── tsconfig.json # TypeScript 配置
└── README.md # 本文件
本项目采用 MIT 许可证。
如有问题和疑问:
这个全面的 ChEMBL MCP 服务器由 Augmented Nature 开发,该公司是人工智能驱动的生物信息学和计算化学解决方案的领先创新者。Augmented Nature 专注于创建先进工具,弥合人工智能与化学研究之间的差距,使研究人员能够从化学和生物数据中获得更深入的见解。
search_compounds - 按名称、同义词或标识符搜索 ChEMBL 数据库get_compound_info - 通过 ChEMBL ID 获取详细化合物信息search_by_inchi - 通过 InChI 键或 InChI 字符串查找化合物get_compound_structure - 以各种格式检索化学结构search_similar_compounds - 使用 Tanimoto 相似性查找化学结构相似的化合物search_targets - 按名称或类型搜索生物靶点get_target_info - 通过 ChEMBL 靶点 ID 获取详细靶点信息get_target_compounds - 获取针对特定靶点测试的化合物search_by_uniprot - 通过 UniProt 登录号查找 ChEMBL 靶点get_target_pathways - 获取与靶点相关的生物通路search_activities - 搜索生物活性测量值和测定结果get_assay_info - 通过 ChEMBL 测定 ID 获取详细测定信息search_by_activity_type - 按活性类型和值范围查找生物活性数据get_dose_response - 获取剂量反应数据和活性概况compare_activities - 比较多种化合物的生物活性数据search_drugs - 搜索已批准药物和临床候选药物get_drug_info - 获取药物开发状态和临床试验信息search_drug_indications - 搜索治疗适应症和疾病领域get_mechanism_of_action - 获取作用机制和靶点相互作用数据analyze_admet_properties - 分析 ADMET 性质calculate_descriptors - 计算分子描述符和物理化学性质predict_solubility - 预测水溶性和渗透性assess_drug_likeness - 使用 Lipinski 五规则评估类药性substructure_search - 查找包含特定子结构的化合物batch_compound_lookup - 高效处理多个 ChEMBL IDget_external_references - 获取外部数据库的链接advanced_search - 使用多个化学和生物过滤器进行复杂查询如果您在研究或出版物中使用本项目,请按以下方式引用:
@misc{chemblmcp2025,
author = {Moudather Chelbi},
title = {ChEMBL MCP Server},
year = {2025},
howpublished = {https://github.com/Augmented-Nature/ChEMBL-MCP-Server},
note = {Accessed: 2025-06-29}
}