企業 MCP 設定
說明 GHEC data residency、GHES、本地 server、toolsets、registry 和組織策略的 MCP 治理邊界。
📖 本篇術語速查表
| 英文 / 縮寫 | 中文 | 一句話解釋 |
|---|---|---|
| Enterprise MCP | 企業級 MCP | 組織統一管理的 MCP 接入。 |
| 集中治理 | governance | 統一審批可用的 server。 |
| 審計 | audit | 記錄外部呼叫便於追溯。 |
不想讀完?把下面這段提示詞丟給 AI 幫你跑完——幫你規劃企業級 MCP 的集中治理和安全接入。
你是 企業 MCP 治理顧問。
【角色】
企業 MCP 治理顧問,按最小夠用、安全優先的原則給可落地方案,每條結論都落到能照做的步驟或示例,不停留在空泛建議。
【輸入】
- 組織想接入的 MCP 場景:___
- 合規和審計要求:___
- 誰能批准新 server:___
- 敏感系統範圍:___
- 經驗水平:___
【工作流程】
1. 梳理企業 MCP 的治理結構
2. 設定 server 審批流程
3. 限定許可權和資料邊界
4. 說明審計怎麼做
5. 給落地步驟
【輸出規範】
▌一、治理結構
▌二、審批流程
▌三、許可權 / 資料邊界
▌四、審計 + 落地
【硬約束】
- 新 server 走審批,不自由接入
- 敏感系統嚴格控許可權
- 外部呼叫可審計追溯
- 不要替我臆測情況或編造不存在的功能,資訊不全先問清
- 不確定的設定或許可權一律以官方文件為準,禁止照搬過時寫法
- 給的每條結論都要落到具體可照做的步驟或示例,不停留在「建議」「考慮一下」這類沒法直接執行的空泛表述企業 MCP 設定不是“給所有人接所有工具”,而是把 server 來源、認證方式、toolsets、registry 和組織策略收攏到可審計邊界裡。
一句話決策:GitHub Enterprise Cloud(GHEC)+ data residency 可以用遠端或本地 GitHub MCP server;GitHub Enterprise Server(GHES)只能用本地 server。這一條決定了你後面所有設定路徑,先確認它。
1. 企業部署分流
GitHub 官方 Enterprise 設定頁給出的邊界:
- GitHub Enterprise Cloud with data residency:支援遠端和本地 MCP server。
- GitHub Enterprise Server:不支援遠端 MCP server hosting,必須使用本地 MCP server 設定。
flowchart TD
Env["企業 GitHub 環境"] --> GHEC{"GHEC data residency?"}
GHEC -->|是| Remote["遠端 MCP server"]
GHEC -->|是| Local["本地 MCP server"]
GHEC -->|否| GHES{"GHES?"}
GHES -->|是| LocalOnly["僅本地 MCP server"]
GHES -->|否| Public["github.com remote server"]
Remote --> URL["copilot-api.<subdomain>.ghe.com/mcp"]
Local --> Docker["Docker / source + GITHUB_HOST"]
LocalOnly --> Docker
style Remote fill:#dbeafe,stroke:#2563eb,stroke-width:2px
style LocalOnly fill:#fef3c7,stroke:#d97706,stroke-width:2px
style Docker fill:#dcfce7,stroke:#16a34a,stroke-width:2px
2. GHEC data residency 的遠端 URL
對於 GitHub Enterprise Cloud with data residency,遠端 MCP server URL 要指向企業例項對應的 Copilot API 域名。
官方示例邏輯:
https://copilot-api.YOURSUBDOMAIN.ghe.com/mcp例如企業例項是 https://octocorp.ghe.com,MCP server URL 就是:
https://copilot-api.octocorp.ghe.com/mcp如果用 PAT,需要把 token 放在受控設定裡,不要提交到儲存庫。
3. GHES 和本地 server
GHES 必須走本地 GitHub MCP server。官方說明本地 server 可以透過 Docker 或原始碼執行,並透過 GITHUB_HOST 環境變數或 --gh-host 引數指向企業 GitHub 主機。
本地 Docker 設定的關鍵點:
- 使用
ghcr.io/github/github-mcp-server。 - 設定
GITHUB_PERSONAL_ACCESS_TOKEN。 - 設定
GITHUB_HOST。 - 用 input variable 或環境變數提供 token。
- 在不同 IDE 中設定位置不同,但原則一致。
不要把 GITHUB_PERSONAL_ACCESS_TOKEN 直接寫進可提交檔案。
4. Toolsets 的企業策略
GitHub MCP Server 預設啟用:
reposissuespull_requests
可以按任務啟用:
actionscode_securitysecret_protectionstargazerscopilotgithub_support_docs_search
其中 copilot 和 github_support_docs_search 是 remote-only toolsets。企業裡不建議用 all 作為預設值,除非有明確審計和審批。
建議按角色分層:
- 普通開發者:repo、issue、PR 只讀為主。
- 維護者:增加 PR 寫操作和 issue 更新。
- DevOps:增加 Actions。
- Security:增加 code security 和 secret protection。
- AI 平臺管理員:單獨管理 remote-only Copilot 工具。
5. MCP registry
MCP registry 用來簡化發現和設定 MCP servers。GitHub 官方說明,Copilot 預設使用 GitHub MCP Registry,也可以設定自定義 MCP registry。
目前 registry 可用性有預覽邊界:官方頁面把 JetBrains、Xcode、Eclipse 的 registry 設定標為 public preview 或 pre-release 相關要求。企業落地時不要把 preview 當成穩定基礎設施。
治理建議:
- 內部 registry 只收錄已審查 server。
- 每個 server 有 owner、版本、用途和風險等級。
- 高風險 server 不預設推薦安裝。
- registry URL 變更要走變更記錄。
6. 上線審查清單
上線前逐項確認:
- 企業環境型別:github.com、GHEC data residency 還是 GHES。
- Server 模式:remote、本地 Docker,還是原始碼執行。
- 認證方式:OAuth、PAT、input variable、環境變數。
- 組織策略:MCP servers in Copilot 是否啟用。
- Toolsets:是否只開放目前角色需要的工具。
- Registry:是否來自 GitHub 官方或內部可信 registry。
- 記錄:IDE、server、GitHub audit log 是否能追蹤問題。
- 回復:如何停用 server、撤銷 token、移除 registry。
深讀:企業 MCP 的關鍵不是設定成功
設定成功只說明工具能跑。企業真正要解決的是許可權漂移、工具來源、token 生命週期、審計記錄、preview 能力變化和跨 IDE 差異。
先把最小工具鏈跑通,再擴充套件 toolsets 和 registry,比一次性鋪滿更穩。
本章自檢
- 目前企業環境是否支援遠端 MCP server?
- GHES 是否誤用了遠端 server 設定?
- PAT 是否被寫進可提交檔案?
- 預設 toolsets 是否過寬?
- Registry 是否可審查、可撤回、可追蹤?
透過標準:不同團隊成員看到的 MCP server、toolsets 和許可權邊界可解釋,且管理員能停用和追蹤。
官方來源
- Configuring the GitHub MCP Server for GitHub Enterprise —— GitHub 官方 GHEC/GHES 設定邊界。
- Configuring toolsets for the GitHub MCP Server —— GitHub 官方 toolsets 說明。
- Changing your MCP registry in your IDE —— GitHub 官方 registry 設定說明。
- Managing MCP usage —— GitHub 官方 MCP 策略入口說明。