← 返回目录
P

Pubmed MCP Server

社区
通过 MCP 检索 PubMed 与 Europe PMC 生物医学文献。
分类
其他 第 38 / 230
Stars
★ 163 非常热门
传输方式
stdio(本地进程) · Streamable HTTP
运行环境
远程托管(无需本地环境) · Bun 1.3.2+ · Node.js · Docker
凭据
无需凭据
许可证
Apache-2.0
最近提交
工具数
11
65FMRS · C

来源显示该服务器提供 11 个面向 PubMed、PMC 和 Europe PMC 的工具、1 个资源和 1 个提示,支持 STDIO 与 Streamable HTTP;它适合生物医学文献检索与整理,不应被描述为上游官方服务器。

最强项 · 文档质量 16/20 最弱项 · 可靠性 9/20

可靠性
9/20
安全与权限
13/20
维护活跃度
13/20
文档质量
16/20
安装易用性
14/20
查看各项评分依据
可靠性 9/20
静态材料显示服务器声明了11个工具、资源和提示,并描述了分层重试、超时、部分失败及结构化错误;但未提供可审阅的实现源码、CI工作流或已提交测试证据,无法验证MCP初始化、工具列表一致性、启动命令和关键边界行为。因此仅认可路径合理性,因执行可复现性和依赖行为缺乏证据而扣分。
安全与权限 13/20
材料显示默认HTTP绑定127.0.0.1,支持none/jwt/oauth认证,凭据通过环境变量传递,且没有删除、支付、部署或远程命令工具;外部请求范围明确包括NCBI、Europe PMC和Unpaywall。但HTTP认证默认关闭,公共托管实例未说明访问控制、数据保留或隔离策略,查询和联系邮箱会发送到外部服务,且未提供最小权限和确认机制的实现证据。因此主要风险可见但权限边界和数据流控制不完整。
维护活跃度 13/20
项目声明Apache-2.0许可证,当前版本为2.10.2,仓库未归档且公开问题数为0;README还提供贡献和检查命令。这支持存在维护意图和基本版本路径,但给定材料没有提交频率、发布历史、依赖更新、漏洞披露渠道或明确安全响应流程。因持续维护和治理证据不足而扣分。
文档质量 16/20
README覆盖安装方式、STDIO与Streamable HTTP、客户端配置、工具清单、环境变量、批量上限、分页、全文回退链、截断策略、失败状态和已知全文限制,文档可审阅性较好。扣分项包括认证模式的实际配置步骤不足、缺少成本/速率风险和系统化故障排查说明,且README和manifest本身不能替代源码验证。
安装易用性 14/20
提供公共HTTP地址、Bun、npx、Docker及多个主流客户端配置示例,运行时和主要环境变量也有说明,整体可操作。扣分原因是HTTP认证部署、反向代理和生产安全配置不够具体,manifest中的Bun包参数与README中的直接bunx/npx示例缺乏源码或测试证据确认,跨平台兼容性也未证明。

静态评测 · 未实际运行收录于 2026-07-30

查看 FMRS 评分方法 →

选型与风险

能访问什么访问网络

适合谁

  • 需要程序化访问 PubMed 或 Europe PMC 的研究人员和生物医学代理
  • 需要结构化文献元数据、全文和引文输出的工作流
  • 需要处理 DOI、PMID 和 PMCID 的文献管理任务

不适合谁

  • 需要非生物医学数据库检索的用户
  • 需要保证所有文章均可获取全文的工作流
  • 需要将其视为 PubMed 或 NCBI 官方服务器的用户

所需权限

  • 需要访问 NCBI 服务;Europe PMC 功能启用时需要访问 Europe PMC。
  • 使用 Unpaywall 全文回退时需要设置 UNPAYWALL_EMAIL,并访问 Unpaywall。
  • 使用 API 密钥或联系邮箱属于可选配置;NCBI_API_KEY 可提高速率限制。
  • Streamable HTTP 部署可配置 none、jwt 或 oauth 认证,默认认证模式为 none。

风险与副作用

  • 全文获取取决于 PMC、Europe PMC 或合法开放获取来源,可能返回不可用或截断结果。
  • Unpaywall 结果可能带有最佳努力警告,且内容格式可能是 HTML Markdown 或 PDF 文本。
  • 公共托管实例的认证状态和可用性未在来源中进一步说明。
  • NCBI 和 Europe PMC 请求受速率限制、超时和重试配置影响。

