基本能力
产品定位
GitHub MCP Server 是一个基于 Model Context Protocol (MCP) 的服务,旨在为大型语言模型(LLM)提供与 GitHub API 交互的标准接口。
核心功能
- GitHub API 集成:安全无缝地与 GitHub REST API 集成
- 全面的 GitHub 功能:完整的仓库、分支、问题、拉取请求等管理
- 原子化功能架构:模块化代码结构,便于维护
- 输入验证:使用 Zod 模式对所有操作进行健壮的验证
- 错误处理:一致的错误分类和报告
- 速率限制:内置 GitHub API 速率限制处理
- 性能优化:优化的操作和响应格式化
适用场景
- 自动化 GitHub 操作的项目管理
- 协作开发中的问题跟踪和拉取请求管理
- 仓库和分支的自动化管理
- 文件和发布的自动化管理
工具列表
仓库管理工具
get_repository
:获取特定仓库的详细信息list_repositories
:列出认证用户的仓库create_repository
:创建新的 GitHub 仓库
分支管理工具
list_branches
:列出仓库中的分支create_branch
:创建新分支delete_branch
:删除分支
问题管理工具
create_issue
:在仓库中创建新问题list_issues
:列出仓库中的问题
拉取请求管理工具
create_pull_request
:创建新的拉取请求merge_pull_request
:合并拉取请求update_pull_request
:更新现有的拉取请求list_pull_requests
:列出仓库中的拉取请求
文件管理工具
update_file
:在仓库中创建或更新文件
发布管理工具
create_release
:创建新发布
常见问题解答
- 错误处理:标准化的错误对象,包括网络错误、认证错误、验证错误、GitHub API 错误和系统错误
- 速率限制:内置速率限制保护,防止 API 速率限制耗尽
- 日志记录:所有操作和错误的结构化日志记录
使用教程
使用依赖
- Node.js (v16 或更新版本)
- GitHub 个人访问令牌(具有适当权限)
安装教程
- 克隆仓库:
bash
git clone https://github.com/cyanheads/github-mcp-server.git
cd github-mcp-server - 安装依赖:
bash
npm install - 创建
.env
文件并配置 GitHub 令牌:
GITHUB_TOKEN=your_github_personal_access_token
LOG_LEVEL=info
SERVER_NAME=github-mcp-server - 构建项目:
bash
npm run build - 启动服务器:
bash
node build/index.js
调试方式
- 使用
LOG_LEVEL=debug
环境变量启用调试日志 - 检查日志文件以获取详细的错误信息
- 使用
npm run inspector
运行 MCP 检查工具