GitHub MCP Server

GitHub MCP Server

site icon
2025.02.17 0
TypeScriptGitHub API 服务仓库管理文件操作代码搜索开发效率交流协作
GitHub MCP Server 是一个为 GitHub API 提供服务的中间件,支持文件操作、仓库管理、搜索功能等。它通过自动创建分支、全面的错误处理、保持 Git 历史记录以及支持批量操作等功能,简化了与 GitHub 的交互过程。适用于需要自动化 GitHub 操作、批量处理文件或搜索代码、问题和用户的开发场景。
View on GitHub

Overview

基本能力

产品定位

GitHub MCP Server 是一个为 GitHub API 提供服务的中间件,旨在简化与 GitHub 的交互过程,支持文件操作、仓库管理、搜索功能等。

核心功能

  • 自动分支创建:在创建/更新文件或推送更改时,自动创建不存在的分支
  • 全面的错误处理:为常见问题提供清晰的错误信息
  • Git 历史保留:操作保持适当的 Git 历史记录,无需强制推送
  • 批量操作:支持单文件和多文件操作
  • 高级搜索:支持搜索代码、问题/PR 和用户

适用场景

  • 自动化 GitHub 操作
  • 批量处理文件
  • 搜索代码、问题和用户

工具列表

  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_issue_comments:获取问题或拉取请求的评论

常见问题解答

  • 如何设置个人访问令牌
  • 转到 Personal access tokens
  • 选择令牌可以访问的仓库(公共、所有或选择)
  • 创建具有 repo 范围的令牌("私有仓库的完全控制")
  • 复制生成的令牌

使用教程

使用依赖

  • 需要 GitHub 个人访问令牌

安装教程

  1. 创建 GitHub 个人访问令牌
  2. claude_desktop_config.json 中添加以下内容:
{
  "mcpServers": {
    "github": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-github"
      ],
      "env": {
        "GITHUB_PERSONAL_ACCESS_TOKEN": "<YOUR_TOKEN>"
      }
    }
  }
}

调试方式

  • 确保个人访问令牌具有正确的权限
  • 检查 claude_desktop_config.json 中的配置是否正确

许可证

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