Skip to main content
Glama
wjixiang

PubMed MCP Server

by wjixiang

PubMed MCP Server

中文 | English


中文

PubMed 文献检索 MCP 服务器,基于 Model Context Protocol 构建,让 AI Agent 直接搜索和阅读 PubMed 学术文献。

无需 NCBI API Key,直接爬取 PubMed 公开网页接口。

使用方式

将本仓库 Git 地址发送给你的 Agent:

https://github.com/wjixiang/pubmed-mcp.git

Agent 会自动克隆、安装依赖、构建并启动 MCP 服务器。

MCP 配置示例

构建完成后,在 Claude Desktop 等 MCP 客户端中配置:

{
  "mcpServers": {
    "pubmed": {
      "command": "node",
      "args": ["/path/to/pubmed-mcp/dist/mcp/index.js"]
    }
  }
}

能力

Tools(Agent 可调用的工具)

工具

说明

pubmed_search

按关键词搜索 PubMed,支持日期范围、文章类型过滤、排序、分页

pubmed_article_detail

按 PMID 获取完整文章记录(作者、摘要、MeSH、参考文献等)

Resources(可读取的数据资源)

URI 模板

说明

pubmed://article/{pmid}

以文本形式提供文章详情

Prompts(预设提示模板)

名称

说明

literature_review

引导 Agent 对指定主题进行结构化文献综述

article_summary

引导 Agent 总结指定文章

开发

pnpm install
pnpm build          # 构建库 + MCP 服务器
pnpm start:mcp      # 启动 MCP 服务器
pnpm type-check     # TypeScript 类型检查
pnpm test:run       # 运行全部测试
pnpm test:e2e        # E2E 测试(需要网络,访问真实 PubMed)

Related MCP server: PubMed MCP Server

English

An MCP server for PubMed literature retrieval, built on Model Context Protocol. Enables AI Agents to directly search and read PubMed academic literature.

No NCBI API Key required — scrapes the public PubMed web interface directly.

Usage

Send this repository's Git URL to your Agent:

https://github.com/wjixiang/pubmed-mcp.git

The Agent will automatically clone, install dependencies, build, and launch the MCP server.

MCP Configuration Example

After building, configure in Claude Desktop or other MCP clients:

{
  "mcpServers": {
    "pubmed": {
      "command": "node",
      "args": ["/path/to/pubmed-mcp/dist/mcp/index.js"]
    }
  }
}

Capabilities

Tools (callable by Agent)

Tool

Description

pubmed_search

Search PubMed by keyword, with date range filters, publication type filters, sorting, and pagination

pubmed_article_detail

Fetch full article record by PMID — authors, abstract, MeSH terms, references, and more

Resources (readable data)

URI Template

Description

pubmed://article/{pmid}

Article details as plain text

Prompts (pre-built templates)

Name

Description

literature_review

Guide the Agent to conduct a structured literature review on a given topic

article_summary

Guide the Agent to summarize a specific article

Development

pnpm install
pnpm build          # Build library + MCP server
pnpm start:mcp      # Start MCP server
pnpm type-check     # TypeScript type checking
pnpm test:run       # Run all tests
pnpm test:e2e        # E2E tests (requires network, hits live PubMed)

License

MIT

Available Tools

2 tools
pubmed_article_detailPubMed Article DetailA
Read-only

Fetch the full record of a PubMed article by its PMID. Returns title, authors with affiliations, abstract, keywords, MeSH terms, references, similar articles, publication types, full-text sources, journal info, and more.

ParametersJSON Schema
NameRequiredDescriptionDefault
pmidYesPubMed ID (e.g. "33423454")

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare the tool as read-only and open-world, and the description adds useful context about the specific fields returned (title, authors, abstract, etc.), which goes beyond the annotation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences with the purpose front-loaded. The second sentence lists return fields; while somewhat lengthy, it is still concise and informative.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (one parameter, no nested objects) and the comprehensive list of return fields in the description, the description fully covers the needed information.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, and the description does not add parameter details beyond what the schema provides (e.g., 'by its PMID' mirrors the schema description). Baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Fetch') and resource ('full record of a PubMed article'), clearly distinguishing it from the sibling tool pubmed_search, which is for searching.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies when to use (fetching details for a known PMID) and distinguishes from pubmed_search, but does not explicitly state when not to use or mention alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 2 tool updatesv1.0.0
    • First observedpubmed_article_detail
    • First observedpubmed_search

TDQS

A4.4/5.0
Disambiguation5/5

The two tools have completely distinct purposes: one for searching by keyword and the other for fetching full details by PMID. There is no overlap or ambiguity.

Naming Consistency5/5

Both tools use the consistent 'pubmed_' prefix followed by descriptive action/noun pairs (pubmed_search, pubmed_article_detail), maintaining a clear and predictable pattern.

Tool Count4/5

With only 2 tools, the server covers the essential PubMed operations (search and detail retrieval). While more advanced features could be added, this minimal set is well-scoped for basic article lookup.

Completeness4/5

The server covers the core search and detail retrieval workflow for PubMed articles. It lacks some advanced features like author-specific queries or citation networks, but it meets the primary need of searching and viewing articles.

Maintenance

ActivityStale
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • F
    license
    A
    quality
    D
    maintenance
    Enables searching and retrieving detailed information from PubMed articles using the NCBI Entrez API. Supports configurable search parameters including title/abstract filtering and keyword expansion to find relevant scientific publications.
    1
    -
  • A
    license
    B
    quality
    D
    maintenance
    Enables AI assistants to search and retrieve biomedical research articles from PubMed's database of over 35 million citations, including metadata, abstracts, MeSH terms, and full-text PDFs when available.
    1
    1
    MIT
  • F
    license
    Not graded
    quality
    D
    maintenance
    Provides seamless access to over 35 million PubMed scientific articles through natural language queries for research discovery and analysis. It enables tools for advanced searches, retrieving article details, and exploring related research within the life sciences and biomedical fields.
    13
    -

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/wjixiang/pubmed-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server