GitHub MCP Server

GitHub MCP Server

site icon
2025.04.14 0
GoGitHub 自动化开发工具API 集成开发效率
GitHub MCP Server 是一个基于 Model Context Protocol (MCP) 的服务,提供与 GitHub API 的无缝集成,为开发者和工具提供高级自动化和交互能力。
View on GitHub

Overview

基本能力

产品定位

GitHub MCP Server 是一个为开发者提供的自动化工具,通过 MCP 协议与 GitHub API 交互,实现工作流自动化和数据交互。

核心功能

  • 自动化 GitHub 工作流和流程
  • 从 GitHub 仓库提取和分析数据
  • 构建与 GitHub 生态系统交互的 AI 工具和应用

适用场景

  • 自动化 GitHub 工作流程
  • 数据分析和提取
  • AI 工具开发

工具列表

  1. 用户工具
  2. get_me: 获取认证用户的详细信息

  3. 问题工具

  4. get_issue: 获取仓库中问题的内容
  5. create_issue: 在仓库中创建新问题
  6. update_issue: 更新现有问题

  7. 拉取请求工具

  8. get_pull_request: 获取拉取请求的详细信息
  9. create_pull_request: 创建新拉取请求
  10. merge_pull_request: 合并拉取请求

  11. 仓库工具

  12. create_or_update_file: 创建或更新仓库中的文件
  13. list_branches: 列出仓库的分支
  14. create_repository: 创建新仓库

  15. 搜索工具

  16. search_code: 在 GitHub 仓库中搜索代码
  17. search_users: 搜索 GitHub 用户

  18. 代码扫描工具

  19. get_code_scanning_alert: 获取代码扫描警报
  20. list_code_scanning_alerts: 列出仓库的代码扫描警报

常见问题解答

  • 需要 Docker 来运行容器化服务
  • 需要 GitHub 个人访问令牌进行认证
  • 支持 GitHub Enterprise Server 通过 --gh-hostGH_HOST 环境变量

使用教程

使用依赖

  1. 安装 Docker
  2. 确保 Docker 正在运行
  3. 创建 GitHub 个人访问令牌

安装教程

使用 VS Code

  1. 使用 README 顶部的一键安装按钮
  2. 或手动添加以下 JSON 配置到用户设置 (JSON) 文件:
{
  "mcp": {
    "inputs": [
      {
        "type": "promptString",
        "id": "github_token",
        "description": "GitHub Personal Access Token",
        "password": true
      }
    ],
    "servers": {
      "github": {
        "command": "docker",
        "args": [
          "run",
          "-i",
          "--rm",
          "-e",
          "GITHUB_PERSONAL_ACCESS_TOKEN",
          "ghcr.io/github/github-mcp-server"
        ],
        "env": {
          "GITHUB_PERSONAL_ACCESS_TOKEN": "${input:github_token}"
        }
      }
    }
  }
}

从源代码构建

cd cmd/github-mcp-server
go build
GITHUB_PERSONAL_ACCESS_TOKEN=your_token ./github-mcp-server stdio

调试方式

  1. 确保 Docker 正在运行
  2. 验证 GitHub 个人访问令牌有效
  3. 检查环境变量是否正确设置
  4. 使用 --export-translations 标志导出当前翻译配置
./github-mcp-server --export-translations

许可证

该项目遵循 MIT 开源许可条款,请参阅 MIT 了解完整条款。