基本能力
产品定位
GitHub Enterprise MCP Server 是一个中间件服务,旨在为开发者提供便捷的 GitHub Enterprise API 访问接口,特别适用于集成到开发工具链中。
核心功能
- 获取 GitHub Enterprise 实例中的仓库列表
- 获取详细的仓库信息
- 列出仓库分支
- 查看文件和目录内容
- 管理问题和拉取请求
- 仓库管理(创建、更新、删除)
- GitHub Actions 工作流管理
- 用户管理(列表、创建、更新、删除、暂停/恢复用户)
- 访问企业统计信息
- 增强的错误处理和用户友好的响应格式化
适用场景
- 在开发工具中集成 GitHub 功能
- 自动化 GitHub 仓库管理
- 批量处理 GitHub 问题或拉取请求
- 监控 GitHub 仓库状态
- 企业级 GitHub 用户管理
工具列表
| 工具名称 | 描述 |
|---------|------|
| list-repositories | 检索用户或组织的仓库列表 |
| get-repository | 获取详细的仓库信息 |
| list-branches | 列出仓库的分支 |
| get-content | 检索文件或目录内容 |
| list-pull-requests | 列出仓库中的拉取请求 |
| get-pull-request | 获取拉取请求详情 |
| create-pull-request | 创建新的拉取请求 |
| merge-pull-request | 合并拉取请求 |
| list-issues | 列出仓库中的问题 |
| get-issue | 获取问题详情 |
| create-issue | 创建新问题 |
| create-repository | 创建新仓库 |
| update-repository | 更新仓库设置 |
| delete-repository | 删除仓库 |
| list-workflows | 列出 GitHub Actions 工作流 |
| list-workflow-runs | 列出工作流运行 |
| trigger-workflow | 触发工作流 |
| get-license-info | 获取 GitHub Enterprise 许可证信息 |
| get-enterprise-stats | 获取 GitHub Enterprise 系统统计信息 |
常见问题解答
- 兼容性问题:部分企业特定功能(如许可证信息和企业统计信息)不适用于 GitHub.com 或 GitHub Enterprise Cloud。
- 权限要求:企业特定工具需要具有站点管理员权限的用户。
- 令牌类型:建议使用经典个人访问令牌,因为细粒度令牌可能不支持这些企业级权限。
使用教程
使用依赖
- Node.js 18 或更高版本
- 访问 GitHub Enterprise 实例
- 个人访问令牌 (PAT)
安装教程
Docker 安装
- 构建 Docker 镜像:
bash
docker build -t github-enterprise-mcp . - 运行 Docker 容器:
bash
docker run -p 3000:3000 \
-e GITHUB_TOKEN="your_github_token" \
-e GITHUB_ENTERPRISE_URL="https://github.your-company.com/api/v3" \
-e DEBUG=true \
github-enterprise-mcp
本地开发安装
- 克隆仓库并安装依赖:
bash
git clone https://github.com/ddukbg/github-enterprise-mcp.git
cd github-enterprise-mcp
npm install - 运行开发服务器:
bash
export GITHUB_TOKEN="your_github_token"
export GITHUB_ENTERPRISE_URL="https://github.your-company.com/api/v3"
npm run dev
生产环境安装
- 构建项目:
bash
npm run build
chmod +x dist/index.js - 运行服务器:
bash
export GITHUB_TOKEN="your_github_token"
export GITHUB_ENTERPRISE_URL="https://github.your-company.com/api/v3"
node dist/index.js --transport http --debug
调试方式
- 检查日志:
bash
docker-compose logs -f - 使用调试标志运行:
bash
node dist/index.js --transport http --debug - 检查 Cursor 的 MCP 配置:
json
{
"mcpServers": {
"github-enterprise": {
"url": "http://localhost:3000/sse"
}
}
}