安装接入

准备工作

运行环境:远程托管(无需本地环境) · Bun 1.3.2+ · Node.js · Docker

NCBI_API_KEY 可选密钥 NCBI API key,可从 NCBI 账户设置页免费申请,用于将速率限制从 3 req/s 提升到 10 req/s,可选。
其他可选配置项(24 个)
MCP_TRANSPORT_TYPE 可选 选择 stdio 或 http 传输方式,默认 stdio。
MCP_LOG_LEVEL 可选 日志最低级别(如 debug、info、warn),默认 info。
MCP_HTTP_HOST 可选 HTTP 服务器监听的主机名,默认 127.0.0.1。
MCP_HTTP_PORT 可选 HTTP 服务器端口,默认 3010(README 配置表另有 3010 的写法,以实际为准)。
MCP_HTTP_ENDPOINT_PATH 可选 MCP 挂载的端点路径,默认 /mcp。
MCP_PUBLIC_URL 可选 部署在 TLS 反向代理后时覆盖公开来源(如 https://mcp.example.com)。
MCP_AUTH_MODE 可选 认证模式:none、jwt 或 oauth,默认 none。
NCBI_ADMIN_EMAIL 可选 随 NCBI 请求发送的联系邮箱(NCBI 推荐),可选。
NCBI_REQUEST_DELAY_MS 可选 NCBI 请求之间的最小间隔毫秒数,默认 334(有 key 时 100)。
NCBI_MAX_CONCURRENT 可选 NCBI 最大并发在途请求数,默认 8。
NCBI_MAX_RETRIES 可选 NCBI 请求失败重试次数,默认 6。
NCBI_TIMEOUT_MS 可选 单个 NCBI 请求超时毫秒数,默认 30000。
NCBI_TOTAL_DEADLINE_MS 可选 单次 NCBI 调用所有重试的总时限毫秒数,默认 60000。
UNPAYWALL_EMAIL 可选 Unpaywall 联系邮箱(在 unpaywall.org 注册),设置后 pubmed_fetch_fulltext 对不在 PMC 的 DOI 回退到开放获取副本。
UNPAYWALL_TIMEOUT_MS 可选 Unpaywall 请求超时毫秒数,默认 20000。
EUROPEPMC_ENABLED 可选 是否启用 Europe PMC 搜索工具及全文回退链,设为 false 可禁用。
EUROPEPMC_EMAIL 可选 随 Europe PMC 请求发送的联系邮箱(EBI 礼节),可选。
EUROPEPMC_REQUEST_DELAY_MS 可选 Europe PMC 请求最小间隔毫秒数,默认 200。
EUROPEPMC_MAX_RETRIES 可选 Europe PMC 请求失败重试次数,默认 3。
EUROPEPMC_TIMEOUT_MS 可选 Europe PMC 请求超时毫秒数,默认 20000。
LOGS_DIR 可选 日志文件目录(仅 Node.js),默认 <项目根>/logs。
STORAGE_PROVIDER_TYPE 可选 存储后端:in-memory、filesystem、supabase 或 cloudflare-kv/r2/d1,默认 in-memory。
MCP_GC_PRESSURE_INTERVAL_MS 可选 Bun 专用强制 GC 压力循环间隔(毫秒),默认 0(禁用)。
OTEL_ENABLED 可选 是否启用 OpenTelemetry 追踪,默认 false。

可直接将 install_config 中的 Streamable HTTP 配置加入支持 MCP 的客户端。也可使用 bunx 或 npx 运行 npm 包的 STDIO 模式,或按 README 使用 Docker;本地 HTTP 默认监听 http://localhost:3010/mcp。

claude_desktop_config.json
{"mcpServers":{"pubmed-mcp-server":{"type":"streamable-http","url":"https://pubmed.caseyjhand.com/mcp"}}}

以 Claude Desktop 为例。其他客户端的配置文件位置或字段可能不同(如 VS Code 使用 servers 字段),可用下方配置生成器转换。

.vscode/mcp.json
{
  "servers": {
    "pubmed-mcp-server": {
      "type": "streamable-http",
      "url": "https://pubmed.caseyjhand.com/mcp"
    }
  }
}

写入项目的 .vscode/mcp.json(VS Code 使用 servers 字段)。

Terminal
claude mcp add --transport http pubmed-mcp-server https://pubmed.caseyjhand.com/mcp

在终端运行;先把 <…> 占位符换成你自己的值。

验证是否装好

连接后在客户端工具列表中应出现 pubmed_search_articles 等 11 个 pubmed_* 工具;运行一次搜索(如"搜索 pmid 36925698 的文章"),pubmed_search_articles 或 pubmed_fetch_articles 返回结果即证明连接成功。

常见排障

  1. 确认客户端使用正确的 Streamable HTTP 地址 https://pubmed.caseyjhand.com/mcp。
  2. 本地 STDIO 运行时确认已安装 Bun,或使用 README 所示的 npx 配置。
  3. 全文不可用时检查输入是否为 PMID、PMCID 或 DOI,并查看 unavailable、triedTiers 和结构化原因。
  4. Europe PMC 工具未出现时检查 EUROPEPMC_ENABLED 是否被设置为 false。
  5. 遇到 NCBI 限流时可配置 NCBI_API_KEY,并检查请求延迟和超时设置。

试试这样问

连接成功后,可以直接对 AI 助手这样说:

  • 在 PubMed 中搜索 2023 年以来关于 CAR-T 细胞治疗实体瘤的临床试验,并给出前几条的简要摘要。
  • 获取 PMID 36925698 的完整元数据,包括摘要、作者和 MeSH 主题词。
  • 帮我抓取这篇 DOI 为 10.1038/s41586-023-06694-4 的文章全文,如果 PMC 没有就走 Unpaywall。
  • 把这几篇 PMID 的参考文献整理成 APA 第 7 版和 BibTeX 格式。

工具能力 11

pubmed_search_articles 只读
使用 PubMed 完整查询语法、字段筛选、日期范围、排序和分页搜索文章。
pubmed_europepmc_search 只读
搜索 Europe PMC,包括 PubMed、PMC、预印本、专利和 Agricola 记录。
pubmed_europepmc_fetch 只读
按 source 与 epmcId 获取完整 Europe PMC 记录和未截断摘要。
pubmed_fetch_articles 只读
按 PMID 批量获取文章标题、摘要、作者、期刊、DOI、MeSH 词和资助信息等元数据。
pubmed_fetch_fulltext 只读
按 PMID、PMCID 或 DOI,通过 PMC、Europe PMC 和可选的 Unpaywall 获取全文。
pubmed_format_citations 只读
以 APA 7、MLA 9、BibTeX、RIS 或 Vancouver 格式生成引文。
pubmed_find_related 只读
查找相似文章、引用给定文章的文章或给定文章引用的参考文献。
pubmed_spell_check 只读
使用 NCBI ESpell 检查生物医学查询拼写并返回建议。
展开其余 3 个工具
pubmed_lookup_mesh 只读
搜索和探索 MeSH 词汇,包括树号、范围说明和入口词。
pubmed_lookup_citation 只读
通过期刊、年份、卷、起始页和作者等字段将部分书目信息解析为 PMID。
pubmed_convert_ids 只读
使用 PMC ID Converter 在 DOI、PMID 和 PMCID 之间转换标识符。

使用场景

检索和筛选生物医学文献
获取文章元数据、摘要和可用全文
生成多种格式的参考文献
使用 MeSH 词汇改进 PubMed 查询
查找相关、引用和被引用文章

支持客户端

Claude Desktop
Cursor
VS Code

依据项目文档列出,未经本站实测。

详细介绍

@cyanheads/pubmed-mcp-server 是一个 Apache-2.0 许可的 MCP 服务器,可搜索 PubMed 和 Europe PMC,获取文章元数据与全文,生成引文,探索 MeSH 词汇,并转换 DOI、PMID 和 PMCID。支持 STDIO 与 Streamable HTTP,并提供公共托管实例。

同类可选方案

BioMCP 75 · B

统一的命令行语法,接入约30个可信生物医学数据源。

★ 659 · 工具数 11 与当前对比 →

源版本 aebb6615b403 数据同步于 2026-10-19 查看 FMRS 评分方法