mcp-simple-pubmed
MCP 简易 PubMed
通过 Entrez API 提供对 PubMed 文章的访问的 MCP 服务器。
特征
使用关键词搜索 PubMed 数据库
访问文章摘要
下载全文(适用于 PubMed 上直接提供的开放获取文章)
请注意,该工具返回的是 XML 格式的全文。然而,它对人工智能来说比“人类可读”的文本更有用,因为它能为人工智能提供关于文档结构的额外信息。至少,Claude 3.5 Sonnet 表示他更喜欢这种格式。
另请注意,此工具以及其他工具无法提供论文全文可能并非由于其不可用。在测试此工具时,我遇到了一篇在 PubMed 上没有全文的论文,当 Claude 使用 fetch 访问出版物 URL(我们通过 DOI 获取)时,他收到了“禁止访问”错误。然而,我可以使用常规浏览器访问同一个页面。
换句话说,如果您的 AI 助手无法使用此工具获取论文全文,则值得使用常规网络浏览器手动尝试。
最后,此工具当然无法让您访问付费墙/付费论文。您可以通过图书馆访问权限阅读这些论文,或者——作为最后的手段——通过某个致力于免费提供公共资助研究的网站阅读。
Related MCP server: mcp-pubmed
安装
通过 Smithery 安装
要通过Smithery自动为 Claude Desktop 安装 Simple PubMed:
npx -y @smithery/cli install mcp-simple-pubmed --client claude手动安装
pip install mcp-simple-pubmed配置
服务器需要以下环境变量:
PUBMED_EMAIL:您的电子邮件地址(NCBI 要求)PUBMED_API_KEY:用于更高速率限制的可选 API 密钥
标准速率限制为每秒 3 个请求。由于在典型使用场景下,您的 AI 不太可能产生更多流量,因此未实施速率限制。如果您需要,可以注册一个 API 密钥,该密钥将为您提供每秒 10 个请求的速率。请参阅NCBI 页面了解更多信息。
与 Claude Desktop 一起使用
添加到您的 Claude Desktop 配置( claude_desktop_config.json ):
(Mac 操作系统)
{
"mcpServers": {
"simple-pubmed": {
"command": "python",
"args": ["-m", "mcp_simple_pubmed"],
"env": {
"PUBMED_EMAIL": "your-email@example.com",
"PUBMED_API_KEY": "your-api-key"
}
}
}
}(视窗)
{
"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"
}
}
}
}执照
MIT 许可证
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.8 npm3-
- 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.18 npmISC