
MCP 伺服器治理:從引進到退役
保留 MCP 伺服器庫存、在使用前批准伺服器、審查每個工具、將更改的定義視為新決策並徹底退役伺服器。
決策摘要
MCP伺服器治理將每台伺服器視為可在公司係統上運作的軟體。為每台伺服器的擁有者保留一份清單,根據明確的標準批准伺服器,審查每個工具而不是單獨的伺服器,將更改的工具定義視為新決策,包含在筆記型電腦上運行的伺服器,並透過撤銷憑證及其配置來淘汰伺服器。註冊表列表或透過掃描會告知這些決定;它不會讓他們。
MCP 伺服器治理涵蓋哪些內容
MCP 伺服器是執行此工作的智能體設定的一部分。它提供了一些工具,例如建立問題或查詢資料庫,並使用任何憑證運行它們並存取它所擁有的權限。一些伺服器遠端運行並透過 HTTP 存取;其他是在個人筆記型電腦上啟動的本機進程。
MCP 伺服器治理決定您的團隊可以使用哪些伺服器,並保持該決定最新。它遵循一個生命週期:尋找存在的內容,根據標準批准伺服器,檢查其工具,觀察更改並在不再需要時淘汰它們。每個階段都需要一個所有者和一個記錄。
它位於存取治理旁邊,治理決定誰可以使用經批准的伺服器以及使用哪些資料。伺服器治理通常會先出現,因為管理對您尚未決定信任的伺服器的存取沒有什麼意義。 OWASP 的 MCP Top 10 目前是測試版項目,其風險包括供應鏈攻擊、工具中毒和影子 MCP 伺服器。
建立一個可以保持最新的庫存
MCP 伺服器通常在任何人批准之前就已投入使用; MCP 專案的指南告訴管理員假設他們不會先被詢問。首先列出已經存在的內容:透過網關或 AI 用戶端的管理設定連接的遠端伺服器,以及 Claude Code 和 Cursor 等工具的設定檔中的本機伺服器。
客戶端設定檔位於已知位置,因此端點管理工具可以連續收集它們。設備清單顯示配置的內容,這與連接或使用的內容不同。將其視為對話的起點而不是證據。
記錄足夠多的有關每台伺服器的信息,以便以後快速做出決策。
| 欄位 | 為什麼這很重要 |
|---|---|
| 擁有者 | 有人批准更改並回答問題 |
| 出版商和來源 | 顯示您信任的人以及更新的來源 |
| 版本或端點 | 讓您注意到更改並回應安全建議 |
| 它運行在哪裡 | 本機伺服器需要端點控制;遠端可以使用網關 |
| 憑證和範圍 | 顯示伺服器可以用某人的權限做什麼 |
| 啟用的工具 | 顯示智能體實際上可以要求它做什麼 |
| 用戶和團隊 | 顯示誰受到變更或退休的影響 |
| 下次審核日期 | 預設阻止核准永久生效 |
根據明確的標準批准伺服器
一套簡短的、已發布的標準使核准更快、更一致。 MCP 專案為組織提供的指南提出了一份經過審查的伺服器授權名單,其中包含固定版本,以及可識別的發布者、可讀來源、出處元資料和軟體資料清單等標準。
註冊表有助於發現,而不是核准。官方 MCP 註冊表(仍處於預覽狀態)會驗證發布者是否控制命名空間,並將安全掃描留給打包註冊表和下游目錄。用該項目自己的話來說,在註冊表中列出並不是一種認可。這些問題涵蓋了大多數核准決策:
- 誰發布了伺服器,您能閱讀其原始程式碼嗎?
- 它需要在本地運行,還是有遠端版本?
- 它如何進行身份驗證?它將使用誰的憑證?
- 它要求哪些範圍,它們是最窄的工作範圍嗎?
- 它提供哪些工具,其中哪些工具可以更改資料或聯絡人員?
- 它會讀取哪些數據,結果會去哪裡?
- 更新是如何發布的?您將如何得知漏洞?
對於共享系統更喜歡遠端伺服器
僅封裝 SaaS API 的伺服器在每台筆記型電腦上運行時不會獲得任何好處。 MCP 指南建議使用遠端版本:它不在使用者的電腦上運行任何程式碼,使用協議的授權流程而不是本機檔案中的令牌,並且在一處進行修補。
還可以透過受控路徑存取遠端伺服器,其中存取規則和記錄適用於每個請求。保留本機伺服器用於真正需要機器的工作,例如讀取工作樹或驅動本機工具。
檢查每個工具,而不僅僅是伺服器
批准伺服器並不等於批准它可以執行的所有操作。專案管理伺服器可能提供讀取問題、編輯問題、刪除問題和變更權限的工具。啟用工作流程所需的工具並保留其餘的。
閱讀工具定義和文件。工具名稱和描述是模型讀取的指令,惡意伺服器可以在其中隱藏指令。 Invariant Labs 在 2025 年 4 月演示攻擊時稱此工具中毒。 MCP 規範規定,用戶端必須將工具註釋(例如工具僅讀取資料的提示)視為不可信,除非伺服器可信。
工具清單也可能因呼叫者而異。目前規格允許伺服器根據請求提供的授權傳回不同的工具,因此請檢查每個角色實際可以看到的工具。
將變化視為新的決定
伺服器可以在您批准後更改其工具定義,有時稱為地毯拉動。該協定不要求客戶端在定義變更時再次詢問,因此保護必須來自您的客戶端、網關或進程。
固定您批准的內容。對於本機包,固定版本;使用 npx 或 uvx 等啟動器僅修復頂級包,而由摘要固定的容器映像則修復整個依賴關係樹。對於工具,記錄已審查的定義並保留更改的定義,直到有人審查它們。
你身邊的改變也很重要。新的範圍、新的團隊或新的環境(例如生產)是重新審視核准的時刻,而不是默默地擴展它。
包含本地運行的伺服器
本機伺服器是一個具有使用者權限的普通進程。它可以讀取用戶可以讀取的檔案和環境變量,並連接網路上的任何地方。 MCP 計畫將進程隔離稱為單一最高槓桿緩解措施。
設定預設姿勢而不是留給每個人:在容器中運行第三方伺服器,不安裝超出其需要的任何內容,只為每個伺服器提供其自己的狹窄範圍的憑證,限製檔案系統存取並限制出站連線。提供一鍵安裝的客戶端必須在運行之前顯示確切的命令。
記錄每個核准
存在於聊天線程中的核准以後很難查看。簡短的記錄使決定變得明確,並為下一個審閱者提供了可供檢查的東西。下面的例子是說明性的。
保留庫存條目的記錄,並在伺服器、其工具或其憑證變更時進行更新。
| 欄位 | 範例 |
|---|---|
| 伺服器 | 問題追蹤器、供應商託管的遠端伺服器 |
| 擁有者 | 平台工程負責人 |
| 批准用於 | 工程團隊,生產工作區 |
| 啟用的工具 | 搜尋問題、閱讀問題、建立問題 |
| 維持關閉 | 刪除問題,更改項目權限 |
| 憑證 | 每個人自己的 OAuth 授權,僅限於問題範圍 |
| 條件 | 在第一個月內審核問題創建 |
| 下次審查 | 三個月內,或如果工具或範圍變更則更早 |
徹底退役伺服器
退役伺服器不僅僅意味著刪除配置條目。刪除所有使用它的人的存取權限,撤銷它持有的憑證,並盡可能刪除本機設定。 MCP 指南建議在移除伺服器時旋轉伺服器所持有的任何內容。
保留歷史。伺服器所做的事情的記錄在伺服器消失後仍然對調查有用,並且重新出現在清單中的退役伺服器應被視為新請求。
Durin 的適用位置
Durin 將遠端 MCP 伺服器置於一條受控路徑下。成員可以從目錄中請求連線,或提議一個具有其位址和用途的自訂伺服器,管理員會批准或拒絕該請求。 核准本身不會啟動任何內容:提供者設定、工具審查、只讀測試和啟動仍然如此。
每個工具在使用之前都會經過審查,包括是否讀取或更改資料以及可能接觸哪些資源。未經審查的工具將被阻止。如果伺服器更改了工具的定義,則更改後的工具需要重新審核,並且早期的核准將被撤銷。管理員可以將連線範圍限定為團隊,或停用安裝,同時保留其配置和歷史記錄。
對於 Durin 以外的伺服器,影子 MCP 發現會收集註冊設備上配置的 MCP 伺服器的報告。報告是觀察結果,而不是當前連線的證據,並且審核狀態不會阻止訪問。若要管理發現的伺服器,請透過連線新增它,並將客戶端指向 Durin。