PubMed MCP Server

by chrismannina

9 stars
384 downloads
Not rated
GitHub

About

A Model Context Protocol (MCP) server that enables AI assistants to search and analyze PubMed medical literature with advanced filtering, citations, and research tools.

Details

Author
chrismannina
GitHub stars
9
Downloads
384
Categories
Search

- Advanced PubMed search with date ranges, article types, authors, journals, and MeSH terms
- Retrieve detailed article information including abstracts, authors, and metadata
- Export citations in BibTeX, APA, MLA, Chicago, Vancouver, EndNote, and RIS formats
- Search by author with co‑author information
- Discover related articles and explore MeSH terms
- Analyze publication trends over time and compare multiple articles
- Built‑in caching and configurable rate limiting for respectful API usage

Setting up with Highlight

This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name PubMed MCP Server
    Command (node, npx, python, etc.)

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

From the repository

Install Python 3.8+, obtain a free NCBI API key and a valid email, clone the repository, install dependencies (pip install -r requirements.txt), configure environment variables in a .env file, then run python -m src.main. Use an MCP client to call tools such as search_pubmed, get_article_details, and export_citations.

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

{
    "mcpServers": {
        "pubmed mcp server": {
            "pubmed-mcp": {
                "command": "python",
                "args": [
                    "-m",
                    "src.main"
                ]
            }
        }
    }
}

McpServers

{
    "pubmed-mcp": {
        "command": "python",
        "args": [
            "-m",
            "src.main"
        ]
    }
}

PubMed MCP Server

CI

A comprehensive Model Context Protocol (MCP) server for PubMed literature search and management. This server provides advanced search capabilities, citation formatting, and research analysis tools through the MCP protocol.

<a href="https://glama.ai/mcp/servers/@chrismannina/pubmed-mcp">
PubMed Server MCP server
</a>

Features

- Advanced PubMed Search: Search with complex filters including date ranges, article types, authors, journals, and MeSH terms
- Article Details: Retrieve detailed information for specific PMIDs including abstracts, authors, and metadata
- Citation Export: Export citations in multiple formats (BibTeX, APA, MLA, Chicago, Vancouver, EndNote, RIS)
- Author Search: Find articles by specific authors with co-author information
- Related Articles: Discover articles related to a specific PMID
- MeSH Term Search: Search and explore Medical Subject Headings
- Journal Analysis: Get metrics and recent articles from specific journals
- Research Trends: Analyze publication trends over time
- Article Comparison: Compare multiple articles side by side
- Caching: Built-in caching for improved performance
- Rate Limiting: Respectful API usage with configurable rate limits

Installation

Prerequisites

- Python 3.8 or higher
- NCBI API key (free registration required)
- Valid email address for NCBI API identification

Quick Start

1. Clone the repository:

   git clone https://github.com/your-org/pubmed-mcp.git
cd pubmed-mcp

2. Install dependencies:

   pip install -r requirements.txt

3. Set up environment variables:

   cp env.example .env
# Edit .env with your NCBI API key and email

4. Run the server:

   python -m src.main

Development Installation

For development with additional tools:

make install-dev

Or manually:

pip install -r requirements.txt
pip install -e .
pip install black isort mypy flake8

Configuration

Create a .env file in the project root with the following variables:

```env

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.