# Pubmed MCP Server (MCP server)

> Pubmed MCP Server is an MCP server that adds tools to AI assistants such as Claude Desktop, Claude Code and Cursor. Search PubMed/Europe PMC, fetch articles and full text (PMC/EPMC/Unpaywall), citations, MeSH terms. It has 154 GitHub stars, is released under the Apache-2.0 license and runs locally with npx -y @cyanheads/pubmed-mcp-server.

@cyanheads/pubmed-mcp-server Search PubMed/Europe PMC, fetch articles and full text (PMC/EPMC/Unpaywall), citations, MeSH terms via MCP. STDIO or Streamable HTTP. 11 Tools • 1 Resource • 1 Prompt

## Key facts

| Fact | Value |
|---|---|
| Repository | https://github.com/cyanheads/pubmed-mcp-server |
| GitHub stars | 154 |
| License | Apache-2.0 |
| Language | TypeScript |
| Transport | stdio, streamable-http |
| Packages | npm: @cyanheads/pubmed-mcp-server |
| Remote URL | https://pubmed.caseyjhand.com/mcp |
| Needs API key | yes |
| Official | no |
| Works with | Claude Desktop, Claude Code, Cursor, VS Code, Claude.ai, ChatGPT |
| Category | Other |
| Latest release | v2.10.20 (Oct 4, 2026) |
| Last commit | Oct 4, 2026 |
| MCP registry name | io.github.cyanheads/pubmed-mcp-server |

## Install

### Claude Desktop (claude_desktop_config.json)

```json
{
  "mcpServers": {
    "pubmed-mcp-server": {
      "command": "npx",
      "args": [
        "-y",
        "@cyanheads/pubmed-mcp-server"
      ],
      "env": {
        "NCBI_API_KEY": "your-value"
      }
    }
  }
}
```

Settings > Developer > Edit Config. macOS: ~/Library/Application Support/Claude/, Windows: %APPDATA%\Claude\. Restart Claude Desktop afterwards.

### Claude Code

```sh
claude mcp add --env NCBI_API_KEY=your-value --transport stdio pubmed-mcp-server -- npx -y @cyanheads/pubmed-mcp-server
```

### Cursor (.cursor/mcp.json)

```json
{
  "mcpServers": {
    "pubmed-mcp-server": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "@cyanheads/pubmed-mcp-server"
      ],
      "env": {
        "NCBI_API_KEY": "your-value"
      }
    }
  }
}
```

Project file; use ~/.cursor/mcp.json to enable it in every project.

### VS Code (.vscode/mcp.json)

```json
{
  "inputs": [
    {
      "type": "promptString",
      "id": "ncbi_api_key",
      "description": "NCBI_API_KEY",
      "password": true
    }
  ],
  "servers": {
    "pubmed-mcp-server": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "@cyanheads/pubmed-mcp-server"
      ],
      "env": {
        "NCBI_API_KEY": "${input:ncbi_api_key}"
      }
    }
  }
}
```

### Claude Code (remote)

```sh
claude mcp add --transport http pubmed-mcp-server "https://pubmed.caseyjhand.com/mcp"
```

The same server is also hosted as a remote MCP endpoint, so nothing runs on your machine.

Config formats checked against the official docs on 2026-10-07.

## Environment variables

- `MCP_LOG_LEVEL`: Sets the minimum log level for output (e.g., 'debug', 'info', 'warn').
- `NCBI_API_KEY` (secret): NCBI API key for higher rate limits (10 req/s vs 3 req/s).
- `NCBI_ADMIN_EMAIL`: Contact email sent with NCBI requests (recommended by NCBI).
- `UNPAYWALL_EMAIL`: Contact email for Unpaywall. When set, pubmedfetchfulltext falls back to Unpaywall open-access copies for DOIs not in PMC.

## Tools

- `pubmed_search_articles`: Search PubMed with full query syntax, structured filters, date ranges, and optional summaries
- `pubmed_fetch_articles`: Fetch article metadata by PMID: abstract, authors, journal, MeSH terms, grants, linked retraction and correction notices
- `pubmed_fetch_fulltext`: Fetch full text by PMID, PMCID, or DOI, falling back from PMC to Europe PMC to Unpaywall
- `pubmed_europepmc_search`: Search Europe PMC for preprints, patents, Agricola, and open-access records PubMed doesn't carry
- `pubmed_europepmc_fetch`: Fetch complete Europe PMC records, including the untruncated abstract, by source + epmcId
- `pubmed_format_citations`: Format citations in APA 7th, MLA 9th, BibTeX, RIS, or Vancouver (ICMJE/NLM)
- `pubmed_find_related`: Find similar articles, citing articles, or references for a PMID
- `pubmed_spell_check`: Correct a misspelled PubMed query via NCBI ESpell
- `pubmed_lookup_mesh`: Look up MeSH headings with tree numbers, scope notes, and entry terms
- `pubmed_lookup_citation`: Resolve partial references, up to 25 at a time, to PMIDs via ECitMatch
- `pubmed_convert_ids`: Convert between DOI, PMID, and PMCID via the PMC ID Converter

## Similar MCP servers

- [Reactive Resume](https://appsgit.com/mcp-servers/reactive-resume): A one-of-a-kind resume builder that keeps your privacy in mind. (43,921 stars, MIT)
- [N8n MCP](https://appsgit.com/mcp-servers/n8n-mcp): A MCP for Claude Desktop / Claude Code / Windsurf / Cursor to build n8n workflows for you. (23,047 stars, MIT)
- [XHS Downloader](https://appsgit.com/mcp-servers/xhs-downloader): 小红书（XiaoHongShu、RedNote）链接提取/作品采集工具. (12,922 stars, GPL-3.0)
- [MCP Use](https://appsgit.com/mcp-servers/mcp-use): The fullstack MCP framework to develop MCP Apps for ChatGPT / Claude & MCP Servers for AI Agents. (10,726 stars, MIT)
- [Ha MCP](https://appsgit.com/mcp-servers/ha-mcp): Comprehensive Model Context Protocol server for managing Home Assistant through AI assistants. (4,964 stars, MIT)
- [MCP Server Chart](https://appsgit.com/mcp-servers/mcp-server-chart): A Model Context Protocol server for generating charts using AntV. (4,391 stars, MIT, needs API key)

---

Canonical page: https://appsgit.com/mcp-servers/pubmed-mcp-server
Source: appsgit (https://appsgit.com), the app store for github. Data from the GitHub API, refreshed nightly.
Machine access: JSON API https://appsgit.com/api/v1/apps (OpenAPI: https://appsgit.com/openapi.json), MCP server https://mcp.appsgit.com/mcp, full index https://appsgit.com/llms-full.txt.
