mcpField
C
Code Review MCP Tool for Cursor

Code Review MCP Tool for Cursor

本地服务
npmjs.com开发工具916 周前更新

关于 Code Review MCP Tool for Cursor

Code Review MCP Tool for Cursor 是用于审查本地 Git 变更或 GitHub 拉取请求并发布评论的 MCP 服务。它支持从本地 Markdown、Notion 或内置默认项加载审查指南。

主要功能

  1. 01审查 Git 分支间的差异
  2. 02审查 GitHub 拉取请求差异
  3. 03发布 PR 摘要和行级评论
  4. 04从 Markdown 或 Notion 加载指南
  5. 05创建拉取请求并读取 PR 模板

适用场景

  1. 01合并前审查本地分支
  2. 02分析 GitHub 拉取请求
  3. 03针对变更行添加评论
  4. 04应用 Notion 中的团队审查指南

MCP 相关

该 MCP 服务接收兼容 MCP 的客户端发起的审查请求,并提供差异获取、审查、PR 评论、PR 创建和模板读取工具。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"code-review": {
"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_REVIEW_GUIDELINE_CODE_BLOCK_URL>",
"NOTION_STYLE_GUIDELINE_CODE_BLOCK_URL": "<NOTION_STYLE_GUIDELINE_CODE_BLOCK_URL>",
"IGNORE_PATTERNS": "<IGNORE_PATTERNS>"
}
}
}
}
启动命令npx -y code-review-mcp-server
需要配置的环境变量
GITHUB_TOKEN密钥
NOTION_API_KEY密钥
NOTION_CODE_REVIEW_GUIDELINE_CODE_BLOCK_URL
NOTION_STYLE_GUIDELINE_CODE_BLOCK_URL
IGNORE_PATTERNS

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npmcode-review-mcp-server

工具

7

收录的工具列表 · 更新于 2 周前

参数类型必填说明
folderPathstring是用于运行 git diff 的仓库完整根目录路径
baseBranchstring是用于与当前分支比较的基础分支名称(必填)。指定 diff 比较的参考点。

详细介绍

代码审查 MCP 工具

此工具是一个模型上下文协议(MCP)服务,可为任何支持 MCP 集成的应用提供自动化代码审查,并在 GitHub PR 中发表评论。

询问 DeepWiki

功能

  • 比较两个 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 的应用中使用此工具,请按以下步骤操作:

  1. 打开 MCP 支持的应用的配置文件。
  2. 添加以下配置:
{
  "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 才能使用。如果未配置,则回退到默认指南。

审查说明的优先级

该工具支持多个审查说明来源,优先级顺序如下(实现):

  1. 本地 Markdown 文件(最高优先级)

    • 通过 LOCAL_INSTRUCTIONS_FILE_PATH 环境变量设置
    • 必须是 .md 或 .markdown 文件
    • 文件可用时,将完全替代所有其他说明来源
    • 如果无法读取文件,则回退到 Notion/默认指南
  2. Notion 集成(中等优先级)

    • 合并 Notion 中的风格指南和代码审查指南
    • 需要 NOTION_API_KEY 和相应的 URL 环境变量
  3. 默认指南(最低优先级)

    • 内置风格指南和代码审查指南
    • 始终作为回退选项可用

设置 Notion 集成

1. 申请 Notion API 令牌
  1. 访问 Notion 开发者
  2. 创建一个新的集成
  3. 获取 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 页面
  1. 点击 Notion 页面上的 Share 按钮
  2. 将集成添加到页面的共享列表中

注意:目前仅支持从 Notion 读取代码块

详细说明请参阅:Notion API 连接指南

使用方法

提示:为获得更好的审查结果,建议在运行代码审查命令前切换到待审查的分支。

本地 Git 分支审查

在兼容 MCP 的应用中发送以下命令:

code review
base branch: branch/any_branch

该命令将:

  1. 比较当前分支与指定基准分支之间的差异
  2. 自动生成 git diff
  3. 根据风格指南和代码审查指南进行审查
  4. 提供详细的审查结果和改进建议
获取原始 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 原则、可读性、不可变性等制定的代码质量规范。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。