PubMed MCP Server

This repository contains an MCP server that searches PubMed for article abstracts using BioPython's Entrez module. It leverages the FastMCP framework

Local serverstdioPython

What is the PubMed MCP server?

Most developer tooling work still happens through a UI a human drives. PubMed MCP server moves it into the conversation instead. This repository contains an MCP server that searches PubMed for article abstracts using BioPython's Entrez module. It leverages the FastMCP framework to provide asynchronous search capabilities for PubMed.

The short version

  • Search PubMed: — Query for articles based on a search term
  • Retrieve Abstracts: — Fetch abstracts of articles returned from PubMed
  • Asynchronous Operation: — Uses asynchronous execution (via asyncio.to_thread) to avoid blocking the server

Getting it running

Setup follows the usual MCP pattern — install or clone the server, register it in your client's configuration file, restart the client.

The tools it exposes

The server publishes 4 tools. What each one is for:

  • Tool — ** search_pubmed
  • Parameters — **
  • query — The search term for PubMed (default is "endocarditis")
  • max_results — Maximum number of articles to retrieve (default is 10)

What it needs from you

  • Python 3.8 or higher - mcp[cli] - BioPython

Things to watch

  • It runs with your machine's permissions. That is convenient and also the reason to think about what you point it at before you approve a tool call.
  • Keep per-call confirmation enabled while you learn its behaviour; it is the cheapest safeguard you have.

How it compares

Among the developer tooling options, the useful question is rarely "what can it do" but "what does it cost you to run" — permissions, credentials, and how much of your context its toolset consumes. PubMed's toolset — Tool, Parameters, query and 1 more — is a fair guide to whether it matches your workflow. It is maintained by codingaslu; worth a glance at recent repository activity before you build anything load-bearing on it.

This entry was verified against PubMed's own documentation before publication; SyncDev keeps the directory reviewed rather than auto-generated.

Available tools

ToolWhat it does
Tool** search_pubmed
Parameters**
queryThe search term for PubMed (default is "endocarditis").
max_resultsMaximum number of articles to retrieve (default is 10).

Configuration

  • Python 3.8 or higher - mcp[cli] - BioPython

Example prompts to try

  • Use PubMed to Tool.
  • Use PubMed to Parameters.
  • Use PubMed to query.

Frequently asked questions

It allows MCP‑compatible clients to search PubMed and retrieve article abstracts asynchronously using a single tool (`search_pubmed`).