使用说明
PubMed增强型搜索MCP服务器
一个模型内容协议服务器,提供增强的工具从PubMed数据库中搜索和检索学术论文,并具有MeSH术语查找、发表计数统计和基于PICO的证据搜索等附加功能。
特性
- 使用可选的期刊过滤器按关键字搜索PubMed
- 支持按相关性或日期对结果进行排序(最新/最旧优先)
- 获取与搜索词相关的MeSH(医学主题标题)术语
- 获取多个搜索词的发表次数(有助于比较流行率)
- 检索详细的论文信息,包括摘要、DOI、作者和关键字
- 执行基于PICO的结构化搜索,支持同义词和组合查询
安装
先决条件
- Python 3.6+
- 点
安装
-
克隆此存储库:
git clone https://github.com/leescot/pubmed-mcp-smithery cd pubmed-mcp-smithery -
安装依赖项:
pip install fastmcp requests
用法
在本地运行
启动服务器:
python pubmed_enhanced_mcp_server.py
对于自动重新加载的开发模式:
mcp dev pubmed_enhanced_mcp_server.py
添加到Claude桌面
编辑您的Claude Desktop配置文件(CLAUDE_DIRECTORY/CLAUDE_desktop_config json)添加服务器:
"pubmed-enhanced": {
"command": "python",
"args": [
"/path/pubmed-mcp-smithery/pubmed_enhanced_mcp_server.py"
]
}
MCP功能
服务器提供以下主要功能:
-
search_pubmed-使用可选的期刊筛选在PubMed中搜索与关键字匹配的文章# Example results = await search_pubmed( keywords=["diabetes", "insulin resistance"], journal="Nature Medicine", num_results=5, sort_by="date_desc" ) -
get_mesh_terms-查找与医学概念相关的MeSH术语# Example mesh_terms = await get_mesh_terms("diabetes") -
get_pubmed_count-获取多个搜索词的出版物计数# Example counts = await get_pubmed_count(["diabetes", "obesity", "hypertension"]) -
format_paper_details-通过PMID获取特定论文的详细信息# Example paper_details = await format_paper_details(["12345678", "87654321"]) -
pico_search-使用同义词进行结构化PICO(人群、干预、比较、结果)搜索# Example pico_results = await pico_search( p_terms=["diabetes", "type 2 diabetes", "T2DM"], i_terms=["metformin", "glucophage"], c_terms=["sulfonylurea", "glipizide"], o_terms=["HbA1c reduction", "glycemic control"] )
PICO搜索功能
PICO搜索工具通过以下方式帮助研究人员进行循证文献搜索:
- 允许每个PICO元素有多个同义词
- 使用OR运算符组合每个元素中的术语
- 在元素之间执行AND组合(P与I、P与I与C等)
- 返回每种组合的搜索查询和发布计数
这种方法有助于完善研究问题,并确定最相关的文献。
速率限制
服务器实现了具有退避延迟的自动重试机制,以处理NCBI电子公用事业服务的潜在速率限制。
许可证
此项目根据BSD 3-Clause许可证进行许可-有关详细信息,请参阅License文件。