学术研究MCP服务器
统一的 模型上下文协议 服务器,通过以下方式为人工智能助手提供九个学术研究API的访问权限 25工具,加上本地缓存、系统审查管理和符合PRISMA标准的工作流支持。专为临床医学和计算机科学领域的生物医学研究人员设计。
API和数据源
| API | Auth | Rate Limit | 它的作用 |
|---|---|---|---|
| 开放亚历克斯 | 无 | 10/秒(礼貌池) | 2.5亿+作品、作者、机构 |
| 语义学者 | 可选 | 100/5分钟或1秒,带关键字 | 论文搜索、引文图、推荐、批量查找 |
| 交叉引用 | 无 | 50/秒(礼貌池) | DOI注册表回退,作者搜索 |
| PubMed | 可选 | 3/sec或10/sec,带键 | NCBI电子实用程序,完整的布尔/MeSH查询语法 |
| arXiv | 无 | 1个要求/3秒 | 使用arXiv查询语法的CS/ML预印本搜索 |
| medRxiv/bioRxiv | 无 | 合理使用 | 预印本搜索、日期范围浏览、出版状态 |
| 谷歌学术 | 无 | ~100个要求,然后验证码 | 关键字搜索、高级搜索、作者简介 |
| ORCID | 无 | 无限制 | 研究人员简介、出版物、资金 |
| 无法逾越之墙 | 无 | 10万/天 | 法律开放获取PDF分辨率 |
基本使用不需要API密钥。提高吞吐量的可选环境变量:
| 变量 | 效果 |
|---|---|
S2_API_KEY | 语义学者:持续100/5分钟->1秒 |
OPENALEX_EMAIL | OpenAlex礼貌池:1/秒->10/秒 |
CROSSREF_EMAIL | CrossRef礼貌池:更快的响应(回落到 OPENALEX_EMAIL) |
NCBI_API_KEY | PubMed:3/秒->10/秒 |
安装
选项1--一键式(克劳德桌面)
下载 academic-research-mcp.dxt 然后双击它。Claude Desktop将提示您输入可选的API键并自动重新启动。
选项2-- uvx (克劳德代码、游标、任何MCP客户端)
无安装步骤-- uvx 首次使用时,在隔离环境中获取并运行包。
添加到MCP配置(.claude/mcp.json, cursor_mcp.json等等):
{
"mcpServers": {
"academic-research": {
"command": "uvx",
"args": ["academic-research-mcp"],
"env": {
"OPENALEX_EMAIL": "your-email@institution.edu",
"S2_API_KEY": "your-key-here",
"NCBI_API_KEY": "your-ncbi-key-here"
}
}
}
}需要 uv (curl -LsSf https://astral.sh/uv/install.sh | sh).
选项3-- pip install
pip install academic-research-mcp
academic-research-mcp # runs the server选项4——来源
git clone https://github.com/alisoroushmd/academic-research-mcp.git
cd academic-research-mcp
pip install -e .
academic-research-mcp全部25个工具
智能工具(从这里开始)
smart_search-- 推荐的搜索工具。 具有重复数据删除和提前停止功能的多源搜索。设置后自动记录为活动审阅。find_paper--通用纸张解析器。接受任何标识符(DOI、PMID、arXiv ID、URL、标题)。
统一搜索和作者
search_papers--通过以下方式搜索任何来源source参数(openalex、s2、交叉引用、arxiv、medrxiv、google_scholar、pubmed)。对于PubMed,支持完整的MeSH/Boolean语法。自动记录到活动审阅。search_authors--搜索openalex、s2、orcid、google_scholar的研究人员。get_author--按ID列出的详细作者资料(根据ID格式自动检测来源)。get_author_works--作者在任何来源的出版物。get_author_funding--ORCID资金/赠款历史。
引文与推荐(语义学者)
get_paper_network--引文网络:正向(谁引用了这篇文章),反向(这篇文章引用了什么),或两者兼而有之。recommend_papers--“像这样的论文”推荐。batch_get_papers-- 批量查找:一次请求最多500篇论文。
预印本(medRxiv/bioRxiv)
preprints--三种模式:最近(按类别)、日期范围或发布状态检查。
机构
get_institution--OpenAlex提供的机构详细信息。
PDF和开放获取
open_access--查找一个或多个DOI(Unpaywall、PMC、预印本、存储库)的法律PDF。
引文验证
validate_citations--在向用户展示之前,验证DOI和PMID是否确实存在(最多25个)。
缓存
cache_manage--查看缓存统计数据或按类别清除。
系统性审查工具
create_review--以名称和研究问题开始新的系统综述。reviews--列出所有评论或获取其中一篇的完整详细信息(搜索日志、按状态统计的论文数)。delete_review--永久删除评论及其所有数据。set_active_review--激活自动日志记录:所有后续搜索都会自动进行重复数据消除并记录到此审阅中。add_papers_to_review--按DOI/PMID手动添加论文(用于专家建议、参考文献列表)。get_review_papers--带可选状态/搜索过滤器的分页检索。update_paper_status--批量更新筛选状态(新、筛选输入、筛选输出、包括在内)。snowball_search--引文收获:从种子论文向前/向后,根据评论库进行重复数据删除。export_review--将文件导出为DOI列表或Zotero进口的完整词典。prisma_counts--PRISMA 2020流程图计数(包括识别、筛查)。
系统评审工作流程
1. create_review("GIM risk SR", "gastric intestinal metaplasia risk stratification")
2. set_active_review(review_id) # enables auto-logging
3. smart_search / search_papers # results auto-deduplicate and log
4. snowball_search(review_id, seeds) # citation harvesting from key papers
5. add_papers_to_review(review_id, ["10.xxxx/..."]) # manual additions
6. get_review_papers(review_id) # browse candidates
7. update_paper_status(review_id, paper_ids, "screened_in")
8. prisma_counts(review_id) # PRISMA flow diagram numbers
9. export_review(review_id) # DOI list for Zotero import所有搜索都会记录源、查询、筛选器、原始计数和新的去重计数。重复数据删除使用DOI(不区分大小写)、PMID和模糊标题匹配(相似度>=85%)。
摘要
所有搜索工具都会返回可用的摘要。Semantic Scholar、arXiv、PubMed和medRxiv直接返回完整摘要。OpenAlex从其倒排索引格式重建摘要。CrossRef在出版商存入摘要时返回摘要(覆盖范围各不相同)。在获取完整论文之前,使用摘要内容来评估相关性。
何时使用哪个来源
| 来源 | 最佳 |
|---|---|
| 智能搜索 | 默认值--自动选择最佳来源 |
| 语义学者 | AI/ML论文、引文图、影响指标、批量查找 |
| 开放亚历克斯 | 大容量搜索,全面覆盖,无需担心费率限制 |
| 交叉引用 | 当其他API节流、DOI验证、引用计数时回退 |
| PubMed | 临床/生物医学文献、MeSH术语、布尔查询、字段标签 |
| arXiv | CS/ML在期刊发表前预印本 |
| medRxiv/bioRxiv | 健康科学预印本,跟踪出版状态 |
| 谷歌学术 | 包罗万象、书籍、论文、非索引来源 |
| ORCID | 研究人员简介、合作者查找、资助历史 |
| 无法逾越之墙 | 查找合法免费PDF,在付费墙之前检查OA状态 |
吞吐量策略
当您需要比单个API允许的速度更快地处理论文时:
- 使用智能搜索 --首先自动选择OpenAlex(10请求/秒),根据需要添加源
- S2批处理端点 --一次请求500篇论文
batch_get_papers - CrossRef回退 --50个请求/秒,使用电子邮件,150M以上的工作量
- PubMed --10 req/sec,带NCBI API密钥,完整的MeSH词汇表
- 缓存命中 --重复查找(具有里程碑意义的论文、你自己的作品)是即时的
- 谷歌学者最后 --最激进的限速,谨慎使用
本地缓存
服务器在以下位置包含一个SQLite缓存(WAL模式、单例连接、线程安全) ~/.cache/academic-research-mcp/cache.db 即:
- 通过缓存来自所有9个API客户端的结果
@cached装饰器 - 避免对频繁访问的论文进行多余的API调用
- 默认TTL:搜索24小时,论文详细信息7天,作者3天
- 服务器启动时自动清理过期条目
- 用覆盖位置
ACADEMIC_CACHE_DIRenv 是
同一数据库将系统综述状态(综述、论文、搜索)存储在单独的表中。
依赖项
- Python 3.10+
- 主控程序 --模型上下文协议SDK
- 请求: --HTTP客户端
- [httpx\[袜子\]](https://www.python-httpx.org/) --支持SOCKS代理的异步HTTP客户端
- 学术的 --谷歌学术访问
- debvedxml --安全XML解析(PubMed/arXiv响应)
- pip系统证书 --为企业/VPN环境使用操作系统证书存储
许可证
麻省理工学院
