mcp-simple-pubmed
This server provides access to PubMed, allowing you to search and retrieve medical and life sciences research articles.
You can:
Search PubMed: Use keywords, field-specific searches (title, author, MeSH terms), Boolean operators, and date ranges
Retrieve Article Information: Get titles, authors, publication details, abstract previews, links to full text, DOIs, and keywords
Download Full Text: Access complete text of open-access articles available through PubMed Central when available
Handle Limitations: Receive clear messages if full text is unavailable and get suggestions for alternative access methods
Enables retrieval of publication URLs through DOI (Digital Object Identifier) to access articles that may not be directly available through PubMed
Supports downloading full text for open access articles available directly on PubMed
Provides access to PubMed articles through the Entrez API, allowing users to search the PubMed database, access article abstracts, and download full text for open access articles
Returns full text articles in XML format, providing additional structural information that is particularly useful for AI processing
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@mcp-simple-pubmedsearch for recent articles on CRISPR gene editing in cancer therapy"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
MCP Simple PubMed
An MCP server that provides access to PubMed articles through the Entrez API.
Features
Tools
Search PubMed - Search the database using keywords, MeSH terms, author names, date ranges, and Boolean operators
Get Full Text - Download full text when available (for open access articles in PubMed Central)
Access Abstracts - Retrieve article abstracts and metadata via resource URIs
Prompts (New in v0.1.14)
MCP Prompts help you construct effective PubMed searches:
Systematic Review Search - Generate comprehensive search strategies with MeSH terms, synonyms, and date filters for systematic reviews
PICO Search - Build clinical question searches using the PICO framework (Population, Intervention, Comparison, Outcome)
Author Search - Find all publications by a specific author with proper name formatting
These prompts guide the AI to build optimized PubMed queries, making it easier to conduct thorough literature searches.
Notes
Please note that the tool returns XML-ized version of full text. It is however more useful for AIs than a "human readable" text would have been as it gives them additional information about document's structure. At least, this is what Claude 3.5 Sonnet said he prefers.
Please also note that inability of this tool and possibly other tools to deliver a paper's full text may not be due to the fact that it is not available. When testing this tool I came across a paper that did not have full text on PubMed and when Claude accessed the publication URL (which we did get through DOI) using fetch he did get a "forbidden” error. However, I was able to access the very same page using a regular browser.
In other words if your AI assistant is not able to get the full text of a paper using this tool it is worth trying manually with a regular web browser.
Finally, this tool of course can’t give you access to paywalled/paid papers. You may be able to read them through your library access or – as a last resort – through a certain site that strives to make publicly funded research freely available.
Related MCP server: mcp-pubmed
Installation
Installing via Smithery
To install Simple PubMed for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install mcp-simple-pubmed --client claudeManual Installation
pip install mcp-simple-pubmedConfiguration
The server requires the following environment variables:
PUBMED_EMAIL: Your email address (required by NCBI)PUBMED_API_KEY: Optional API key for higher rate limits
The standard rate limit is 3 requests / second. No rate limiting was implemented, as it is highly unlikely in the typical usage scenario that your AI would generate more traffic. If you need it, you can register for an API key which will give you 10 requests / second. Read about this on NCBI pages.
Usage with Claude Desktop
Add to your Claude Desktop configuration (claude_desktop_config.json):
(Mac OS)
{
"mcpServers": {
"simple-pubmed": {
"command": "python",
"args": ["-m", "mcp_simple_pubmed"],
"env": {
"PUBMED_EMAIL": "your-email@example.com",
"PUBMED_API_KEY": "your-api-key"
}
}
}
}(Windows)
{
"mcpServers": {
"simple-pubmed": {
"command": "C:\\Users\\YOUR_USERNAME\\AppData\\Local\\Programs\\Python\\Python311\\python.exe",
"args": [
"-m",
"mcp_simple_pubmed"
],
"env": {
"PUBMED_EMAIL": "your-email@example.com",
"PUBMED_API_KEY": "your-api-key"
}
}
}
}macOS SSL Certificate Fix
If you encounter SSL certificate verification errors on macOS (such as [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: self-signed certificate in certificate chain), you need to install the proper certificate bundle:
/Applications/Python\ 3.13/Install\ Certificates.commandReplace 3.13 with your Python version number. This script comes with Python installations from python.org.
You can also run it from the Finder:

If you perform this change while Claude Desktop is open you will need to quit it and start it again for it to take effect.
License
MIT License
Available Tools
2 toolsget_paper_fulltextGet a paper's full textARead-only
Get full text of a PubMed article using its ID.
This tool attempts to retrieve the complete text of the paper if available through PubMed Central. If the paper is not available in PMC, it will return a message explaining why and provide information about where the text might be available (e.g., through DOI).
Example usage: get_paper_fulltext(pmid="39661433")
Returns:
If successful: The complete text of the paper
If not available: A clear message explaining why (e.g., "not in PMC", "requires journal access")
| Name | Required | Description | Default |
|---|---|---|---|
| pmid | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true and openWorldHint=true, but the description adds valuable behavioral context: it explains that retrieval depends on availability in PubMed Central, describes fallback behavior (returning messages with explanations), and mentions alternative sources like DOI. This enhances transparency beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured and front-loaded with the core purpose, followed by behavioral details and example usage. Every sentence adds value without redundancy, making it efficient and easy to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (fetching full text with fallbacks), the description is complete: it covers purpose, usage, behavior, and output scenarios. With an output schema present, it appropriately omits detailed return value explanations, focusing on high-level outcomes like success/failure messages.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, but the description compensates by explaining that the 'pmid' parameter is used to identify the PubMed article. However, it does not provide additional details like format constraints or examples beyond the basic usage. With one parameter and no schema descriptions, the baseline is met but not exceeded.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the specific action ('retrieve the complete text') and resource ('PubMed article using its ID'), distinguishing it from the sibling tool 'search_pubmed' which likely searches rather than fetches full text. It explicitly mentions PubMed Central as the source, adding specificity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context on when to use this tool (to get full text of a PubMed article by ID) and implies when not to use it (if you need to search, use 'search_pubmed'). However, it does not explicitly name the alternative or detail exclusions, such as handling non-PubMed IDs.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_pubmedSearch articles about medical and life sciences research available on PubMed.ARead-only
Search PubMed for medical and life sciences research articles.
You can use these search features:
Simple keyword search: "covid vaccine"
Field-specific search:
Title search: [Title]
Author search: [Author]
MeSH terms: [MeSH Terms]
Journal: [Journal]
Date ranges: Add year or date range like "2020:2024[Date - Publication]"
Combine terms with AND, OR, NOT
Use quotation marks for exact phrases
Examples:
"covid vaccine" - basic search
"breast cancer"[Title] AND "2023"[Date - Publication]
"Smith J"[Author] AND "diabetes"
"RNA"[MeSH Terms] AND "therapy"
The search will return:
Paper titles
Authors
Publication details
Abstract preview (when available)
Links to full text (when available)
DOI when available
Keywords and MeSH terms
Note: Use quotes around multi-word terms for best results.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | ||
| max_results | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate readOnlyHint=true and openWorldHint=true, which the description aligns with by describing a search operation. The description adds valuable behavioral context beyond annotations, such as available search features, return format details (e.g., paper titles, authors, abstract preview), and performance tips, though it doesn't mention rate limits or authentication needs.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured and front-loaded with the core purpose, followed by bullet points and examples that efficiently convey usage without unnecessary details. Every sentence adds value, making it concise and easy to scan.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (search with multiple features), low schema coverage (0%), and presence of an output schema, the description is complete enough. It thoroughly explains search capabilities, return values, and usage, compensating for the lack of schema descriptions and leveraging the output schema for return format details.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With schema description coverage at 0%, the description compensates well by explaining the 'query' parameter through search features and examples, and it implies the 'max_results' parameter by mentioning return details. However, it doesn't explicitly define 'max_results' or its default value, leaving some gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Search PubMed for medical and life sciences research articles.' This specifies the verb ('Search'), resource ('PubMed'), and domain ('medical and life sciences research articles'), distinguishing it from the sibling tool 'get_paper_fulltext' which presumably retrieves full text rather than searching.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit guidance on when to use this tool by detailing search features and examples, and it implicitly distinguishes from the sibling tool 'get_paper_fulltext' by focusing on search functionality rather than full-text retrieval. It also includes a note on best practices ('Use quotes around multi-word terms for best results').
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.
2 tool updates
v1.0.0- First observed
get_paper_fulltext - First observed
search_pubmed
TDQS
Scored across 2 tools
The two tools have clearly distinct purposes: get_paper_fulltext retrieves the full text of a specific article by ID, while search_pubmed performs keyword-based searches across the PubMed database. There is no overlap or ambiguity between these functions.
Both tools follow a consistent verb_noun naming pattern: get_paper_fulltext and search_pubmed. The naming is clear and predictable, with no deviations in style or convention.
With only two tools, the server feels thin for a PubMed interface, as it lacks operations like fetching paper metadata, filtering search results, or managing citations. While the tools cover basic retrieval and search, more comprehensive coverage would typically require additional tools.
The tool set is significantly incomplete for a PubMed domain. It lacks essential operations such as get_paper_metadata (for details like authors, journal, abstract without full text), filter_search_results, or citation-related tools. This will likely cause agent failures when trying to perform common PubMed tasks beyond simple search and full-text retrieval.
Maintenance
Related MCP Connectors
Auditable MCP server for PubMed, Europe PMC, ClinicalTrials.gov, and bioRxiv/medRxiv queries
PubMed MCP — wraps the NCBI E-utilities API (biomedical literature, free, no auth)
MCP server for US nursing facility search and ownership lookup (NursingHomeDatabase).
MCP gateway federating 22 biomedical MCP servers behind one endpoint: gnomAD, ClinVar, HPO, VEP.
Related MCP Servers
- -licenseNot gradedqualityNot gradedmaintenanceAn MCP server implementation that enables searching and retrieving research articles from PubMed with specific focus on open access content filtering and full-text link retrieval.83-
- AlicenseAqualityDmaintenanceAn MCP server that provides access to PubMed and NCBI's biomedical literature database for searching articles, retrieving metadata, and tracking citations. It enables users to explore related research, browse MeSH vocabulary, and find free full-text links.6MIT
- AlicenseAqualityDmaintenanceAn MCP server that provides direct access to PubMed and PubMed Central via the NCBI E-utilities API. It enables AI models to search biomedical literature, retrieve detailed article metadata, and download open-access full texts.5MIT
- AlicenseNot gradedqualityDmaintenanceMCP server for searching PubMed scientific articles using NCBI E-utilities API. Supports query, fetch summaries, and full text retrieval with caching and rate limiting.25ISC