
GitHub MCP Server

2025.04.05
0
GoGitHub 集成开发工具团队协作开发效率交流协作
GitHub MCP Server 是一个基于 Model Context Protocol (MCP) 的服务器,提供全面的 GitHub CLI 集成功能。它实现了 GitHub CLI 的所有主要功能,允许 AI 助手与 GitHub 仓库、问题、拉取请求、文件等进行交互。该服务器具有高效、安全、多平台支持等特点,适用于开发者和团队协作场景。
View on GitHub
Overview
基本能力
产品定位
GitHub MCP Server 是一个为 AI 助手提供 GitHub 操作能力的中间件,通过 MCP 协议实现与 GitHub 的无缝集成。
核心功能
- 全功能 GitHub CLI 实现:完整实现了 GitHub CLI 的核心功能
- 安全机制:仅在 GitHub 个人访问令牌的权限范围内执行操作
- 高效性能:使用 Go 编写,具有高性能和低资源消耗
- 独立二进制:无需运行时依赖
- 多平台支持:支持 macOS、Linux 和 Windows
适用场景
- 开发者通过 AI 助手管理 GitHub 仓库
- 团队协作自动化处理问题和拉取请求
- 代码搜索和文件操作自动化
- GitHub Actions 工作流管理
工具列表
仓库管理
get_repository
: 获取仓库详情list_repositories
: 列出用户仓库create_repository
: 创建新仓库
问题管理
get_issue
: 获取问题详情list_issues
: 列出仓库问题create_issue
: 创建新问题close_issue
: 关闭现有问题
拉取请求管理
get_pull_request
: 获取拉取请求详情list_pull_requests
: 列出仓库拉取请求create_pull_request
: 创建新拉取请求merge_pull_request
: 合并现有拉取请求
GitHub Actions
list_workflows
: 列出仓库工作流list_workflow_runs
: 列出工作流运行trigger_workflow
: 触发工作流
文件操作
get_file_content
: 获取文件内容create_file
: 创建新文件update_file
: 更新现有文件delete_file
: 删除文件
搜索操作
search_code
: 在仓库中搜索代码search_issues
: 搜索问题和拉取请求
常见问题解答
- 安全性:服务器仅在令牌权限范围内操作,不存储令牌
- 权限控制:建议创建仅包含必要权限的令牌
- 运行环境:建议在本地运行而非远程服务器
使用教程
使用依赖
需要安装 Go 环境(如果从源码构建)
安装教程
下载二进制文件
从 Releases 页面下载预构建的二进制文件
从源码构建
# 克隆仓库
git clone https://github.com/your-username/github-mcp-server-go.git
cd github-mcp-server-go
# 构建二进制文件
go build -o github-mcp-server
# 将二进制文件移动到 PATH 目录(可选)
sudo mv github-mcp-server /usr/local/bin/
调试方式
获取 GitHub 个人访问令牌
- 访问 GitHub Settings > Developer settings > Personal access tokens
- 创建具有
repo
范围(完整仓库访问)或public_repo
(仅公共仓库访问)的新令牌 - 复制生成的令牌供 MCP 服务器使用
运行服务器
# 使用命令行参数提供令牌
./github-mcp-server -token YOUR_GITHUB_TOKEN
# 或使用环境变量提供令牌
export GITHUB_PERSONAL_ACCESS_TOKEN=YOUR_GITHUB_TOKEN
./github-mcp-server
与 Claude Desktop 集成
- 编辑 Claude Desktop 配置文件
- 添加 GitHub MCP Server 配置
- 重启 Claude Desktop 应用更改