使用说明
项目简介
本项目是一个基于 Model Context Protocol (MCP) 的后端服务器,旨在为 LLM 客户端提供科学论文分析能力。它集成了 Semantic Scholar API 和 Google Gemini API,允许用户通过 LLM 客户端进行科学论文的搜索、详细信息获取以及引文关系分析。服务器端实现了 MCP 协议,可以与任何兼容 MCP 协议的客户端进行交互,例如 Anthropic 官方提供的 MCP 客户端。同时,项目也提供了一个基于 Gradio 的 Web 前端,方便用户直接体验和测试服务器功能。
主要功能点
- 科学论文搜索: 通过关键词查询 Semantic Scholar 数据库,快速找到相关的科学论文。
- 论文信息获取: 根据论文 ID 获取论文的详细信息,包括标题、作者、摘要、发表年份、期刊、引用次数以及参考文献列表。
- 引文网络分析: 分析指定论文的引文关系,包括被引用情况和参考文献分析,帮助用户了解论文的影响力和学术背景。(请注意,根据仓库说明,此功能目前可能存在问题)
- MCP 协议支持: 完全实现了 MCP 服务器的核心功能,可以作为 MCP 后端与 LLM 客户端进行通信。
- Gradio Web 前端: 提供一个用户友好的 Web 界面,方便用户直接与服务器交互,无需额外的 MCP 客户端。
安装步骤
-
克隆仓库
git clone https://github.com/priteshshah96/MCP.git cd MCP -
创建并激活虚拟环境
python -m venv venv source venv/bin/activate # Linux/macOS venv\Scripts\activate # Windows -
安装依赖 推荐使用 'uv' (更快速的 Python 包管理器) 安装依赖,或者使用 'pip'。
使用 uv (推荐):
# 如果没有 uv,先安装 uv curl -LsSf https://astral.sh/uv/install.sh | sh # 或 pip install uv uv pip install -r requirements.txt使用 pip:
pip install -r requirements.txt -
配置 API 密钥 复制 '.env.example' 文件并重命名为 '.env',然后打开 '.env' 文件,填入你的 Google Gemini API 密钥。
cp .env.example .env # 编辑 .env 文件,添加 GEMINI_API_KEY=你的API密钥你可以在 Google AI Studio 获取免费的 Gemini API 密钥。
-
运行服务器 在项目根目录下运行以下命令,即可同时启动后端服务器和前端界面。
python run.py或者分别启动:
- 后端服务器: 'uvicorn backend.main:app --reload'
- 前端界面: 'python frontend/app.py'
启动成功后,后端服务器默认运行在 'http://localhost:8000',前端界面默认运行在 'http://localhost:8501'。
服务器配置 (MCP 客户端)
如果你想使用 MCP 客户端连接此服务器,你需要配置客户端的服务器连接信息。以下是本 MCP 服务器的配置信息,请复制到你的 MCP 客户端配置中。
{ "server name": "Scientific Paper Analyzer", "command": "python", "args": ["run.py"] }
配置参数说明:
- '"server name"': 服务器名称,用于在客户端识别和显示。
- '"command"': 启动服务器的命令,这里使用 'python' 命令。 前提是你的系统环境变量PATH中包含python执行路径。
- '"args"': 传递给 'python' 命令的参数,'["run.py"]' 表示执行项目根目录下的 'run.py' 脚本。
重要提示:
- MCP 客户端通常需要配置服务器的启动命令和参数,以便客户端能够启动和连接到 MCP 服务器。上述 JSON 配置提供了启动本仓库 MCP 服务器的必要信息。请直接复制 JSON 配置到你的 MCP 客户端,无需修改代码。
- 请确保你的 MCP 客户端支持 SSE (Server-Sent Events) 协议,因为该仓库的 MCP 服务器通过 SSE 与客户端通信 ('app.mount("/mcp", mcp_server.sse_app)').
- 如果你的 MCP 客户端需要指定服务器地址和端口,默认情况下,后端服务器运行在 'http://localhost:8000' 的 '/mcp' 路径下。
基本使用方法
-
访问 Web 前端 (可选) 打开浏览器,访问 'http://localhost:8501',即可使用 Gradio Web 前端与服务器交互。在前端界面中,你可以输入 Gemini API 密钥(或者在 '.env' 文件中配置),然后通过聊天框进行科学论文的搜索和分析。
-
使用 MCP 客户端 (推荐) 配置你的 MCP 客户端,使用上面提供的服务器配置信息连接到本服务器。连接成功后,你可以通过 MCP 客户端向服务器发送 MCP 请求,例如调用 'search_papers' 工具进行论文搜索,或使用 'paper://{paper_id}' 资源获取论文信息。具体工具和资源的使用方法请参考 'backend/main.py' 文件中 '@mcp_server.tool()' 和 '@mcp_server.resource()' 注释的函数说明。
注意事项
- API 密钥: 请妥善保管你的 Google Gemini API 密钥,避免泄露。
- Semantic Scholar API 限制: Semantic Scholar API 有速率限制,频繁请求可能会导致暂时无法使用搜索功能,请稍后重试。
- 引文分析工具: 仓库的 'README.md' 提到引文分析工具可能存在问题,使用时请注意。
- 依赖: 请确保你的 Python 环境满足要求 (Python 3.11 或更高版本),并已正确安装所有依赖。
信息
分类
网页与API