---
title: "用 MCP 擴充套件 Chat"
description: "在 IDE 中配置 MCP server，讓 Copilot Agent mode 讀取外部工具、資源和預設 prompts。"
verifiedAt: "2026-05-06"
---

用 MCP 擴充套件 Chat 的價值是少複製貼上外部系統狀態，讓 Copilot 直接透過工具讀取真實上下文。

> [!IMPORTANT]
> 上線方式要保守：**先只讀，再寫入；先個人驗證，再團隊共享**。一次接入太多 server 不僅排障難，還會讓 agent 在選工具時繞路。

## 1. 配置放在哪裡

GitHub 和 VS Code 官方文件都把 VS Code 的 MCP 配置分成兩層：

- **工作區配置**：儲存庫根目錄 `.vscode/mcp.json`，適合團隊共享，應該走 PR 審查。
- **使用者配置**：VS Code user profile，適合個人工具，不應該寫進儲存庫。

官方示例裡，工作區配置可以放在 `.vscode/mcp.json`：

```json
{
  "servers": {
    "fetch": {
      "command": "uvx",
      "args": ["mcp-server-fetch"]
    }
  }
}
```

VS Code 也支援遠端 MCP server：

```json
{
  "servers": {
    "github": {
      "type": "http",
      "url": "https://api.githubcopilot.com/mcp"
    }
  }
}
```

不要把 API key、PAT、內部 token 直接硬編碼進這個檔案。VS Code 官方建議用 input variables 或 environment files 處理敏感資訊。

## 2. 使用流程

```mermaid
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 個點：

1. 儲存 `.vscode/mcp.json` 或使用者配置。
2. 從檔案頂部 code lens 或命令啟動 server。
3. 用 `MCP: List Servers` 確認 server 狀態。
4. 開啟 Copilot Chat，切到 Agent mode。
5. 點選工具圖示，確認 server tools 已出現。
6. 用一個只讀任務驗證結果。

## 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. 排障路徑

常見問題按順序查：

1. Server 是否啟動：`MCP: List Servers`。
2. Copilot Chat 是否在 Agent mode。
3. 工具列表裡是否啟用了對應 server tools。
4. 認證是否成功，OAuth/PAT scopes 是否足夠。
5. 組織或企業策略是否停用了 MCP。
6. Server output log 是否有啟動或呼叫錯誤。
7. 外部系統本身是否返回 403、404、rate limit 或 network error。

<details>
<summary>深讀：工作區 MCP 配置為什麼要 code review</summary>

`.vscode/mcp.json` 會隨儲存庫進入開發者環境。它可能啟動本地命令、連線外部 URL、請求 token、暴露工具給 agent。

因此它和 CI 配置、devcontainer、GitHub Actions 一樣，都屬於會影響執行環境的工程資產。
</details>

## 本章自檢

1. 這個配置應該是個人級還是工作區級？
2. Server 是否可信，啟動命令是否可解釋？
3. 是否避免硬編碼 token？
4. 是否用只讀任務驗證 tools、resources 或 prompts？
5. 是否知道如何停用 server 和檢視日誌？

透過標準：Copilot 能呼叫 MCP 工具完成一個可驗證任務，且配置沒有洩露敏感資訊。

## 官方來源

- [Extending GitHub Copilot Chat with MCP servers](https://docs.github.com/en/copilot/how-tos/provide-context/use-mcp-in-your-ide/extend-copilot-chat-with-mcp) —— GitHub 官方 IDE Chat MCP 配置和使用。
- [Add and manage MCP servers in VS Code](https://code.visualstudio.com/docs/copilot/customization/mcp-servers) —— VS Code 官方 server 安裝、信任、啟停和敏感資訊處理。
- [MCP configuration reference](https://code.visualstudio.com/docs/copilot/reference/mcp-configuration) —— VS Code 官方 `mcp.json` 配置參考。

## 接下來去哪

<Cards>
  <Card title="GitHub MCP Server" description="用 GitHub 官方 server 連線儲存庫協作上下文。" href="/zh-Hant/docs/github-copilot/official/07-mcp/github-mcp-server" />
  <Card title="企業 MCP 配置" description="把個人配置升級到企業治理邊界。" href="/zh-Hant/docs/github-copilot/official/07-mcp/enterprise-mcp" />
</Cards>
