AI 程式設計教學中文版
官方教學中文版MCP 與外部工具

MCP 與外部工具

把 GitHub MCP Server、IDE MCP 設定、toolsets、registry 和企業部署邊界串成可落地流程。

📖 本篇術語速查表
英文 / 縮寫中文一句話解釋
MCP模型上下文協議讓 Copilot 接外部系統的標準。
何時用when內建上下文不夠時才接。
安全safe外部接入守許可權和信任邊界。

不想讀完?把下面這段提示詞丟給 AI 幫你跑完——幫你判斷 Copilot 是否需要接 MCP、從哪入手。

你是 Copilot MCP 導航顧問。

【角色】
Copilot MCP 導航顧問,按最小夠用、安全優先的原則給可落地方案,每條結論都落到能照做的步驟或示例,不停留在空泛建議。

【輸入】
- 我想讓它訪問什麼外部系統:___
- 內建上下文為什麼不夠:___
- 涉及的憑據和許可權:___
- 個人還是企業:___
- 經驗水平:___

【工作流程】
1. 判斷是否真需要 MCP
2. 說明 MCP 能補什麼
3. 標出憑據和許可權邊界
4. 區分個人和企業接入
5. 給第一步

【輸出規範】
▌一、是否需要 MCP
▌二、能補什麼
▌三、憑據 / 許可權邊界
▌四、個人 vs 企業 + 第一步

【硬約束】
- 內建夠用就不接 MCP
- 憑據安全處理,許可權最小
- 外部返回視為不可信
- 不要替我臆測情況或編造不存在的功能,資訊不全先問清
- 不確定的設定或許可權一律以官方文件為準,禁止照搬過時寫法

MCP(Model Context Protocol,模型上下文協議)不是“給 Copilot 裝更多外掛”,而是把外部系統以可發現、可授權、可審計的工具形式接入 agent。真正要管住的是三件事:誰提供工具、工具能訪問什麼、結果怎麼驗證。

這組頁面按 GitHub 和 VS Code 官方文件整理 MCP 的實戰邊界:從概念、GitHub MCP Server、IDE Chat 使用,到 enterprise、toolsets 和 registry。

閱讀目標:讀完本組後,你應該能判斷一個外部系統是否應該接 MCP、應該放工作區還是個人設定、應該開放哪些 toolsets、以及上線前要留哪些審計證據。

1. 一張圖看清 MCP

flowchart TD
    User["開發者任務"] --> Chat["Copilot Chat / Agent"]
    Chat --> Client["MCP client"]
    Client --> Server["MCP server"]
    Server --> Tools["Tools"]
    Server --> Resources["Resources"]
    Server --> Prompts["Prompts"]
    Tools --> External["GitHub / 文件 / API / 資料庫 / 內部系統"]
    External --> Evidence["結果、記錄、許可權、錯誤資訊"]
    Evidence --> Chat

    style Chat fill:#dbeafe,stroke:#2563eb,stroke-width:2px
    style Server fill:#dcfce7,stroke:#16a34a,stroke-width:2px
    style External fill:#fef3c7,stroke:#d97706,stroke-width:2px

2. 本組頁面

3. 推薦接入順序

  1. 先定義上下文缺口:缺 issue、PR、文件、網頁、資料庫還是內部 API。
  2. 先接只讀工具:驗證 Copilot 能正確讀取上下文。
  3. 再開寫工具:只開放具體任務需要的最小 toolset。
  4. 再做共享設定:團隊級用 .vscode/mcp.json,個人級用 user profile。
  5. 最後做企業治理:registry、server access、toolsets、PAT/OAuth、記錄和回復。

不要為了“能力多”一次性啟用所有 server。MCP 越多,agent 可做的動作越多,排障和審計成本也越高。

4. 上線前檢查

  • Server 來源可信,publisher、映象、指令碼、網路目標都能解釋。
  • 工具清單明確,不預設啟用 all
  • 寫操作需要人工確認或有回復路徑。
  • Token 不寫進儲存庫,使用 input variables、env 或受控憑據。
  • 組織策略允許 MCP,且成員知道哪些工具被停用。
  • 記錄能定位問題來自 Copilot、MCP server 還是外部系統。
深讀:MCP 不是 prompt engineering 的替代品

Prompt engineering 解決的是“怎麼把任務說清楚”。MCP 解決的是“agent 能不能拿到外部系統的真實上下文並執行工具”。

如果沒有穩定任務目標,MCP 只會放大錯誤動作;如果沒有許可權邊界,MCP 會把一次 Chat 變成跨系統操作風險。

本組自檢

讀完整組後,回答 4 個問題:

  1. 這個 MCP server 解決哪個具體上下文缺口?
  2. 它的工具是隻讀、寫入、審批,還是高風險操作?
  3. 它應該放工作區、個人 profile,還是企業 registry?
  4. 出問題時能否從記錄、許可權、外部系統狀態中定位責任邊界?

透過標準:每個 MCP server 都有明確用途、最小許可權、驗證任務和回復路徑。

官方來源

接下來去哪

本頁目錄