使用说明

项目简介

GitHub Issue Triage MCP Server 是一个基于 Model Context Protocol (MCP) 构建的后端应用,旨在帮助开发者更高效地管理 GitHub 仓库中的 Issue。它通过提供一系列工具,简化 Issue 的分流、标签管理和初步分析流程,提升团队协作效率。

主要功能点

  • Issue 信息查询: 快速检索 GitHub 仓库中的 Issue 信息,包括 Issue 标题、状态、标签、评论等详细内容。
  • Issue 分流: 识别未分流的 Issue(例如,缺少里程碑或标签的 Issue),并提供 Issue 列表以便快速处理。
  • 标签管理: 获取仓库中所有标签,并支持根据 Issue 内容和指令,使用 LLM 智能添加标签。
  • LLM 辅助: 利用 LLM (如 OpenAI) 对 Issue 进行内容总结,辅助用户理解 Issue 的核心内容和讨论要点,并智能推荐标签。

安装步骤

  1. 克隆仓库: 将 GitHub 仓库 'github-triage-mcp-server' 克隆到本地。
    git clone https://github.com/jsuarezruiz/github-triage-mcp-server.git
    cd github-triage-mcp-server
  2. 安装 .NET SDK: 确保您的开发环境已安装 .NET SDK (推荐 .NET 9 或更高版本)。您可以从 https://dotnet.microsoft.com/download 下载并安装。
  3. 构建项目: 在项目根目录下,使用 .NET CLI 构建项目。
    dotnet build

服务器配置

MCP 客户端需要配置以下信息以连接到 GitHub Issue Triage MCP Server。以下是一个 JSON 格式的配置示例,您需要将其添加到您的 MCP 客户端配置中。

{
  "serverName": "github-triage",  //  自定义 MCP 服务器名称,用于在客户端中标识
  "type": "stdio",             //  指定传输协议为 Stdio (标准输入输出)
  "command": "dotnet",          //  运行 MCP 服务器的命令,这里使用 dotnet CLI
  "args": [                   //  命令参数
    "run",                     //  运行 .NET 项目
    "--project",               //  指定项目文件路径
    "/path/to/github-triage-mcp-server/src/GitHubTriageMcpServer.csproj"  //  请替换为您的 GitHubTriageMcpServer.csproj 文件的实际路径
  ],
  "env": {                    //  环境变量配置
    "GITHUB_PERSONAL_ACCESS_TOKEN": "<YOUR_GITHUB_PERSONAL_ACCESS_TOKEN>", //  GitHub Personal Access Token,用于 API 鉴权,请替换为您的 Token
    "OPENAI_API_KEY": "<YOUR_OPENAI_API_KEY>"                         //  OpenAI API Key,用于 LLM 功能,如果不需要 LLM 功能可以不配置,请替换为您的 Token
  }
}

请注意:

  • 请将 '"/path/to/github-triage-mcp-server/src/GitHubTriageMcpServer.csproj"' 替换为您本地仓库 'GitHubTriageMcpServer.csproj' 文件的绝对路径
  • 您需要在环境变量 'env' 中配置 'GITHUB_PERSONAL_ACCESS_TOKEN' 和 'OPENAI_API_KEY'。
    • 'GITHUB_PERSONAL_ACCESS_TOKEN' 需要您在 GitHub 上生成一个 Personal Access Token,并赋予 'repo' 权限。
    • 'OPENAI_API_KEY' 是 OpenAI API 的密钥,如果您需要使用 Issue 总结和智能标签推荐等 LLM 功能,则需要配置此项。如果您不使用 LLM 相关功能,可以省略 'OPENAI_API_KEY' 的配置。

基本使用方法

  1. 启动 MCP 服务器:配置完成后,在 MCP 客户端中启动名为 'github-triage' (或您在 'serverName' 中配置的名称) 的 MCP 服务器。

  2. 使用 MCP 工具:通过 MCP 客户端调用以下工具,实现 GitHub Issue 的管理和辅助分流:

    • 'triage_get_issues_count': 获取指定 GitHub 仓库中 Open 状态的 Issue 数量。
    • 'triage_get_issues': 获取指定 GitHub 仓库中 Open 状态的 Issue 列表 (表格形式)。
    • 'triage_get_labels_count': 获取指定 GitHub 仓库中标签的总数。
    • 'triage_get_labels': 获取指定 GitHub 仓库中的标签列表 (表格形式)。
    • 'triage_summary_issue': (需要 OpenAI API Key) 总结指定 GitHub 仓库的 Issue 内容,包括元数据、标签和评论。
    • 'triage_add_labels_issue': (需要 OpenAI API Key) 使用 LLM 智能分析 Issue 内容,并建议添加合适的标签。

    调用工具时,通常需要提供仓库的 owner (拥有者) 和 repo (仓库名) 作为参数。例如,使用 'triage_get_issues_count' 工具获取 'jsuarezruiz/github-triage-mcp-server' 仓库的 Issue 数量,您需要在 MCP 客户端中指定工具名称为 'triage_get_issues_count',并提供参数 'owner: jsuarezruiz', 'repo: github-triage-mcp-server'。

    您可以使用 MCP Inspector 等 MCP 客户端工具进行测试和调试。

信息

分类

开发者工具