使用说明
NCBI MCP服务器
一种模型上下文协议(MCP)服务器,提供对NCBI电子实用程序和BLAST工具的访问。该服务器使Claude Desktop等人工智能应用程序能够以智能、代理的方式从NCBI数据库中搜索、获取和分析生物数据。
特性
🔧 可用工具
- search_ncbi -使用自然语言查询搜索任何NCBI数据库
- fetch_records -检索各种格式的完整记录(XML、FASTA、GenBank等)
- 总结记录 -获取包含标题、作者、期刊等的结构化摘要。
- 查找相关记录 -发现不同数据库中的相关记录
- 爆破研究 -执行BLAST序列比对搜索
- 列表_数据库 -获取所有可用的NCBI数据库
- get_database_info -获取特定数据库的详细信息
📚 可用资源
- ncbi://databases -NCBI数据库综合列表及说明
- ncbi://blast-programs -BLAST程序和数据库指南
🧠 代理行为示例
当你向Claude Desktop提问时,它会智能地将多种工具结合使用:
示例查询: “查找最近关于人类CRISPR基因编辑的论文,并给我摘要”
克劳德将自动:
- 使用
search_ncbi在PubMed上搜索CRISPR论文 - 使用
summarize_records获取摘要和元数据 - 以可读格式呈现信息
示例查询: “我有这个DNA序列ATCGATCGATCG——它编码什么蛋白质?”
克劳德将自动:
- 使用
blast_search使用blastx程序翻译和搜索蛋白质数据库 - 分析结果以确定最可能的蛋白质匹配
- 可能使用
fetch_records获取有关比赛的更多详细信息
示例查询: “向我展示大肠杆菌的所有基因组组装及其质量指标”
克劳德将自动:
- 使用
search_ncbi大肠杆菌组装数据库的研究 - 使用
fetch_records获取详细的装配信息 - 以结构化的方式分析和呈现质量指标
快速开始
安装
使用紫外线进行安装(推荐):
uv add ncbi-mcp-server
或者使用pip:
pip install -e .
配置
-
获取NCBI API密钥(推荐)
- 访问:https://www.ncbi.nlm.nih.gov/account/settings/
- 为更高的速率限制生成API密钥(10请求/秒与3请求/秒)
-
设置环境变量
cp env.example .env # Edit .env with your credentials export NCBI_API_KEY="your_api_key_here" export NCBI_EMAIL="your.email@example.com"
使用Claude Desktop
-
在Claude Desktop中安装:
mcp install ncbi_mcp_server/server.py --name "NCBI Research Assistant" -
或者手动添加到Claude配置中:
{ "mcpServers": { "ncbi": { "command": "python", "args": ["/path/to/ncbi_mcp_server/server.py"], "env": { "NCBI_API_KEY": "your_api_key", "NCBI_EMAIL": "your.email@example.com" } } } } -
开始使用它! 问克劳德以下问题:
- “查找阿尔茨海默病遗传学的最新研究”
- “爆破这个蛋白质序列,告诉我它是什么”
- “给我提供有关人类基因组组装的信息”
- “查找作者约翰·史密斯关于癌症研究的论文”
开发与测试
使用MCP检查器测试您的服务器:
mcp dev ncbi_mcp_server/server.py
使用自定义环境运行:
NCBI_API_KEY=your_key mcp dev ncbi_mcp_server/server.py
支持的NCBI数据库
该服务器适用于所有NCBI数据库,包括:
文献与参考文献
- pubmed -PubMed生物医学文献
- 私营军事公司 -PubMed Central全文文章
- 书籍 -NCBI书架
序列
- 核苷酸 -核苷酸序列
- 蛋白质 -蛋白质序列
- 核心 -核苷酸收集(GenBank+EMBL+DDBJ+PDB+RefSeq)
基因组和组装
- 基因组 -基因组测序项目
- 装配 -基因组组装
- 基因 -以基因为中心的信息
专用数据库
- 太太 -序列读取存档
- 分类学 -分类信息
- 单核苷酸多态性 -单核苷酸多态性
- 克林瓦尔 -基因组变异的临床意义
- 网格 -医学主题标题
支持BLAST程序
- 爆炸 -核苷酸vs核苷酸
- 比对 -蛋白质vs蛋白质
- 爆炸 -翻译核苷酸与蛋白质
- tblastn -蛋白质与翻译核苷酸
- tblastx -翻译核苷酸与翻译核苷酸
示例工作流
文献研究
User: "Find recent papers about COVID-19 vaccines effectiveness"
→ Claude automatically searches PubMed
→ Gets paper summaries with abstracts
→ Presents organized results with key findings
序列分析
User: "Analyze this DNA sequence: ATCGATCGATCGAAATTTCCCGGG"
→ Claude runs appropriate BLAST search
→ Identifies similar sequences and organisms
→ Explains biological significance
比较基因组学
User: "Compare the genome assemblies of different E. coli strains"
→ Claude searches assembly database
→ Fetches assembly statistics
→ Compares quality metrics and completeness
费率限制和最佳实践
- 使用API密钥:10个请求/秒
- 没有API密钥:3个请求/秒
- 始终提供电子邮件:NCBI服务条款要求
- 要有礼貌:不要让NCBI服务器不堪重负
故障排除
常见问题
-
速率限制错误
- 获取NCBI API密钥以获得更高的限制
- 降低请求频率
-
未找到结果
- 检查数据库名称拼写
- 尝试更广泛的搜索词
- 验证BLAST的序列格式
-
连接错误
- 检查互联网连接
- 验证NCBI服务是否正常运行
调试模式
运行详细日志记录:
DEBUG=1 mcp dev ncbi_mcp_server/server.py
贡献
欢迎投稿!请查看开发设置:
git clone https://github.com/your-username/ncbi-mcp-server.git
cd ncbi-mcp-server
uv sync
uv run mcp dev ncbi_mcp_server/server.py
许可证
MIT许可证-有关详细信息,请参阅许可证文件。
致谢
- 与 模型上下文协议
- 用途 生物色素 BLAST功能
- 由...驱动 NCBI电子公用事业