SuperAPI AI 工具集

ncbi-mcp-server

ncbi-mcp-server 是一个基于 Model Context Protocol(MCP)的服务器,用于搜索 NCBI 数据库,面向生命科学和生物医学领域的研究人员。它通过自然语言查询访问 PubMed 超过 3500 万篇科学文章,帮助 AI 助手进行文献综述、研究发现和科学分析。主要能力包括:全面搜索 PubMed 各生物学科文章;支持布尔运算符、字段标签和过滤器的复杂查询;获取摘要、作者列表、MeSH 术语、DOI 和出版信息;通过 NCBI 关系算法发现相关文章;集成 MeSH 术语;提供分析工具以监控使用模式和性能;支持批量处理。使用方式:需 Python 3.8+ 和 Poetry,初始化项目、安装依赖、配置 Claude Desktop 的 MCP 服务器配置,并可通过 .env 配置 NCBI 邮箱和 API 密钥。部署方式包括本地开发、Docker 和生产环境。

访问官网

工具介绍

用途

ncbi-mcp-server 是一个 Model Context Protocol(MCP)服务器,用于搜索 NCBI 数据库,专为生命科学和生物医学领域的研究人员设计。它通过自然语言查询,提供对 PubMed 超过 3500 万篇科学文章的访问,使 AI 助手能够协助文献综述、研究发现和科学分析。

主要能力

  • 全面搜索:搜索 PubMed 超过 3500 万篇文章,覆盖所有生物学科。
  • 高级查询:支持布尔运算符、字段标签和过滤器的复杂搜索。
  • 生命科学研究:覆盖遗传学、生态学、医学和生物技术等所有生物和生物医学领域。
  • 计算生物学:适合查找生物信息学方法、算法和计算工具。
  • 研究应用:文献综述、假设生成、方法发现和跟踪科学进展。
  • 完整文章详情:获取摘要、作者列表、MeSH 术语、DOI 和出版信息。
  • 相关文章:通过 NCBI 关系算法发现相关研究。
  • MeSH 集成:搜索和利用医学主题词以实现精确术语。
  • 分析与性能监控:包括请求总数、运行时间、操作分解、缓存性能指标、最近活动和错误率等。
  • 批量处理:支持一次获取多个文章的详细信息。

使用方式

环境要求

  • Python 3.8 或更高版本
  • Poetry(推荐)

设置步骤

  1. 创建并初始化项目:mkdir ncbi-mcp-server && cd ncbi-mcp-server,然后 poetry init。在初始化期间添加依赖:mcp、httpx、typing-extensions。
  2. 创建项目结构:mkdir -p src/ncbi_mcp_server,将 server.py 代码保存为 src/ncbi_mcp_server/server.py。
  3. 安装依赖:poetry install。
  4. 测试服务器:poetry run python src/ncbi_mcp_server/server.py。
  5. 配置 Claude Desktop:编辑配置文件(macOS: ~/Library/Application Support/Claude/claude_desktop_config.json;Windows: %APPDATA%/Claude/claude_desktop_config.json;Linux: ~/.config/claude/claude_desktop_config.json),添加配置:
{
  "mcpServers": {
    "ncbi-literature": {
      "command": "poetry",
      "args": ["run", "python", "src/ncbi_mcp_server/server.py"],
      "cwd": "/FULL/PATH/TO/YOUR/ncbi-mcp-server"
    }
  }
}
  1. 重启 Claude Desktop 并开始搜索。

部署选项

  • 本地开发:./deploy.sh local,适合开发和测试。
  • Docker 部署:./deploy.sh docker,提供完整设置(含 Redis 缓存和 Redis Commander UI)或简单设置(仅服务器容器,内存缓存)。
  • 生产部署:./deploy.sh production,适合生产环境。

配置凭据

复制 .env.example 为 .env,编辑并填入 NCBI 邮箱和 API 密钥。API 密钥可选但推荐,用于更高请求限制:无 API 密钥为 3 请求/秒;有 API 密钥为 10 请求/秒;有 API 密钥和邮箱则批量请求限制更高。

工具与功能

  • search_pubmed:主要搜索工具,支持查询术语(字段标签如 [ti]、[au]、[mh])、最大结果数(1-100,默认 20)、排序方式(相关性、出版日期、作者、期刊)和日期范围(30、90、365、1095 天)。
  • get_article_details:获取特定文章的完整信息,支持最多 50 个 PMID,返回摘要、作者列表、MeSH 术语、DOI 和出版详情。
  • search_mesh_terms:查找标准医学主题词,帮助发现相关概念并提高搜索精度。
  • get_related_articles:发现与特定论文相关的文章,支持最多 50 个结果(默认 10)。
  • advanced_search:使用多标准进行复杂搜索,支持术语组合(AND、OR、NOT)、作者、期刊、出版类型和日期范围。
  • 分析工具:获取综合概览(请求总数、运行时间、操作分解、缓存指标、最近活动、错误率)、特定时间段的详细性能指标、重置分析数据。

适用场景

  • 进化生物学与系统发育学
  • 计算生物学与生物信息学
  • 分子进化与群体遗传学
  • 比较基因组学与蛋白质组学
  • 系统生物学与网络分析
  • 生物统计学与数学生物学
  • 古 DNA 与古基因组学
  • 保护遗传学与生态学

限制

  • 需要 Python 3.8+ 和 Poetry 环境。
  • 无 API 密钥时请求限制为 3 请求/秒,可能影响大量搜索。
  • 分析数据重置会永久清除所有收集的指标。
  • XML 解析错误可能因 NCBI 服务器临时问题导致,需重试。
  • 该服务器目前主要针对 PubMed,其他数据库如 PMC、BioRxiv 等暂未提供。