GitHub MCP 企业部署
区分 GHES 与带数据驻留的 Enterprise Cloud,配置远程端点或本地 GITHUB_HOST。
This page has not been translated into English yet. The original Chinese version is shown below.
先确定使用的是 GitHub Enterprise Server,还是带数据驻留的 GitHub Enterprise Cloud。两者服务器配置支持不同。
| 企业环境 | 远程 GitHub MCP | 本地 GitHub MCP |
|---|---|---|
| Enterprise Cloud with data residency | 支持对应企业端点 | 支持 |
| Enterprise Server(GHES) | 不支持 | 必须使用本地配置 |
Enterprise Cloud 远程端点
实例为 https://octocorp.ghe.com 时,对应 MCP 地址为 https://copilot-api.octocorp.ghe.com/mcp。替换自己企业的子域,不要把普通网页地址直接当 MCP endpoint。
VS Code 的兼容格式示例为:
{
"servers": {
"github": {
"type": "http",
"url": "https://copilot-api.SUBDOMAIN.ghe.com/mcp"
}
}
}PAT 认证时,VS Code 专题通过 headers.Authorization 配置;JetBrains、Xcode、Eclipse 示例使用 requestInit.headers.Authorization,Visual Studio 可在配置对话框添加请求头。具体结构见IDE 配置。
VS Code OAuth 的官方差异
企业 MCP 专题还将 github-enterprise.uri 写成 https://copilot-api.SUBDOMAIN.ghe.com/mcp;普通 GHE.com 登录指南则将企业 URI 设置为 https://SUBDOMAIN.ghe.com。两者地址用途不同,当前说明存在不一致。
这里不把其中一个推导为已确认的统一 OAuth 配置。MCP 的 url 使用上面的 MCP 端点;企业账号设置仍需对照登录指南与当前 VS Code 的认证提示核实。若使用 PAT,也必须先确认企业允许 PAT。
本地服务器的企业主机
本地 GitHub MCP 使用 GITHUB_HOST 或 --gh-host 指定目标。GHES 地址应带 https://;官方说明省略时默认 http://,而 GHES 不支持这种方式。Enterprise Cloud 使用 https://YOURSUBDOMAIN.ghe.com。
以下是 VS Code 兼容配置的 GHES Docker 示例。需要 Docker 可运行,令牌输入变量仅用于支持该机制的客户端会话:
{
"inputs": [
{
"type": "promptString",
"id": "github_token",
"description": "GitHub PAT",
"password": true
}
],
"servers": {
"github": {
"command": "docker",
"args": [
"run", "-i", "--rm",
"-e", "GITHUB_PERSONAL_ACCESS_TOKEN",
"-e", "GITHUB_HOST",
"ghcr.io/github/github-mcp-server"
],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "${input:github_token}",
"GITHUB_HOST": "https://YOUR_GHES_HOSTNAME"
}
}
}
}将主机占位符替换为实际主机名,保留一次 https://。Enterprise Cloud 本地部署只需采用对应的 GHE.com 主机。VS Code Agent Host 不转发依赖交互 input 的兼容配置,见 VS Code MCP。
Visual Studio 的企业 Docker 示例额外包裹 mcp 顶层,但通用 Visual Studio MCP 示例直接使用 servers;不要不加区分地混合。应在当前客户端配置界面生成结构,再设置已核实的主机和进程参数。
自行构建的可执行文件
已按服务器仓库构建并准备好认证后,可以选择环境变量或启动参数指定主机:
export GITHUB_HOST="https://YOUR_GHES_OR_GHEC_HOSTNAME"
./github-mcp-server stdio./github-mcp-server --gh-host \
"https://YOUR_GHES_OR_GHEC_HOSTNAME" stdio这些命令只展示主机选择,不构成免认证启动方式。配置后核对服务器实际连接的企业实例,再执行仓库操作。