GitHub MCP Server

GitHub MCP Server

site icon
2025.04.04 0
TypeScript仓库管理代码搜索问题跟踪开发协作开发效率交流协作
GitHub MCP Server 是一个基于 GitHub API 的 MCP 服务,提供了文件操作、仓库管理、搜索功能等一系列与 GitHub 交互的能力。该服务支持自动分支创建、全面的错误处理、Git 历史保留、批量操作以及高级搜索等功能,适用于开发团队协作、代码管理、问题跟踪等多种场景。
View on GitHub

Overview

基本能力

产品定位

GitHub MCP Server 是一个专门为 GitHub API 设计的 MCP 服务,旨在简化与 GitHub 的交互,提供高效的文件操作、仓库管理、搜索功能等。

核心功能

  • 自动分支创建:在创建/更新文件或推送更改时,自动创建不存在的分支。
  • 全面的错误处理:为常见问题提供清晰的错误信息。
  • Git 历史保留:操作时保持正确的 Git 历史,无需强制推送。
  • 批量操作:支持单文件和多文件操作。
  • 高级搜索:支持代码、问题/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 设置 > 开发者设置 > 个人访问令牌中创建,选择适当的仓库权限和范围。
  • 如何使用 Docker 运行:通过 Docker 命令运行,并设置环境变量 GITHUB_PERSONAL_ACCESS_TOKEN
  • 如何使用 NPX 运行:通过 NPX 命令运行,并设置环境变量 GITHUB_PERSONAL_ACCESS_TOKEN

使用教程

使用依赖

  1. 创建个人访问令牌
  2. 访问 GitHub 个人访问令牌页面
  3. 选择适当的仓库权限(如 repopublic_repo)。
  4. 生成并复制令牌。

安装教程

  1. Docker 安装bash docker build -t mcp/github -f src/github/Dockerfile .
  2. NPX 安装bash npx -y @modelcontextprotocol/server-github

调试方式

  1. Docker 运行bash docker run -i --rm -e GITHUB_PERSONAL_ACCESS_TOKEN mcp/github
  2. NPX 运行bash npx -y @modelcontextprotocol/server-github

许可证

该项目遵循 MIT 开源许可条款。