GitHub MCP Server 安装完全指南:让 AI 助手直接管理仓库、Issue 与 PR
【免费下载链接】github-mcp-serverGitHub's official MCP Server项目地址: https://gitcode.com/GitHub_Trending/gi/github-mcp-server
你让 AI 修一个线上 bug,它却读不到仓库里的代码。GitHub MCP Server 把 AI 客户端接到 GitHub 平台。它能读仓库、管 Issue 和 PR、看 Actions 结果,全程自然语言驱动。
30 秒速览
- 它是什么:GitHub 官方 MCP 服务器,把 AI 工具接到 GitHub API。
- 适合谁:用 Copilot、Claude、Cursor、Gemini 等客户端管项目的开发者。
- 准备什么:一个 GitHub PAT;本地跑还要装好 Docker。
- 跑通能干嘛:自然语言读代码、建 PR、查构建日志、看安全告警。
它如何工作
链路很短。你的 AI 客户端说人话,MCP 协议把它翻译成工具调用。服务器再把调用转成 GitHub API 请求。结果原路返回给客户端。
工具集就是「开哪些门」的开关。开多了占上下文,开少了能力受限。先想清楚要管什么,再选路。
先选路,再动手
两条独立决策线。先定跑法,再定认证。
跑法:远程还是本地
| 维度 | 远程服务器 | 本地 Docker |
|---|---|---|
| 接入 | 直连api.githubcopilot.com/mcp/ | 拉ghcr.io/github/github-mcp-server镜像 |
| 客户端 | 需支持 Streamable HTTP | 任意支持本地 MCP 的宿主 |
| 额外能力 | 多出copilot_spaces、github_support_docs_search | 可自带 OAuth / GitHub App |
| 适用 | 少维护、用云端 | 数据不出本地、用 GHES |
认证:OAuth 还是 PAT
| 维度 | OAuth(浏览器登录) | PAT(个人访问令牌) |
|---|---|---|
| 准备 | 不建 token,首次弹浏览器 | 自建 PAT,授对应权限 |
| 存储 | 容器内 token 仅存内存 | 经GITHUB_PERSONAL_ACCESS_TOKEN注入 |
| 优先级 | 有 PAT 时 PAT 优先 | 高于 OAuth |
| 适用 | 普通 github.com 用户 | 固定凭证、CI、GHES |
远程端多数宿主只认 PAT。本地端两者皆可。下面按客户端给最短路径。
分平台实操
主流 IDE
VS Code
- 目标:Agent 模式里用自然语言调 GitHub。
- 版本:1.101或更高,支持远程 MCP 与 OAuth。
- 步骤:编辑工作区
.vscode/mcp.json,写入下面配置,改完存盘。 - 验证:切到 Copilot Chat 旁的 Agent 模式,让它「列出我的仓库」。
{ "servers": { "github": { "type": "http", "url": "https://api.githubcopilot.com/mcp/" } } }Cursor
- 目标:聊天/编辑器里调 GitHub 工具。
- 版本:v0.48.0+,才有 Streamable HTTP。
- 步骤:编辑全局
~/.cursor/mcp.json,把YOUR_GITHUB_PAT换成你的令牌。 - 验证:完全重启 Cursor,进 设置 → Tools & Integrations → MCP Tools 看绿点。
{ "mcpServers": { "github": { "url": "https://api.githubcopilot.com/mcp/", "headers": { "Authorization": "Bearer YOUR_GITHUB_PAT" } } } }Windsurf
- 目标:Cascade 里接 GitHub。
- 版本:最新版;本地跑要 Docker 运行中。
- 步骤:点锤子图标打开
~/.codeium/windsurf/mcp_config.json,用serverUrl字段。 - 验证:MCP 工具栏出现「1 available MCP server」,服务名旁有绿点。
{ "mcpServers": { "github": { "serverUrl": "https://api.githubcopilot.com/mcp/", "headers": { "Authorization": "Bearer YOUR_GITHUB_PAT" } } } }独立客户端
Claude Desktop
- 目标:桌面端接 GitHub。
- 版本:最新 Claude Desktop + Docker。
- 步骤:编辑配置文件(macOS 为
~/Library/Application Support/Claude/claude_desktop_config.json),加下面 docker 段。 - 验证:重启后,工具列表里能看到 GitHub 工具。
{ "mcpServers": { "github": { "command": "docker", "args": [ "run", "-i", "--rm", "-e", "GITHUB_PERSONAL_ACCESS_TOKEN", "ghcr.io/github/github-mcp-server" ], "env": { "GITHUB_PERSONAL_ACCESS_TOKEN": "YOUR_GITHUB_PAT" } } } }命令行
Claude Code
- 目标:终端里让 Claude Code 调 GitHub。
- 版本:2.1.1+用
add-json;更老版本用add --transport http。 - 步骤:在终端(不是 Claude Code 内)运行下面命令,改完重启 Claude Code。
- 验证:跑
claude mcp list,应列出 github。
claude mcp add-json github '{"type":"http","url":"https://api.githubcopilot.com/mcp","headers":{"Authorization":"Bearer YOUR_GITHUB_PAT"}}'Gemini CLI
- 目标:Gemini 终端接 GitHub。
- 版本:最新 Gemini CLI。
- 步骤:先在
~/.gemini/.env存GITHUB_MCP_PAT,再改~/.gemini/settings.json。 - 验证:重启 CLI,确认 MCP 服务器列表里有 github。
{ "mcpServers": { "github": { "httpUrl": "https://api.githubcopilot.com/mcp/", "headers": { "Authorization": "Bearer $GITHUB_MCP_PAT" } } } }跑通之后
工具集裁剪
默认开五个工具集:context、repos、issues、pull_requests、users。按需收,能省上下文,也帮模型选对工具。
- 本地:
--toolsets或GITHUB_TOOLSETS。 - 远程:
X-MCP-Toolsets头,或/x/{toolset}路径。 - 只开单个工具:
--tools/X-MCP-Tools。 - 只要读权限:
--read-only或/readonly。
按场景挑工具集,比按字母表翻更快。
- 日常协作:
context、repos、issues、pull_requests、gists、discussions、notifications、labels、users。 - CI 与安全:
actions、code_quality、code_security、dependabot、secret_protection、security_advisories、git。 - 组织管理:
orgs、projects、stargazers、copilot、copilot_issue_intents。
Docker 里传环境变量:
docker run -i --rm \ -e GITHUB_PERSONAL_ACCESS_TOKEN=<token> \ -e GITHUB_TOOLSETS="repos,issues,pull_requests" \ ghcr.io/github/github-mcp-serverPAT 放哪里最安全
- 存环境变量或
.env,别硬编码进配置。 - 最小权限:
repo、read:packages、read:org。 .env写进.gitignore,防止误提交。- 不同项目用不同 PAT,定期轮换。
- 含令牌的配置文件收紧权限,如
chmod 600。
日志与排查入口
- Claude Code:输入
/mcp看服务器状态。 - Claude Desktop:macOS 看
~/Library/Logs/Claude/。 - Windsurf:看
~/.codeium/windsurf/logs/。 - 查有哪些工具:
github-mcp-server tool-search "issue"。 - 配方合集:服务器配置指南。
踩坑速查
| 现象 | 原因 | 解决 |
|---|---|---|
| 连不上 / 不启动 | 宿主不支持 Streamable HTTP | 升 VS Code1.101+、Cursorv0.48.0+;否则改本地 Docker |
| 认证 401 | PAT 缺repo或已过期 | 重建 PAT,授对应权限 |
| Docker 拉取报错 | ghcr.io 旧 token 失效 | 跑docker logout ghcr.io后重拉 |
| 工具不显示 | 工具集被裁掉 / JSON 语法错 | 核对--toolsets;用 linter 校验 JSON |
| 远程 OAuth 无反应 | 容器回调端口没暴露 | 本地加-p 127.0.0.1:8085:8085与GITHUB_OAUTH_CALLBACK_PORT |
选对跑法和认证,配好工具集,把 PAT 收进环境变量。剩下的交给自然语言。深入看 安装指南索引、远程服务器文档 与 策略与治理。
【免费下载链接】github-mcp-serverGitHub's official MCP Server项目地址: https://gitcode.com/GitHub_Trending/gi/github-mcp-server
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考