GitHub MCP Server

GitHub MCP Server

site icon
2025.04.20 98000
JavaScript代码管理协作开发自动化流程开发效率交流协作
GitHub MCP Server 提供文件操作、仓库管理、搜索功能等。它支持自动分支创建、全面的错误处理、Git历史保留、批量操作和高级搜索等功能。适用于开发团队进行代码管理、协作开发和自动化流程。
View on GitHub

Overview

基本能力

产品定位

GitHub MCP Server 是一个为GitHub API设计的MCP服务器,提供文件操作、仓库管理、搜索功能等。

核心功能

  • Automatic Branch Creation: 当创建/更新文件或推送更改时,如果分支不存在,会自动创建分支
  • Comprehensive Error Handling: 提供清晰的错误信息
  • Git History Preservation: 操作保持正确的Git历史,无需强制推送
  • Batch Operations: 支持单文件和多文件操作
  • Advanced Search: 支持搜索代码、问题/PR和用户

适用场景

  • 开发团队进行代码管理
  • 协作开发和自动化流程
  • 代码搜索和问题管理

工具列表

  1. create_or_update_file: 创建或更新仓库中的单个文件
  2. push_files: 在单个提交中推送多个文件
  3. search_repositories: 搜索GitHub仓库
  4. create_repository: 创建新的GitHub仓库
  5. get_file_contents: 获取文件或目录内容
  6. create_issue: 创建新问题
  7. create_pull_request: 创建新拉取请求
  8. fork_repository: 分叉仓库
  9. create_branch: 创建新分支
  10. list_issues: 列出和过滤仓库问题
  11. update_issue: 更新现有问题
  12. add_issue_comment: 向问题添加评论
  13. search_code: 在GitHub仓库中搜索代码
  14. search_issues: 搜索问题和拉取请求
  15. search_users: 搜索GitHub用户
  16. list_commits: 获取仓库分支的提交
  17. get_issue: 获取仓库中问题的内容
  18. get_pull_request: 获取特定拉取请求的详细信息
  19. list_pull_requests: 列出和过滤仓库拉取请求
  20. create_pull_request_review: 在拉取请求上创建评论
  21. merge_pull_request: 合并拉取请求
  22. get_pull_request_files: 获取拉取请求中更改的文件列表
  23. get_pull_request_status: 获取拉取请求的所有状态检查的合并状态
  24. update_pull_request_branch: 使用基础分支的最新更改更新拉取请求分支
  25. get_pull_request_comments: 获取拉取请求上的评论
  26. get_pull_request_reviews: 获取拉取请求上的评论

常见问题解答

  • 如何创建GitHub个人访问令牌?
  • 前往Personal access tokens(在GitHub设置 > 开发者设置中)
  • 选择您希望此令牌访问的仓库(公共、全部或选择)
  • 创建具有repo范围("私有仓库的完全控制")的令牌
  • 复制生成的令牌

使用教程

使用依赖

需要创建GitHub个人访问令牌,具体步骤见常见问题解答。

安装教程

Docker

{
  "mcpServers": {
    "github": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "GITHUB_PERSONAL_ACCESS_TOKEN",
        "mcp/github"
      ],
      "env": {
        "GITHUB_PERSONAL_ACCESS_TOKEN": "<YOUR_TOKEN>"
      }
    }
  }
}

NPX

{
  "mcpServers": {
    "github": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-github"
      ],
      "env": {
        "GITHUB_PERSONAL_ACCESS_TOKEN": "<YOUR_TOKEN>"
      }
    }
  }
}

调试方式

Docker构建:

docker build -t mcp/github -f src/github/Dockerfile .

许可证

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