Skip to main content
Glama

Unofficial PubMed MCP Server

A Model Context Protocol (MCP) server that provides access to PubMed's vast database of over 35 million biomedical citations. This server enables AI assistants and applications to search, retrieve metadata, and access full-text research articles from the world's largest biomedical literature database.

Features

  • Keyword Search: Search PubMed with natural language queries and medical terms

  • Advanced Search: Filter by author, journal, publication date, and more

  • Rich Metadata: Get comprehensive article information including abstracts, MeSH terms, and DOIs

  • PDF Access: Download full-text PDFs when available through PMC

  • Fast & Reliable: Built on NCBI's official E-utilities API

  • MCP Compatible: Works seamlessly with Claude Desktop and other MCP clients

Related MCP server: PubMed MCP Server

Usage

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

API Reference

The server provides a single unified tool pubmed_articles with four methods:

1. Search Keywords (search_keywords)

Search PubMed using keywords and natural language queries.

Parameters:

  • method: "search_keywords"

  • keywords (required): Search query string

  • num_results (optional): Number of results (1-100, default: 10)

Example:

{
  "method": "search_keywords",
  "keywords": "CRISPR gene editing cancer therapy",
  "num_results": 5
}

Perform filtered searches with specific criteria.

Parameters:

  • method: "search_advanced"

  • term (optional): General search term

  • title (optional): Search in article titles

  • author (optional): Author name(s)

  • journal (optional): Journal name or abbreviation

  • start_date (optional): Start date (YYYY/MM/DD format)

  • end_date (optional): End date (YYYY/MM/DD format)

  • num_results (optional): Number of results (1-100, default: 10)

Example:

{
  "method": "search_advanced",
  "author": "Smith J",
  "journal": "Nature",
  "start_date": "2023/01/01",
  "end_date": "2024/12/31",
  "num_results": 10
}

3. Get Article Metadata (get_article_metadata)

Retrieve detailed metadata for a specific article.

Parameters:

  • method: "get_article_metadata"

  • pmid (required): PubMed ID (string or integer)

Example:

{
  "method": "get_article_metadata",
  "pmid": "12345678"
}

4. Download PDF (get_article_pdf)

Attempt to access the full-text PDF of an article.

Parameters:

  • method: "get_article_pdf"

  • pmid (required): PubMed ID (string or integer)

Example:

{
  "method": "get_article_pdf",
  "pmid": "12345678"
}

Response Format

All methods return detailed article information including:

{
  "pmid": "12345678",
  "title": "Article Title",
  "authors": ["Smith, John", "Doe, Jane"],
  "journal": "Nature Medicine",
  "publication_date": "2024-03-15",
  "abstract": "Article abstract...",
  "doi": "10.1038/s41591-024-12345-6",
  "pmcid": "PMC1234567",
  "keywords": ["keyword1", "keyword2"],
  "mesh_terms": ["MeSH Term 1", "MeSH Term 2"],
  "url": "https://pubmed.ncbi.nlm.nih.gov/12345678/"
}

Search Tips

Keyword Search Best Practices

  • Use medical terminology and standardized terms when possible

  • Combine multiple concepts: "diabetes AND insulin AND therapy"

  • Use wildcards for variations: "cardi*" (matches cardiac, cardiology, etc.)

  • Include drug names, disease names, and intervention types

Advanced Search Examples

Find recent COVID-19 vaccine studies:

{
  "method": "search_advanced",
  "term": "COVID-19 vaccine",
  "start_date": "2023/01/01",
  "num_results": 20
}

Search specific author's work in high-impact journals:

{
  "method": "search_advanced",
  "author": "Smith JA",
  "journal": "New England Journal of Medicine",
  "start_date": "2020/01/01"
}

Note: This is an unofficial tool. Please respect PubMed's usage guidelines and rate limits when using this server.

Available Tools

1 tool
pubmed_articlesB

Unified tool for PubMed operations: search biomedical literature, retrieve article metadata, and download PDFs. Access over 35 million citations from the world's largest biomedical database. Use the method parameter to specify the operation type: search with keywords, advanced filtered search, get detailed metadata, or download full-text PDFs when available.

