关于 Code Review MCP Tool for Cursor
Code Review MCP Tool for Cursor 是用于审查本地 Git 变更或 GitHub 拉取请求并发布评论的 MCP 服务。它支持从本地 Markdown、Notion 或内置默认项加载审查指南。
主要功能
- 01审查 Git 分支间的差异
- 02审查 GitHub 拉取请求差异
- 03发布 PR 摘要和行级评论
- 04从 Markdown 或 Notion 加载指南
- 05创建拉取请求并读取 PR 模板
适用场景
- 01合并前审查本地分支
- 02分析 GitHub 拉取请求
- 03针对变更行添加评论
- 04应用 Notion 中的团队审查指南
MCP 相关
该 MCP 服务接收兼容 MCP 的客户端发起的审查请求,并提供差异获取、审查、PR 评论、PR 创建和模板读取工具。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
7收录的工具列表 · 更新于 2 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| folderPath | string | 是 | 用于运行 git diff 的仓库完整根目录路径 |
| baseBranch | string | 是 | 用于与当前分支比较的基础分支名称(必填)。指定 diff 比较的参考点。 |
详细介绍
代码审查 MCP 工具
此工具是一个模型上下文协议(MCP)服务,可为任何支持 MCP 集成的应用提供自动化代码审查,并在 GitHub PR 中发表评论。
功能
- 比较两个 git 分支之间的代码差异
- 根据 GitHub 拉取请求 URL 比较代码差异
- 在 GitHub 拉取请求中添加摘要评论
- 在 GitHub 拉取请求中添加针对特定行的评论
- 提供详细的代码审查指南
- 支持 Notion 集成,可从 Notion 代码块中获取审查指南,并在无法获取时使用默认指南
- 支持使用本地 Markdown 文件提供完整的审查说明
- 包含预配置的风格指南和代码审查指南
- 从本地目录读取 PR 模板
- 自动检测仓库信息并创建 GitHub 拉取请求
- 获取原始 git diff 输出,不包含审查说明
工具
- CodeReview:运行分支与基础分支之间的 git diff。返回差异,以及审查和修复问题的说明。
- GetLocalGitDiff:在本地获取两个分支之间的 git diff。返回原始差异输出,不包含审查说明。
- CodeReviewWithGithubUrl:从 GitHub PR URL 获取差异。返回差异,以及审查和修复问题的说明。
- AddPRSummaryComment:在 GitHub PR 中添加摘要评论。
- AddPRLineComment:在 GitHub PR 的特定行中添加多条评论。支持针对 PR 差异中具体变更行发表评论。
- GetPRTemplate:从指定的文件夹路径和模板名称读取 PR 模板;如果未找到,则返回默认模板。
- CreatePR:使用指定的标题、正文和分支创建新的 GitHub 拉取请求。自动从本地 git 配置中检测 GitHub URL 和当前分支。
架构
- MCP 服务:接收来自任何兼容 MCP 的客户端应用的代码审查请求。
- Git 集成:使用本地 git 或 GitHub PR 生成差异。
- Notion 集成:如果已配置,则从 Notion 代码块中获取审查指南。
- 本地文件支持:从本地 Markdown 文件中读取完整的审查说明。
- 自动审查:分析代码差异并生成审查评论和建议。
先决条件
- Node.js(建议使用 v18 或更高版本)
- 系统中已安装 Git
- 若要审查 GitHub PR,必须提供以下其中一项:
GITHUB_TOKEN环境变量(用于使用 GitHub RESTful API),或- 已安装并完成身份验证的 GitHub CLI(
gh)
- (可选)用于集成审查指南的 Notion API 令牌
MCP 配置
要在任何支持 MCP 的应用中使用此工具,请按以下步骤操作:
- 打开 MCP 支持的应用的配置文件。
- 添加以下配置:
{
"mcpServers": {
"code-review-tool": {
"command": "npx",
"args": ["-y", "code-review-mcp-server"],
"env": {
"GITHUB_TOKEN": "github_token",
"NOTION_API_KEY": "notion_api_key",
"NOTION_CODE_REVIEW_GUIDELINE_CODE_BLOCK_URL": "notion_code_block_url_here",
"NOTION_STYLE_GUIDELINE_CODE_BLOCK_URL": "notion_code_block_url_here",
"LOCAL_INSTRUCTIONS_FILE_PATH": "/path/to/complete-instructions.md",
"IGNORE_PATTERNS": "pattern1,pattern2,pattern3"
}
}
}
}
环境变量说明
| 变量 | 必需 | 说明 |
|---|---|---|
GITHUB_TOKEN | 可选 | 用于访问 API 的 GitHub 个人访问令牌。如果未提供,则回退到 GitHub CLI。 |
LOCAL_INSTRUCTIONS_FILE_PATH | 可选 | 包含完整审查说明的本地 Markdown 文件路径。提供此文件后,它将完全替代 Notion 和默认指南。优先级:本地 > Notion > 默认。 |
IGNORE_PATTERNS | 可选 | 用于排除在审查范围之外的文件的逗号分隔 glob 模式。 |
| Notion | ||
NOTION_API_KEY | 可选 | 从 Notion 获取审查指南时必需。 |
NOTION_CODE_REVIEW_GUIDELINE_CODE_BLOCK_URL | 可选 | 包含代码审查指南的 Notion URL。必须指向 Notion 的 </> Code 块,并且需要有效的 NOTION_API_KEY 才能使用。如果未配置,则回退到默认指南。 |
NOTION_STYLE_GUIDELINE_CODE_BLOCK_URL | 可选 | 包含风格指南的 Notion URL。必须指向 Notion 的 </> Code 块,并且需要有效的 NOTION_API_KEY 才能使用。如果未配置,则回退到默认指南。 |
审查说明的优先级
该工具支持多个审查说明来源,优先级顺序如下(实现):
-
本地 Markdown 文件(最高优先级)
- 通过
LOCAL_INSTRUCTIONS_FILE_PATH环境变量设置 - 必须是
.md或.markdown文件 - 文件可用时,将完全替代所有其他说明来源
- 如果无法读取文件,则回退到 Notion/默认指南
- 通过
-
Notion 集成(中等优先级)
- 合并 Notion 中的风格指南和代码审查指南
- 需要
NOTION_API_KEY和相应的 URL 环境变量
-
默认指南(最低优先级)
- 内置风格指南和代码审查指南
- 始终作为回退选项可用
设置 Notion 集成
1. 申请 Notion API 令牌
- 访问 Notion 开发者
- 创建一个新的集成
- 获取 API 令牌
详细说明请参阅:Notion API 授权指南
2. 配置环境变量
该工具需要以下环境变量:
NOTION_API_KEY=your_token_here
NOTION_CODE_REVIEW_GUIDELINE_CODE_BLOCK_URL=your_notion_code_block_url
NOTION_STYLE_GUIDELINE_CODE_BLOCK_URL=your_notion_style_guideline_url
如上所示,可以在 MCP 配置的 env 部分提供这些变量。
3. 将集成添加到 Notion 页面
- 点击 Notion 页面上的
Share按钮 - 将集成添加到页面的共享列表中
注意:目前仅支持从 Notion 读取代码块
详细说明请参阅:Notion API 连接指南
使用方法
提示:为获得更好的审查结果,建议在运行代码审查命令前切换到待审查的分支。
本地 Git 分支审查
在兼容 MCP 的应用中发送以下命令:
code review
base branch: branch/any_branch
该命令将:
- 比较当前分支与指定基准分支之间的差异
- 自动生成 git diff
- 根据风格指南和代码审查指南进行审查
- 提供详细的审查结果和改进建议
获取原始 Git Diff
如需仅获取 git diff 而不附带审查说明:
get local git diff
base branch: main
这将返回当前分支与指定基准分支之间的原始 git diff 输出,可用于进一步处理或分析。
GitHub PR 代码审查
在兼容 MCP 的应用中,发送以下命令:
code review
https://github.com/owner/repo/pull/123
After generating the review report, please:
1. Add PR summary comment
2. If individual files require suggested changes, use line comments.
这会获取 PR 的差异,提供代码审查,并直接在 GitHub 上留下 PR 评论。
创建 GitHub Pull Request
自动检测仓库并创建 PR:
create PR base on diff
base branch: main
该工具将:
- 自动从 git remote 检测 GitHub 仓库 URL
- 使用当前分支作为源分支
- 验证当前分支是否已推送到远程仓库
- 使用 GitHub CLI 或 REST API 创建 PR
- 支持创建草稿 PR 和分配里程碑
手动覆盖(自动检测失败时):
create PR
github url: https://github.com/user/repo
base branch: main
读取 PR 模板
读取仓库中的 PR 模板:
get PR template
这将:
- 在指定文件夹中搜索
pull_request_template.md - 同时检查
.github/子目录 - 返回模板内容;如果未找到,则返回默认模板
自定义模板名称:
get PR template
folder path: /path/to/your/repo/template
template name: custom_template.md
CI 集成,实现自动化代码审查
你可以在 CI 流水线中自动执行代码审查:触发 n8n webhook,由它调用此项目的 MCP 工具执行审查,并返回结果或在 PR 上留下评论。
如需分步指南和推荐的工作流图,请参阅:通过 n8n 和 MCP 工具进行 CI 集成
审查指南
此工具提供多种配置审查指南的方式:
1. 本地 Markdown 指令(推荐)
创建一个完整的 Markdown 格式指令文件,并设置 LOCAL_INSTRUCTIONS_FILE_PATH 环境变量。这种方式为审查流程提供了最大的灵活性和版本控制能力。
2. Notion 集成
通过 Notion 代码块配置独立的风格指南和代码审查指南。
3. 默认指南
该工具内置了以下指南:
- 风格指南:涵盖变量命名、函数命名、常量命名等方面的代码风格规范。
- 代码审查指南:基于 SOLID 原则、可读性、不可变性等制定的代码质量规范。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。