JP

jackkuo666/pubmed-mcp-server

Developer tools
122ย stars 0 forks ํ’ˆ์งˆ 90 ํŠธ๋ Œ๋“œ 90

๐Ÿ” Enable AI assistants to search, access, and analyze PubMed articles through a simple MCP interface.

๊ฐœ์š”

๐Ÿ” Enable AI assistants to search, access, and analyze PubMed articles through a simple MCP interface.

README

PubMed MCP Server

๐Ÿ” Enable AI assistants to search, access, and analyze PubMed articles through a simple MCP interface.

The PubMed MCP Server provides a bridge between AI assistants and PubMedโ€™s vast repository of biomedical literature through the Model Context Protocol (MCP). It allows AI models to search for scientific articles, access their metadata, and perform deep analysis in a programmatic way.

๐Ÿค Contribute โ€ข ๐Ÿ“ Report Bug

โœจ Core Features

  • ๐Ÿ”Ž Paper Search: Query PubMed articles with keywords or advanced search โœ…
  • ๐Ÿš€ Efficient Retrieval: Fast access to paper metadata โœ…
  • ๐Ÿ“Š Metadata Access: Retrieve detailed metadata for specific papers โœ…
  • ๐Ÿ“Š Research Support: Facilitate biomedical sciences research and analysis โœ…
  • ๐Ÿ“„ Paper Access: Attempt to download full-text PDF content โœ…
  • ๐Ÿง  Deep Analysis: Perform comprehensive analysis of papers โœ…
  • ๐Ÿ“ Research Prompts: A set of specialized prompts for paper analysis โœ…

๐Ÿš€ Quick Start

Prerequisites

  • Python 3.10+
  • FastMCP library

Installation

Installing via Smithery

To install pubmed-mcp-server for Claude Desktop automatically via Smithery:

claude

npx -y @smithery/cli install @JackKuo666/pubmed-mcp-server --client claude

Cursor

Paste the following into Settings โ†’ Cursor Settings โ†’ MCP โ†’ Add new server:

  • Mac/Linux
npx -y @smithery/cli@latest run @JackKuo666/pubmed-mcp-server --client cursor --config "{}" 

Windsurf

npx -y @smithery/cli@latest install @JackKuo666/pubmed-mcp-server --client windsurf --config "{}"

CLine

npx -y @smithery/cli@latest install @JackKuo666/pubmed-mcp-server --client cline --config "{}"
  1. Clone the repository:

    git clone https://github.com/JackKuo666/PubMed-MCP-Server.git
    cd PubMed-MCP-Server
    
  2. Install the required dependencies:

    pip install -r requirements.txt
    

๐Ÿ“Š Usage

Start the MCP server:

python pubmed_server.py

Usage with Claude Desktop

Add this configuration to your claude_desktop_config.json:

(Mac OS)

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

(Windows version):

{
  "mcpServers": {
    "pubmed": {
      "command": "C:\\Users\\YOUR\\PATH\\miniconda3\\envs\\mcp_server\\python.exe",
      "args": [
        "D:\\code\\YOUR\\PATH\\PubMed-MCP-Server\\pubmed_server.py"
      ],
      "env": {},
      "disabled": false,
      "autoApprove": []
    }
  }
}

Using with Cline

{
  "mcpServers": {
    "pubmed": {
      "command": "bash",
      "args": [
        "-c",
        "source /home/YOUR/PATH/mcp-server-pubmed/.venv/bin/activate && python /home/YOUR/PATH/pubmed-mcp-server.py"
      ],
      "env": {},
      "disabled": false,
      "autoApprove": []
    }
  }
}

๐Ÿ›  MCP Tools

The PubMed MCP Server provides the following tools:

  1. search_pubmed_key_words: Search for articles on PubMed using keywords.
  2. search_pubmed_advanced: Perform an advanced search for articles on PubMed with multiple parameters.
  3. get_pubmed_article_metadata: Fetch metadata for a PubMed article using its PMID.
  4. download_pubmed_pdf: Attempt to download the full-text PDF for a PubMed article.
  5. deep_paper_analysis: Perform a comprehensive analysis of a PubMed article.

Searching Papers

You can ask the AI assistant to search for papers using queries like:

Can you search PubMed for recent papers about CRISPR?

Getting Paper Details

Once you have a PMID, you can ask for more details:

Can you show me the metadata for the paper with PMID 12345678?

Analyzing Papers

You can request a deep analysis of a paper:

Can you perform a deep analysis of the paper with PMID 12345678?

๐Ÿ“ Project Structure

  • pubmed_server.py: The main MCP server implementation using FastMCP
  • pubmed_web_search.py: Contains the logic for searching PubMed and retrieving article information

๐Ÿ”ง Dependencies

  • Python 3.10+
  • FastMCP
  • asyncio
  • logging
  • requests
  • beautifulsoup4

๐Ÿค Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

๐Ÿ“„ License

This project is licensed under the MIT License.

โš ๏ธ Disclaimer

This tool is for research purposes only. Please respect PubMedโ€™s terms of service and use this tool responsibly.

View this README on GitHub

์„ค์น˜

npx -y @smithery/cli install @JackKuo666/pubmed-mcp-server --client claude

์„ค์ •

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