跳到正文
FunCoding

搜索

搜索文档、Skill 和 MCP

GitHub MCP 企业部署

区分 GHES 与带数据驻留的 Enterprise Cloud,配置远程端点或本地 GITHUB_HOST。

先确定使用的是 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

这些命令只展示主机选择,不构成免认证启动方式。配置后核对服务器实际连接的企业实例,再执行仓库操作。