使用说明
项目简介
PR-Reviewer MCP服务器是一个基于Model Context Protocol (MCP) 构建的后端应用,它专注于GitHub Pull Request (PR) 的分析和报告生成。该服务器提供工具,允许LLM客户端(如Claude AI)请求分析指定的GitHub PR,并利用分析结果自动在Notion中创建详细的报告页面。
主要功能点
- GitHub PR分析: 能够连接GitHub API,获取指定仓库和PR的详细信息,包括代码变更内容。
- Notion报告生成: 可以将PR分析结果整理成结构化的内容,并自动在Notion数据库中创建页面进行展示。
- MCP服务器: 作为一个MCP服务器,它提供标准化的接口,通过注册工具 (Tools) 的方式,让LLM客户端可以调用其功能。
- 工具注册: 注册了 'fetch_pr' 和 'create_notion_page' 两个工具,分别用于获取PR信息和创建Notion页面。
安装步骤
-
克隆仓库:
git clone https://github.com/attikpo-akrabal-godwin/PR-Reviewer.git cd PR-Reviewer -
创建并激活虚拟环境:
python -m venv .venv source .venv/bin/activate # Linux/macOS .venv\Scripts\activate # Windows -
安装依赖:
pip install -r requirements.txt -
配置环境变量: 在项目根目录下创建 '.env' 文件,并填入以下API密钥和ID:
GITHUB_TOKEN=你的GitHub个人访问令牌 NOTION_API_KEY=你的Notion API密钥 NOTION_PAGE_ID=你的Notion页面ID (可选,如果需要特定父页面) NOTION_DATABASE_ID=你的Notion数据库ID (用于存储报告)请务必替换为你的真实Token和ID。
- 获取 GitHub Token: 在 GitHub 设置 -> Developer settings -> Personal access tokens 中生成。需要 'repo' 权限。
- 获取 Notion API Key 和 Database ID: 需要在 Notion 中创建一个集成,并分享数据库给该集成。参考 Notion 官方文档获取。
服务器配置
MCP客户端需要配置以下JSON格式信息以连接到 PR-Reviewer MCP 服务器:
{ "server name": "PR-Reviewer-MCP-Server", "command": "python", "args": [ "pr_anayzer.py" ], "transport": "stdio" }
配置参数说明:
- '"server name"': 服务器的名称,可以自定义,用于在MCP客户端中标识该服务器。 例如 "PR-Reviewer-MCP-Server"。
- '"command"': 启动服务器的命令,这里是使用 'python' 解释器。
- '"args"': 传递给启动命令的参数,这里指定运行 'pr_anayzer.py' 文件,即MCP服务器的入口脚本。
- '"transport"': 指定MCP客户端与服务器通信的传输协议,这里使用 'stdio',即标准输入输出。
基本使用方法
-
启动MCP服务器: 在项目根目录下,运行以下命令启动 PR-Reviewer MCP 服务器:
python pr_anayzer.py服务器成功启动后,会在终端输出 "MCP Server initialized" 和 "Running MCP Server for GitHub PR Analysis..." 等信息。
-
配置MCP客户端: 在你的MCP客户端(例如 Claude AI),根据其配置方式,添加上述 '服务器配置' JSON 信息。确保客户端能够通过 'stdio' 与本地运行的 PR-Reviewer MCP 服务器建立连接。
-
使用客户端调用工具: 连接成功后,在MCP客户端中,你可以调用服务器提供的工具,例如:
- 调用 'fetch_pr' 工具,并提供 'repo_owner', 'repo_name', 'pr_number' 参数,以获取指定 GitHub PR 的信息。
- 调用 'create_notion_page' 工具,并提供 'title' 和 'content' 参数,以在 Notion 中创建包含 PR 分析报告的页面。
具体调用方式取决于你使用的MCP客户端的用户界面或API。可以参考仓库 'README.md' 中提供的 Claude AI 示例GIF动画。
通过以上步骤,你就可以搭建并使用 PR-Reviewer MCP 服务器,利用 LLM 客户端自动化进行 GitHub PR 分析并在 Notion 中生成报告。
信息
分类
开发者工具