基于MCP的智能学术研究助手
English | 中文
ScholAI 是一个基于模型上下文协议(MCP)的服务器,旨在增强学术研究工作流程。它提供了用于发现、分析和管理学术出版物的工具,具有 CCF 排名集成和语义查询分析等功能。
- Python 3.11 或更高版本
- uv 包管理器(推荐)或 pip
-
克隆仓库:
git clone https://github.com/oDaiSuno/ScholAI cd ScholAI -
安装依赖(强烈推荐使用uv):
# 使用 uv(推荐) uv sync # 或使用 pip pip install -r requirements.txt # 如果上述方法不成功,可以手动安装缺失的依赖 pip install httpx pyyaml beautifulsoup4 dict2xml mcp[cli] pymupdf
-
准备数据目录:
mkdir -p data
这里以cherry studio为例,填写名称为ScholAI,命令为uv,参数如下(记得更改项目路径)
--directory
D:\path\to\your\ScholAI
run
main.py
- 🔍 多数据库搜索:访问 arXiv 预印本和同行评审出版物
- 🏆 CCF 排名集成:自动确定会议和期刊排名
- 📄 PDF 管理:下载和提取学术论文文本
- 🧠 语义查询分析:将自然语言研究兴趣转化为精确的学术查询
在 arXiv 存储库中搜索预印本论文。
参数:
query:搜索关键词或短语num_results:返回的最大论文数量(默认:100)need_datetime_sort:按提交日期排序(默认:False)
在特定会议和期刊中搜索学术论文。
参数:
query:搜索关键词或短语num_results:返回的最大论文数量(默认:100)need_datetime_sort:按发布日期排序(默认:True)
获取学术会议或期刊的 CCF 排名。
参数:
venue:会议或期刊名称
下载并本地保存 PDF 文件。
参数:
title:用于生成文件名的论文标题pdf_url:直接 PDF 下载 URL
从 PDF 文件中提取文本内容。
参数:
pdf_path:PDF 文件路径
将研究兴趣转化为精确查询的渐进分析工具。
参数:
analysis_step:当前分析内容step_number:当前步骤索引total_steps:估计的总步骤数next_step_needed:继续分析标志- 其他概念、数据库、搜索策略等参数
列出数据目录中所有已下载的 PDF 文件。
- CCF 排名:将
ccfrank.yml放在根目录中用于会议排名 - 数据目录:
./data/用于已下载的 PDF
- FastMCP:模型上下文协议服务器框架
- httpx:异步 HTTP 客户端用于 API 请求
- PyMuPDF (fitz):PDF 处理和文本提取
- PyYAML:配置文件处理
- BeautifulSoup:HTML 解析
ScholAI/
├── main.py # 主 MCP 服务器实现
├── pyproject.toml # 项目配置
├── uv.lock # 依赖锁定文件
├── ccfrank.yml # CCF 排名数据库
├── data/ # 已下载论文存储
└── README.md # 文档
用 🌟 为本项目助力

