GitHub MCP Server Plus

GitHub MCP Server Plus

site icon
2025.02.10 2
TypeScriptGitHub API仓库管理文件操作搜索功能开发效率
GitHub MCP Server Plus 是一个针对GitHub API的MCP服务器,提供文件操作、仓库管理、搜索功能等。它支持自动分支创建、错误处理、Git历史保留、批量操作和高级搜索等功能,适用于开发团队和自动化工作流。
View on GitHub

Overview

基本能力

产品定位

GitHub MCP Server Plus 是一个针对GitHub API的MCP服务器,旨在简化GitHub仓库的管理和操作,支持文件操作、仓库管理、搜索功能等。

核心功能

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

适用场景

  • 开发团队的自动化工作流。
  • 批量文件操作和仓库管理。
  • 代码和问题的搜索与分析。

工具列表

  1. create_or_update_file:创建或更新单个文件。
  2. push_files_content:推送多个文件内容。
  3. push_files_from_path:从文件系统路径推送多个文件。
  4. search_repositories:搜索GitHub仓库。
  5. create_repository:创建新仓库。
  6. get_file_contents:获取文件或目录内容。
  7. create_issue:创建新问题。
  8. create_pull_request:创建新拉取请求。
  9. fork_repository:分叉仓库。
  10. create_branch:创建新分支。
  11. list_issues:列出和过滤问题。
  12. update_issue:更新问题。
  13. add_issue_comment:添加问题评论。
  14. search_code:搜索代码。
  15. search_issues:搜索问题和拉取请求。
  16. search_users:搜索用户。
  17. list_commits:获取分支提交。
  18. get_issue:获取问题内容。
  19. get_pull_request:获取拉取请求详情。
  20. list_pull_requests:列出和过滤拉取请求。
  21. create_pull_request_review:创建拉取请求审查。
  22. merge_pull_request:合并拉取请求。
  23. get_pull_request_files:获取拉取请求更改的文件。
  24. get_pull_request_status:获取拉取请求状态。
  25. update_pull_request_branch:更新拉取请求分支。
  26. get_pull_request_comments:获取拉取请求评论。
  27. get_pull_request_reviews:获取拉取请求审查。

常见问题解答

  • 如何创建GitHub个人访问令牌:访问Personal access tokens创建令牌,选择适当的权限(如repopublic_repo)。
  • 如何使用Docker运行:配置claude_desktop_config.json文件,使用Docker命令运行。
  • 如何使用NPX运行:配置claude_desktop_config.json文件,使用NPX命令运行。

使用教程

使用依赖

  1. 创建GitHub个人访问令牌
  2. 访问Personal access tokens
  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. 配置claude_desktop_config.json
  2. 添加以下配置以使用Docker: json { "mcpServers": { "github": { "command": "docker", "args": [ "run", "-i", "--rm", "-e", "GITHUB_PERSONAL_ACCESS_TOKEN", "mcp/github" ], "env": { "GITHUB_PERSONAL_ACCESS_TOKEN": "<YOUR_TOKEN>" } } } }
  3. 或使用NPX: json { "mcpServers": { "github": { "command": "npx", "args": [ "-y", "@modelcontextprotocol/server-github" ], "env": { "GITHUB_PERSONAL_ACCESS_TOKEN": "<YOUR_TOKEN>" } } } }

许可证

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