GitHub MCP Server
2025.03.20
1
TypeScript代码管理版本控制协作开发开发效率交流协作
GitHub MCP Server 是一个针对GitHub API的中间件服务,提供文件操作、仓库管理、搜索功能等核心能力。它通过动态PAT(Personal Access Token)管理和完善的错误处理机制,简化了与GitHub的交互流程。
View on GitHub
Overview
产品定位
GitHub MCP Server 是一个专门为GitHub API设计的中间件服务,旨在简化与GitHub平台的交互流程,提供更高效的仓库管理和代码协作能力。
核心功能
- 自动化分支管理:在文件创建/更新时自动处理分支创建
- 完善的错误处理:提供清晰的错误提示信息
- Git历史保护:所有操作都遵循Git规范,避免强制推送
- 批量操作支持:支持单文件和批量文件操作
- 高级搜索功能:支持代码、Issue/PR和用户的搜索
适用场景
- 自动化代码仓库管理
- 持续集成/持续部署(CI/CD)流程集成
- 团队协作开发管理
- 代码搜索和分析
- 开源项目维护
工具列表
create_or_update_file- 创建或更新单个文件push_files- 批量推送多个文件search_repositories- 仓库搜索create_repository- 创建新仓库get_file_contents- 获取文件/目录内容create_issue- 创建Issuecreate_pull_request- 创建PRfork_repository- Fork仓库create_branch- 创建分支list_issues- 列出Issueupdate_issue- 更新Issueadd_issue_comment- 添加Issue评论search_code- 代码搜索search_issues- Issue/PR搜索search_users- 用户搜索list_commits- 获取提交记录get_issue- 获取Issue详情get_pull_request- 获取PR详情list_pull_requests- 列出PRcreate_pull_request_review- 创建PR评审merge_pull_request- 合并PRget_pull_request_files- 获取PR变更文件get_pull_request_status- 获取PR状态update_pull_request_branch- 更新PR分支get_pull_request_comments- 获取PR评论get_pull_request_reviews- 获取PR评审
使用教程
前置依赖
- 创建GitHub Personal Access Token:
- 访问 https://github.com/settings/tokens
- 选择仓库访问权限(Public/All/Select)
- 创建包含
repo或public_repo权限的Token
安装方式
Docker方式
docker build -t mcp/github -f src/github/Dockerfile .
配置示例(claude_desktop_config.json):
{
"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>"
}
}
}
}
调试方式
- 验证Token权限是否正确
- 使用基础API测试连接性,如
search_repositories - 检查错误日志获取详细错误信息