非官方PubChem MCP服务器
用于访问PubChem化学数据库的综合模型上下文协议(MCP)服务器。该服务器提供对超过1.1亿种具有广泛分子特性、生物测定数据和化学信息学工具的化合物的访问。
特性
🔍 化学搜索与检索(6个工具)
- 搜索_磅 -按名称、CAS编号、公式或标识符进行搜索
- 获取信息 -CID提供的详细化合物信息
- 搜索\_ \_微笑 -精确匹配SMILES字符串
- 搜索_by_inchi -InChI/InChI关键字搜索
- 搜索_by_cas_number -CAS注册号查询
- get_compond_同义词 -所有名称和同义词
🧬 结构分析与相似性(5个工具)
- 搜索_相似_磅 -Tanimoto相似性搜索
- 子结构搜索 -查找含有子结构的化合物
- 上层建筑搜索 -查找包含查询的较大化合物
- get_3d一致性 -三维结构信息
- 分析地球化学 -手性和异构体分析
⚗️ 化学性质和描述符(6个工具)
- get_compound属性 -分子量、logP、TPSA等。
- 计算器描述符 -综合分子描述符
- predict_admet属性 -ADMET预测
- 评估_粗糙度 -Lipinski五分法分析
- 分子复杂性分析 -综合可达性
- get_制药厂_特征 -药效团图谱
🧪 生物测定和活性数据(5个工具)
- search_bioassays -查找生物检测
- 获取_分析_信息 -详细的检测方案
- 生物活性 -化合物的所有活性数据
- 搜索_目标 -找到针对目标进行测试的化合物
- 比较活动文件 -交叉化合物比较
⚠️ 安全性和毒性(4个工具)
- 获取安全数据 -GHS危害分类
- 获取毒性信息 -LD50,致癌性数据
- 评估环境命运 -生物降解分析
- get_regulatory_info -美国食品药品监督管理局、美国环保署法规
🔗 交叉引用和集成(4个工具)
- 获取外部引用 -链接到ChEMBL、DrugBank等。
- 搜索_帐篷 -化学专利信息
- get_literature_references -PubMed引文
- 批量查询 -批量加工(最多200种化合物)
资源模板
通过URI模式访问PubChem数据:
pubchem://compound/{cid}-完整的化合物数据pubchem://structure/{cid}-2D/3D结构信息pubchem://properties/{cid}-分子性质pubchem://bioassay/{aid}-生物测定数据pubchem://similarity/{smiles}-相似性搜索结果pubchem://safety/{cid}-安全性和毒性数据
安装
# Clone or create the server directory
cd pubchem-server
# Install dependencies
npm install
# Build the server
npm run build
# Run the server
npm start用法
基本化合物搜索
// Search for compounds by name
{
"tool": "search_compounds",
"arguments": {
"query": "aspirin",
"max_records": 10
}
}
// Get detailed compound information
{
"tool": "get_compound_info",
"arguments": {
"cid": 2244
}
}结构分析
// Find similar compounds
{
"tool": "search_similar_compounds",
"arguments": {
"smiles": "CC(=O)OC1=CC=CC=C1C(=O)O",
"threshold": 85,
"max_records": 50
}
}
// Analyze molecular properties
{
"tool": "get_compound_properties",
"arguments": {
"cid": 2244,
"properties": ["MolecularWeight", "XLogP", "TPSA"]
}
}活性分析
// Get bioassay information
{
"tool": "get_assay_info",
"arguments": {
"aid": 1159607
}
}
// Search compounds by target
{
"tool": "search_by_target",
"arguments": {
"target": "cyclooxygenase",
"max_records": 100
}
}安全信息
// Get safety classifications
{
"tool": "get_safety_data",
"arguments": {
"cid": 2244
}
}批处理
// Process multiple compounds
{
"tool": "batch_compound_lookup",
"arguments": {
"cids": [2244, 5090, 3672],
"operation": "property"
}
}与其他MCP服务器集成
此PubChem服务器与其他化学/生物数据库完美集成:
完整的化学信息学管道
1. Target Discovery: UniProt → STRING → AlphaFold
2. Chemical Discovery: PubChem ← → ChEMBL
3. Complete Workflow: Protein → Structure → Interactions → Small Molecules → Bioactivity跨数据库工作流
- UniProt→ PubChem:查找蛋白质靶标→ 寻找小分子配体
- PubChem→ 中国:发现化合物→ 分析生物活性数据
- 字符串→ PubChem:蛋白质相互作用→ 化学调节剂
API费率限制
PubChem API指南:
- 每秒5个请求
- 每分钟最多400个请求
- 不需要API密钥
- 鼓励尊重使用
数据源
- 1.1亿多种化合物 有完整的化学数据
- 150多万次生物测定 具有生物活性
- 化学性质 以及计算描述符
- 3D变形器 结构数据
- 安全分类 毒性信息
- 交叉引用 500多个外部数据库
错误处理
服务器包括全面的错误处理:
- 无效的复合ID返回明确的错误消息
- API超时处理得当
- 内置限速合规性
- 对所有输入进行TypeScript验证
贡献
此服务器使用:
- TypeScript 用于类型安全
- 阿西奥斯 对于HTTP请求
- MCP-SDK 符合协议
- PubChem REST API 用于数据访问
许可证
MIT许可证-有关详细信息,请参阅许可证文件。
支持
对于以下问题:
- 服务器功能:检查错误消息和API响应
- PubChem API:请参阅PubChem官方文件
- 化学数据:验证复合标识符和搜索词
例子
药物研发工作流程
// 1. Search for anti-inflammatory compounds
{
"tool": "search_compounds",
"arguments": {
"query": "anti-inflammatory",
"max_records": 100
}
}
// 2. Analyze drug-likeness
{
"tool": "assess_drug_likeness",
"arguments": {
"cid": 2244
}
}
// 3. Check safety profile
{
"tool": "get_safety_data",
"arguments": {
"cid": 2244
}
}
// 4. Find bioactivity data
{
"tool": "search_by_target",
"arguments": {
"target": "COX-2",
"activity_type": "IC50"
}
}化学相似性分析
// 1. Find similar compounds
{
"tool": "search_similar_compounds",
"arguments": {
"smiles": "your_query_smiles",
"threshold": 90
}
}
// 2. Compare molecular properties
{
"tool": "batch_compound_lookup",
"arguments": {
"cids": [1234, 5678, 9012],
"operation": "property"
}
}
// 3. Analyze structural features
{
"tool": "analyze_stereochemistry",
"arguments": {
"cid": 1234
}
}建筑
服务器采用模块化架构构建:
- 类型安全验证 用于所有API输入
- 全面的错误处理 信息清晰
- 高效的批处理 适用于多种化合物
- 资源模板 用于直接数据访问
- 集成就绪 用于多数据库工作流
这使其成为目前最全面的化学信息MCP服务器!
引用
如果您在研究或出版物中使用此项目,请按如下方式引用:
author = {Moudather Chelbi},
title = {PubChem MCP Server},
year = {2025},
howpublished = {https://github.com/Augmented-Nature/PubChem-MCP-Server},
note = {Accessed: 2025-06-29}