ParametersJSON Schema
NameRequiredDescriptionDefault
methodYesThe operation to perform: search_keywords (search with keywords), search_advanced (search with filters), get_article_metadata (get detailed metadata), or get_article_pdf (download full-text PDF)
keywordsNoFor search_keywords: Search query string with keywords, medical terms, drug names, diseases, or any biomedical research terms. Can include multiple terms separated by spaces (implicit AND logic) or use PubMed search operators like OR, AND, NOT.
num_resultsNoFor search methods: Maximum number of results to return (default: 10). Note: PubMed API may have its own limits and may return fewer results than requested.
pmidNoFor get_article_metadata and get_article_pdf: PubMed ID (PMID) of the article - the unique identifier for PubMed articles (e.g., "12345678" or 12345678)
termNoFor search_advanced: General search term for title, abstract, and keywords
titleNoFor search_advanced: Search specifically in article titles
authorNoFor search_advanced: Author name(s) to search for (e.g., "Smith J", "John Smith")
journalNoFor search_advanced: Journal name or abbreviation (e.g., "Nature", "N Engl J Med", "Science")
start_dateNoFor search_advanced: Start date for publication date range in format YYYY/MM/DD (e.g., "2020/01/01")
end_dateNoFor search_advanced: End date for publication date range in format YYYY/MM/DD (e.g., "2024/12/31")

TDQS

B3.1/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden of behavioral disclosure. While it mentions accessing 'over 35 million citations' and downloading PDFs 'when available,' it lacks critical behavioral information such as rate limits, authentication requirements, error conditions, response formats, or whether operations are read-only or mutative. For a tool with 10 parameters and no annotations, this is a significant gap.

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?

The description is appropriately sized with three sentences that are front-loaded: it starts with the unified purpose, adds context about the database, and ends with usage instructions. There's minimal waste, though the second sentence about '35 million citations' could be considered slightly extraneous. Overall, it's efficient and well-structured.

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

Completeness2/5

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

Given the tool's complexity (10 parameters, multiple operations) and lack of both annotations and an output schema, the description is incomplete. It doesn't explain what the tool returns (e.g., search results format, metadata structure, PDF handling), behavioral constraints, or error scenarios. For a multi-function tool with no structured output documentation, the description should provide more operational context.

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 description coverage is 100%, so the schema already documents all parameters thoroughly. The description adds some value by mentioning the 'method parameter' and listing the four operation types, but it doesn't provide additional semantic context beyond what's in the schema descriptions. The baseline of 3 is appropriate when the schema does the heavy lifting.

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

Purpose4/5

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

The description clearly states the tool's purpose as a 'unified tool for PubMed operations' that can 'search biomedical literature, retrieve article metadata, and download PDFs.' It specifies the resource ('PubMed articles') and multiple verbs, but since there are no sibling tools, it doesn't need to differentiate from alternatives. The description goes beyond a tautology by explaining the scope and database size.

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

Usage Guidelines3/5

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

The description provides implied usage guidance by stating 'Use the method parameter to specify the operation type' and listing the four available methods. However, it doesn't explicitly state when to choose one method over another (e.g., when to use search_keywords vs search_advanced) or mention any prerequisites or constraints. With no sibling tools, alternative guidance isn't needed.

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. 1 tool updatev1.0.0
    • First observedpubmed_articles

TDQS

B3.4/5.0
Disambiguation5/5

With only one tool, there is no possibility of ambiguity or overlap between tools. The single tool clearly handles all PubMed operations, so an agent cannot misselect between multiple options.

Naming Consistency5/5

The single tool name 'pubmed_articles' follows a clear noun-based pattern, and since there is only one tool, consistency is inherently perfect with no deviations or mixed conventions to evaluate.

Tool Count2/5

A single tool for a comprehensive biomedical database like PubMed is too few for the apparent scope. The tool description suggests multiple operations (search, retrieve, download), which would typically be split into distinct tools for better agent usability and clarity, making this count inappropriate.

Completeness4/5

The tool claims to cover search, retrieval, and PDF download operations, which addresses core PubMed use cases. However, the reliance on a single tool with a 'method parameter' for different operations may introduce gaps in agent handling, as it lacks dedicated tools for specific actions like filtering or metadata updates, but it is largely complete for basic workflows.

Maintenance

ActivityInactive
ResponsivenessSyncing

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
    -
  • 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.
    12
    -

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/openpharma-org/pubmed-mcp'

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