使用说明
GitHub MCP服务器
用于GitHub API操作的模型上下文协议服务器,提供全面的存储库管理和GitHub工作流自动化。
🚀 特性
第一阶段:基础 ✅ 完成
- ✅ 库管理:创建、更新、删除、分叉、获取、列出和传输存储库
- ✅ 类型安全操作:通过Zod验证完全支持TypeScript
- ✅ 错误处理:全面的GitHub API错误映射
- ✅ 许可证管理:多种身份验证方法
第二阶段:核心工具 ✅ 完成
- ✅ 问题管理:创建、更新、关闭、分配、标记、评论、搜索和列出问题
- ✅ 拉取请求管理:创建、更新、合并、审核、批准、请求更改、列出PR
- ✅ 分行管理:创建、删除、获取、列出和管理分支保护
- ✅ 发布管理:创建、更新、删除、发布和管理版本
计划的功能
- 🔄 行动整合:触发工作流,获取运行状态
- 🔄 高级搜索:跨仓库、问题、PR、代码搜索
- 🔄 存储库分析:健康检查、见解、指标
📦 安装
# Clone the repository
git clone <repository-url>
cd github-mcp-server
# Install dependencies
npm install
# Build the project
npm run build
🔧 配置
认证
使用以下方法之一设置您的GitHub令牌:
-
环境变量 (推荐):
export GITHUB_TOKEN="your_github_token_here" -
命令行:
npm start -- --token "your_github_token_here" -
刀具参数:在工具调用中直接传递令牌
工具配置
创建一个 tools-config.json 文件以启用特定工具:
{
"enabledTools": [
"gh_manage_repos"
]
}
🎯 用法
发展
# Run in development mode
npm run dev
# Run tests
npm test
# Lint code
npm run lint
生产
# Build and start
npm run build
npm start
🛠 可用工具
gh_manage_repos (第一阶段)✅
通过以下操作进行全面的存储库管理:
create:创建新存储库get:获取存储库信息update:更新存储库设置delete:删除存储库fork:分叉存储库list:列出经过身份验证的用户的存储库transfer:转移存储库所有权
gh_管理_问题 (第二阶段)✅
通过以下操作进行全面的问题管理:
create:创建新问题get:获取问题信息update:更新问题属性close:关闭问题assign:将用户分配给问题label:管理问题标签comment:向问题添加评论list:使用筛选器列出存储库问题search:全球搜索问题
gh_manage_pulls (第二阶段)✅
通过以下操作进行全面的拉取请求管理:
create:创建新的pull请求get:获取拉取请求信息update:更新拉取请求属性merge:合并拉取请求review:查看带有注释的拉取请求approve:批准拉取请求request_changes:请求更改PRlist:列出存储库拉取请求close:关闭拉取请求
gh_管理_牧场 (第二阶段)✅
全面的分行管理,包括以下操作:
create:创建新分支get:获取分行信息delete:删除分支list:列出存储库分支protect:设置分支保护规则get_protection:获取分支保护设置update_protection:更新保护规则
gh_管理_租赁 (第二阶段)✅
全面的发布管理,包括以下操作:
create:创建新版本get:获取发布信息update:更新版本属性delete:删除发布publish:发布发布草稿get_latest:获取最新版本list:列出存储库版本
示例用法
{
"operation": "create",
"name": "my-new-repo",
"description": "A new repository",
"private": false,
"auto_init": true
}
{
"operation": "get",
"owner": "username",
"repo": "repository-name"
}
🏗 建筑
遵循postgres mcp中经过验证的模式:
- 整合工具:按域分组的操作(repos、issues、PR)
- 类型安全:带运行时验证的Zod模式
- 错误处理:一致的GitHub API错误映射
- 可扩展设计:易于添加新的操作和工具
📋 发展路线图
第一阶段:基础 ✅
- [x] 存储库管理工具
- [x] GitHub API客户端包装器
- [x] 身份验证处理
- [x] 错误处理和验证
第二阶段:核心工具 ✅ 完成
- [x] 问题管理工具
- [x] Pull请求管理工具
- [x] 分行管理工具
- [x] 发布管理工具
第三阶段:高级功能
- []GitHub Actions集成
- []高级搜索功能
- []存储库分析
第四阶段:专业工具
- []批量操作
- []迁移工具
- []监测和见解
🤝 贡献
- 遵循postgres mcp的既定模式
- 为新功能添加全面的测试
- 更新新工具的文档
- 确保整个过程的类型安全
📄 许可证
MIT许可证
