项目简介

本项目是一个基于 Model Context Protocol (MCP) 构建的服务器,旨在为大型语言模型 (LLM) 提供 GitHub Pull Request (PR) 的上下文信息。它通过 MCP 协议的标准接口,向 LLM 客户端提供工具,使其能够获取和利用 GitHub PR 的数据进行代码分析、理解和辅助代码审查等任务。

主要功能点

  • 获取 GitHub PR 数据: 提供一个名为 'get-pull-request-data' 的工具,允许 LLM 客户端通过指定仓库所有者、仓库名和 PR 编号,获取指定 PR 的详细信息。
  • 详细信息包括:
    • PR 的基本信息(标题、描述、状态等)
    • 代码差异 (diff)
    • 所有评论
    • 所有评审

安装步骤

  1. 克隆仓库:

    git clone https://github.com/gourav221b/Github-PR-MCP-server.git
  2. 进入项目目录:

    cd Github-PR-MCP-server
  3. 安装依赖:

    npm install
  4. 构建项目:

    npm run build

服务器配置

MCP 客户端需要配置以下 JSON 信息以连接到此 MCP 服务器。请注意,您需要将 'path/to/build/index.js' 替换为 'build/index.js' 文件在您本地文件系统中的绝对路径

{
  "serverName": "github",
  "command": "node",
  "args": [
    "path/to/build/index.js"  // 请替换为 build/index.js 的实际绝对路径
  ]
}

参数说明:

  • 'serverName': 服务器名称,这里设置为 "github"。
  • 'command': 启动服务器的命令,这里使用 'node' 解释器。
  • 'args': 传递给 'node' 命令的参数,这里是 'build/index.js' 的路径,指向编译后的服务器入口文件。

基本使用方法

  1. 启动服务器: 当 MCP 客户端配置并连接到此服务器后,服务器将自动启动并等待客户端请求。

  2. 调用工具 (get-pull-request-data): LLM 客户端可以使用 'get-pull-request-data' 工具获取 GitHub PR 数据。调用此工具时,需要提供以下参数:

    • 'owner': GitHub 仓库的所有者 (字符串)。例如: "facebook"。
    • 'repo': GitHub 仓库的名称 (字符串)。例如: "react"。
    • 'pullNumber': Pull Request 的编号 (数字)。例如: 28500。
    • 'token' (可选): GitHub 个人访问令牌 (字符串)。如果需要访问私有仓库或提高 API 调用速率限制,可以提供 GitHub Personal Access Token。

    客户端调用工具后,服务器将返回包含 PR 详细信息的 JSON 格式文本内容。

信息

分类

开发者工具