![PubChem MCP Server Logo]()
Unofficial PubChem MCP Server
非官方 PubChem MCP 服务器
A comprehensive Model Context Protocol (MCP) server for accessing the PubChem chemical database. This server provides access to over 110 million chemical compounds with extensive molecular properties, bioassay data, and chemical informatics tools.
一个全面的模型上下文协议(MCP)服务器,用于访问 PubChem 化学数据库。该服务器提供对超过 1.1 亿种化学化合物的访问,包含丰富的分子属性、生物测定数据和化学信息学工具。
Features
功能特性
🔍 Chemical Search & Retrieval (6 tools)
🔍 化学搜索与检索(6 个工具)
- search_compounds - Search by name, CAS number, formula, or identifier
- search_compounds - 按名称、CAS 号、分子式或标识符搜索
- get_compound_info - Detailed compound information by CID
- get_compound_info - 通过 CID 获取详细的化合物信息
- search_by_smiles - Exact SMILES string matching
- search_by_smiles - 精确 SMILES 字符串匹配
- search_by_inchi - InChI/InChI key search
- search_by_inchi - InChI/InChI 密钥搜索
- search_by_cas_number - CAS Registry Number lookup
- search_by_cas_number - CAS 登记号查询
- get_compound_synonyms - All names and synonyms
- get_compound_synonyms - 所有名称和同义词
🧬 Structure Analysis & Similarity (5 tools)
🧬 结构分析与相似性(5 个工具)
- search_similar_compounds - Tanimoto similarity search
- search_similar_compounds - Tanimoto 相似性搜索
- substructure_search - Find compounds containing substructures
- substructure_search - 查找包含子结构的化合物
- superstructure_search - Find larger compounds containing query
- superstructure_search - 查找包含查询结构的更大化合物
- get_3d_conformers - 3D structural information
- get_3d_conformers - 3D 结构信息
- analyze_stereochemistry - Chirality and isomer analysis
- analyze_stereochemistry - 手性和异构体分析
⚗️ Chemical Properties & Descriptors (6 tools)
⚗️ 化学性质与描述符(6 个工具)
- get_compound_properties - Molecular weight, logP, TPSA, etc.
- get_compound_properties - 分子量、logP、TPSA 等
- calculate_descriptors - Comprehensive molecular descriptors
- calculate_descriptors - 全面的分子描述符
- predict_admet_properties - ADMET predictions
- predict_admet_properties - ADMET 预测
- assess_drug_likeness - Lipinski Rule of Five analysis
- assess_drug_likeness - Lipinski 五规则分析
- analyze_molecular_complexity - Synthetic accessibility
- analyze_molecular_complexity - 合成可及性
- get_pharmacophore_features - Pharmacophore mapping
- get_pharmacophore_features - 药效团映射
🧪 Bioassay & Activity Data (5 tools)
🧪 生物测定与活性数据(5 个工具)
- search_bioassays - Find biological assays
- search_bioassays - 查找生物测定
- get_assay_info - Detailed assay protocols
- get_assay_info - 详细的测定方案
- get_compound_bioactivities - All activity data for compounds
- get_compound_bioactivities - 化合物的所有活性数据
- search_by_target - Find compounds tested against targets
- search_by_target - 查找针对靶点测试的化合物
- compare_activity_profiles - Cross-compound comparisons
- compare_activity_profiles - 跨化合物比较
⚠️ Safety & Toxicity (4 tools)
⚠️ 安全性与毒性(4 个工具)
- get_safety_data - GHS hazard classifications
- get_safety_data - GHS 危害分类
- get_toxicity_info - LD50, carcinogenicity data
- get_toxicity_info - LD50、致癌性数据
- assess_environmental_fate - Biodegradation analysis
- assess_environmental_fate - 生物降解分析
- get_regulatory_info - FDA, EPA regulations
- get_regulatory_info - FDA、EPA 法规
🔗 Cross-References & Integration (4 tools)
🔗 交叉引用与集成(4 个工具)
- get_external_references - Links to ChEMBL, DrugBank, etc.
- get_external_references - 链接到 ChEMBL、DrugBank 等
- search_patents - Chemical patent information
- search_patents - 化学专利信息
- get_literature_references - PubMed citations
- get_literature_references - PubMed 引用
- batch_compound_lookup - Bulk processing (up to 200 compounds)
- batch_compound_lookup - 批量处理(最多 200 种化合物)
Resource Templates
资源模板
Access PubChem data through URI patterns:
通过 URI 模式访问 PubChem 数据:
pubchem://compound/{cid} - Complete compound data
pubchem://compound/{cid} - 完整的化合物数据
pubchem://structure/{cid} - 2D/3D structure information
pubchem://structure/{cid} - 2D/3D 结构信息
pubchem://properties/{cid} - Molecular properties
pubchem://properties/{cid} - 分子属性
pubchem://bioassay/{aid} - Bioassay data
pubchem://bioassay/{aid} - 生物测定数据
pubchem://similarity/{smiles} - Similarity search results
pubchem://similarity/{smiles} - 相似性搜索结果
pubchem://safety/{cid} - Safety and toxicity data
pubchem://safety/{cid} - 安全性和毒性数据
Installation
安装
# Clone or create the server directory
cd pubchem-server
# Install dependencies
npm install
# Build the server
npm run build
# Run the server
npm start
Usage
使用方法
Basic Compound Search
基本化合物搜索
// 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
}
}
Structure Analysis
结构分析
// 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"]
}
}
Bioactivity Analysis
生物活性分析
// Get bioassay information
{
"tool": "get_assay_info",
"arguments": {
"aid": 1159607
}
}
// Search compounds by target
{
"tool": "search_by_target",
"arguments": {
"target": "cyclooxygenase",
"max_records": 100
}
}
Safety Information
安全信息
// Get safety classifications
{
"tool": "get_safety_data",
"arguments": {
"cid": 2244
}
}
Batch Processing
批量处理
// Process multiple compounds
{
"tool": "batch_compound_lookup",
"arguments": {
"cids": [2244, 5090, 3672],
"operation": "property"
}
}
Integration with Other MCP Servers
与其他 MCP 服务器的集成
This PubChem server integrates perfectly with other chemical/biological databases:
该 PubChem 服务器可与其他化学/生物数据库完美集成:
Complete Chemical Informatics Pipeline
完整的化学信息学流水线
1. Target Discovery: UniProt → STRING → AlphaFold
2. Chemical Discovery: PubChem ← → ChEMBL
3. Complete Workflow: Protein → Structure → Interactions → Small Molecules → Bioactivity
Cross-Database Workflows
跨数据库工作流
- UniProt → PubChem: Find protein targets → Find small molecule ligands
- UniProt → PubChem:查找蛋白质靶点 → 查找小分子配体
- PubChem → ChEMBL: Discover compounds → Analyze bioactivity data
- PubChem → ChEMBL:发现化合物 → 分析生物活性数据
- STRING → PubChem: Protein interactions → Chemical modulators
- STRING → PubChem:蛋白质相互作用 → 化学调节剂
API Rate Limits
API 速率限制
PubChem API guidelines:
PubChem API 指南:
- 5 requests per second
- 每秒 5 次请求
- 400 requests per minute maximum
- 每分钟最多 400 次请求
- No API key required
- 无需 API 密钥
- Respectful usage encouraged
- 鼓励合理使用
Data Sources
数据来源
- 110+ million compounds with full chemical data
- 超过 1.1 亿种化合物,包含完整的化学数据
- 1.5+ million bioassays with biological activity
- 超过 150 万项生物测定,包含生物活性数据
- Chemical properties and computed descriptors
- 化学性质和计算描述符
- 3D conformers and structural data
- 3D 构象和结构数据
- Safety classifications and toxicity information
- 安全分类和毒性信息
- Cross-references to 500+ external databases
- 交叉引用至 500 多个外部数据库
Error Handling
错误处理
The server includes comprehensive error handling:
该服务器包含全面的错误处理:
- Invalid compound IDs return clear error messages
- 无效的化合物 ID 返回清晰的错误消息
- API timeouts are handled gracefully
- API 超时能够优雅地处理
- Rate limiting compliance built-in
- 内置速率限制合规机制
- TypeScript validation for all inputs
- 对所有输入进行 TypeScript 验证
Contributing
贡献
This server uses:
该服务器使用:
- TypeScript for type safety
- TypeScript 实现类型安全
- Axios for HTTP requests
- Axios 处理 HTTP 请求
- MCP SDK for protocol compliance
- MCP SDK 确保协议合规
- PubChem REST API for data access
- PubChem REST API 进行数据访问
License
许可证
MIT License - See LICENSE file for details.
MIT 许可证 - 详见 LICENSE 文件。
Support
支持
For issues with:
如遇以下问题:
- Server functionality: Check error messages and API responses
- 服务器功能:检查错误消息和 API 响应
- PubChem API: Refer to official PubChem documentation
- PubChem API:参阅 PubChem 官方文档
- Chemical data: Validate compound identifiers and search terms
- 化学数据:验证化合物标识符和搜索词
Examples
示例
Drug Discovery Workflow
药物发现工作流
// 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"
}
}
Chemical Similarity Analysis
化学相似性分析
// 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
}
}
Architecture
架构
The server is built with a modular architecture:
该服务器采用模块化架构构建:
- Type-safe validation for all API inputs
- 类型安全验证,适用于所有 API 输入
- Comprehensive error handling with clear messages
- 全面的错误处理,提供清晰的错误消息
- Efficient batch processing for multiple compounds
- 高效的批量处理,适用于多种化合物
- Resource templates for direct data access
- 资源模板,用于直接数据访问
- Integration-ready for multi-database workflows
- 集成就绪,适用于多数据库工作流
This makes it the most comprehensive chemical informatics MCP server available!
这使其成为目前最全面的化学信息学 MCP 服务器!
Citation
If you use this project in your research or publications, please cite it as follows:
引用
如果您在研究或出版物中使用本项目,请按以下方式引用:
```bibtex @misc{pubchemmcp2025,
author = {Moudather Chelbi},
title = {PubChem MCP Server},
year = {2025},
howpublished = {https://github.com/Augmented-Nature/PubChem-MCP-Server},
note = {Accessed: 2025-06-29}