官方教程中文版MCP 與外部工具
用 MCP 擴充套件 Chat
在 IDE 中配置 MCP server,讓 Copilot Agent mode 讀取外部工具、資源和預設 prompts。
用 MCP 擴充套件 Chat 的價值是少複製貼上外部系統狀態,讓 Copilot 直接透過工具讀取真實上下文。
上線方式要保守:先只讀,再寫入;先個人驗證,再團隊共享。一次接入太多 server 不僅排障難,還會讓 agent 在選工具時繞路。
1. 配置放在哪裡
GitHub 和 VS Code 官方文件都把 VS Code 的 MCP 配置分成兩層:
- 工作區配置:儲存庫根目錄
.vscode/mcp.json,適合團隊共享,應該走 PR 審查。 - 使用者配置:VS Code user profile,適合個人工具,不應該寫進儲存庫。
官方示例裡,工作區配置可以放在 .vscode/mcp.json:
{
"servers": {
"fetch": {
"command": "uvx",
"args": ["mcp-server-fetch"]
}
}
}VS Code 也支援遠端 MCP server:
{
"servers": {
"github": {
"type": "http",
"url": "https://api.githubcopilot.com/mcp"
}
}
}不要把 API key、PAT、內部 token 直接硬編碼進這個檔案。VS Code 官方建議用 input variables 或 environment files 處理敏感資訊。
2. 使用流程
flowchart TD
Config["寫入 mcp.json 或安裝 server"] --> Trust["確認信任 server"]
Trust --> Start["Start / MCP: List Servers"]
Start --> Discover["發現 tools / prompts / resources"]
Discover --> Agent["Copilot Chat 選擇 Agent mode"]
Agent --> Tools["開啟工具列表並選擇 MCP tools"]
Tools --> Prompt["提出具體任務"]
Prompt --> Verify["用外部系統結果驗證"]
style Trust fill:#fef3c7,stroke:#d97706,stroke-width:2px
style Verify fill:#dcfce7,stroke:#16a34a,stroke-width:2px
實際操作時看 6 個點:
- 儲存
.vscode/mcp.json或使用者配置。 - 從檔案頂部 code lens 或命令啟動 server。
- 用
MCP: List Servers確認 server 狀態。 - 開啟 Copilot Chat,切到 Agent mode。
- 點選工具圖示,確認 server tools 已出現。
- 用一個只讀任務驗證結果。
3. Tools、resources、prompts 怎麼用
MCP server 可以提供三類能力:
- Tools:agent 可以呼叫的動作,例如 fetch URL、列 issue、建立 PR。
- Resources:server 提供的資料,可以透過 Chat 的 Add Context 加進上下文。
- Prompts:server 預設的互動入口,可用
/mcp.servername.promptname呼叫。
這三類不要混用:
- 想讓 Copilot 執行動作,用 tools。
- 想給 Copilot 讀材料,用 resources。
- 想複用 server 內建任務,用 prompts。
4. 團隊共享配置的邊界
工作區 .vscode/mcp.json 適合共享,但它不是普通文件。提交前檢查:
- Server command 是否會執行本機程式碼。
- args 是否包含下載、安裝、網路訪問。
- url 是否指向可信域名。
- 輸入變數是否隱藏敏感值。
- 是否有最小 toolsets。
- 是否需要組織策略先允許 MCP。
VS Code 官方也提醒:本地 MCP server 可以在機器上執行任意程式碼,只從可信來源新增 server,並在啟動前審查 publisher 和配置。
5. 排障路徑
常見問題按順序查:
- Server 是否啟動:
MCP: List Servers。 - Copilot Chat 是否在 Agent mode。
- 工具列表裡是否啟用了對應 server tools。
- 認證是否成功,OAuth/PAT scopes 是否足夠。
- 組織或企業策略是否停用了 MCP。
- Server output log 是否有啟動或呼叫錯誤。
- 外部系統本身是否返回 403、404、rate limit 或 network error。
深讀:工作區 MCP 配置為什麼要 code review
.vscode/mcp.json 會隨儲存庫進入開發者環境。它可能啟動本地命令、連線外部 URL、請求 token、暴露工具給 agent。
因此它和 CI 配置、devcontainer、GitHub Actions 一樣,都屬於會影響執行環境的工程資產。
本章自檢
- 這個配置應該是個人級還是工作區級?
- Server 是否可信,啟動命令是否可解釋?
- 是否避免硬編碼 token?
- 是否用只讀任務驗證 tools、resources 或 prompts?
- 是否知道如何停用 server 和檢視日誌?
透過標準:Copilot 能呼叫 MCP 工具完成一個可驗證任務,且配置沒有洩露敏感資訊。
官方來源
- Extending GitHub Copilot Chat with MCP servers —— GitHub 官方 IDE Chat MCP 配置和使用。
- Add and manage MCP servers in VS Code —— VS Code 官方 server 安裝、信任、啟停和敏感資訊處理。
- MCP configuration reference —— VS Code 官方
mcp.json配置參考。