MCP 配置參考

本文提供 MCP 伺服器配置檔案格式、相關命令以及 VS Code 中設定的參考。如需新增和管理 MCP 伺服器的資訊,請參閱新增和管理 MCP 伺服器

配置檔案

MCP 伺服器配置儲存在 mcp.json JSON 檔案中。此檔案可以位於您的工作區 (.vscode/mcp.json) 或您的使用者設定檔中。VS Code 為配置檔案提供 IntelliSense。

配置結構

配置檔案有兩個主要區塊

  • "servers": {}:一個將伺服器名稱對應到其配置的物件。每個鍵是伺服器名稱,而值是伺服器配置物件。根據伺服器類型,需要不同的欄位。

  • "inputs": []:一個選用陣列,用於定義敏感資訊 (例如 API 金鑰) 的輸入變數。

您可以在伺服器配置中使用預定義變數,例如參考工作區資料夾 (${workspaceFolder})。

標準 I/O (stdio) 伺服器

對於透過標準輸入和輸出串流通訊的伺服器,請使用此配置。這是本機執行 MCP 伺服器最常見的類型。

欄位 必填 說明 範例
類型 伺服器連線類型 "stdio"
命令 啟動伺服器執行檔的命令。必須在您的系統路徑中可用,或包含其完整路徑。 "npx""node""python""docker"
引數 傳遞給命令的引數陣列 ["server.py", "--port", "3000"]
環境變數 伺服器的環境變數 {"API_KEY": "${input:api-key}"}
環境檔案 用於載入更多變數的環境檔案路徑 "${workspaceFolder}/.env"
sandboxEnabled 在沙箱環境中執行伺服器。僅支援 macOS 和 Linux。 true
沙箱 沙箱伺服器的檔案系統和網路存取規則。僅在 sandboxEnabledtrue 時適用。請參閱沙箱配置 {"filesystem": {...}, "network": {...}}
注意

將 Docker 與 stdio 伺服器搭配使用時,請勿使用分離選項 (-d)。伺服器必須在前台執行才能與 VS Code 通訊。

本機伺服器配置範例

此範例顯示使用 npx 的基本本機 MCP 伺服器的最小配置。

{
  "servers": {
    "memory": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-memory"]
    }
  }
}

沙箱配置

您可以為本機執行的 stdio MCP 伺服器啟用沙箱,以限制其對檔案系統和網路的存取。沙箱伺服器只能存取您明確允許的檔案系統路徑和網路網域。沙箱功能僅適用於 macOS 和 Linux。

若要啟用伺服器的沙箱,請在其配置中設定 "sandboxEnabled": true。然後,使用 sandbox 物件來定義檔案系統和網路存取規則。當沙箱伺服器需要目前規則不允許的存取權限時,請檢查伺服器輸出中的錯誤訊息並相應地更新 sandbox 配置。

注意

啟用沙箱時,工具確認會自動核准,因為伺服器在受控環境中執行。

sandbox 物件支援以下屬性

屬性 類型 說明
filesystem.allowWrite string[] 伺服器被允許寫入的檔案路徑。
filesystem.denyRead string[] 伺服器不允許讀取的檔案路徑。
filesystem.denyWrite string[] 伺服器不允許寫入的檔案路徑。
network.allowedDomains string[] 伺服器被允許存取的網域。支援萬用字元,例如 *.example.com
network.deniedDomains string[] 伺服器不允許存取的網域。

您可以在檔案系統路徑值中使用預定義變數,例如 ${workspaceFolder}

沙箱配置範例

此範例啟用沙箱並授予工作區寫入權限,拒絕 .ssh 目錄的讀取權限,並允許網路存取特定網域。

{
  "servers": {
    "myServer": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "@example/mcp-server"],
      "sandboxEnabled": true,
      "sandbox": {
        "filesystem": {
          "allowWrite": ["${workspaceFolder}"],
          "denyRead": ["${userHome}/.ssh"]
        },
        "network": {
          "allowedDomains": ["api.example.com", "*.cdn.example.com"]
        }
      }
    }
  }
}

HTTP 和伺服器傳送事件 (SSE) 伺服器

對於透過 HTTP 通訊的伺服器,請使用此配置。VS Code 會首先嘗試 HTTP 串流傳輸,如果 HTTP 不支援,則會退回至 SSE。

欄位 必填 說明 範例
類型 伺服器連線類型 "http""sse"
網址 伺服器的 URL "https://:3000""https://api.example.com/mcp"
標頭 用於驗證或配置的 HTTP 標頭 {"Authorization": "Bearer ${input:api-token}"}

除了透過網路可用的伺服器外,VS Code 還可以連接到在 Unix socket 或 Windows 具名管道上監聽 HTTP 流量的 MCP 伺服器,方法是指定 socket 或管道路徑,格式為 unix:///path/to/server.sock 或 Windows 上的 pipe:///pipe/named-pipe。您可以透過使用 URL 片段來指定子路徑,例如 unix:///tmp/server.sock#/mcp/subpath

遠端伺服器配置範例

此範例顯示沒有驗證的遠端 MCP 伺服器的最小配置。

{
  "servers": {
    "context7": {
      "type": "http",
      "url": "https://mcp.context7.com/mcp"
    }
  }
}

敏感資料的輸入變數

輸入變數可讓您為配置值定義預留位置,避免將 API 金鑰或密碼等敏感資訊直接硬編碼到伺服器配置中。

當您使用 ${input:variable-id} 參考輸入變數時,VS Code 會在伺服器首次啟動時提示您輸入值。然後該值會安全地儲存以供後續使用。在 VS Code 中了解更多關於輸入變數的資訊。

輸入變數屬性

欄位 必填 說明 範例
類型 輸入提示類型 "promptString"
id 在伺服器配置中參考的唯一識別碼 "api-key""database-url"
description 使用者友善的提示文字 "GitHub 個人存取權杖"
密碼 隱藏輸入的內容 (預設:false) API 金鑰和密碼為 true
帶有輸入變數的伺服器配置範例

此範例配置一個需要 API 金鑰的本機伺服器。

{
  "inputs": [
    {
      "type": "promptString",
      "id": "perplexity-key",
      "description": "Perplexity API Key",
      "password": true
    }
  ],
  "servers": {
    "perplexity": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "server-perplexity-ask"],
      "env": {
        "PERPLEXITY_API_KEY": "${input:perplexity-key}"
      }
    }
  }
}

開發模式

您可以透過在伺服器配置中新增 dev 鍵來為 MCP 伺服器啟用開發模式。這是一個具有兩個屬性的物件。

  • watch:一個檔案 glob 模式,用於監控檔案變更以重新啟動 MCP 伺服器。
  • debug:讓您可以為 MCP 伺服器設定偵錯工具。目前,VS Code 支援偵錯 Node.js 和 Python MCP 伺服器。

在 MCP 開發指南中了解更多關於 MCP 開發模式的資訊。

伺服器命名慣例

定義 MCP 伺服器時,請遵循以下伺服器命名慣例:

  • 伺服器名稱使用 camelCase (駝峰式命名法),例如 "uiTesting" 或 "githubIntegration"
  • 避免使用空白字元或特殊字元。
  • 為每個伺服器使用唯一的名稱以避免衝突。
  • 使用能反映伺服器功能或品牌的描述性名稱,例如 "github" 或 "database"。

命令

下表列出命令選擇區中可用的 MCP 相關命令 (⇧⌘P (Windows、Linux Ctrl+Shift+P))。

指令 說明
MCP:新增伺服器 將新的 MCP 伺服器新增至您的工作區或使用者設定檔。
MCP:瀏覽 MCP 伺服器 在「延伸模組」檢視中開啟 MCP 伺服器庫。
MCP:瀏覽資源 瀏覽 MCP 伺服器提供的資源。
MCP:從 Manifest 安裝伺服器 從 MCP manifest 檔案安裝 MCP 伺服器。
MCP:列出伺服器 列出所有已配置的 MCP 伺服器並執行諸如啟動、停止、重新啟動或顯示輸出等操作。
MCP:開啟遠端使用者配置 開啟遠端環境的 mcp.json 檔案。
MCP:開啟使用者配置 開啟您使用者設定檔中的 mcp.json 檔案。
MCP:開啟工作區資料夾 MCP 配置 開啟您的工作區中的 .vscode/mcp.json 檔案。
MCP:重設快取工具 清除 MCP 伺服器的快取工具清單。當伺服器的工具發生變更時使用此功能。
MCP:重設信任 重設 MCP 伺服器的信任決定,下次啟動時需要重新確認。
MCP:顯示已安裝伺服器 顯示所有已安裝 MCP 伺服器的清單。

設定

如需 VS Code AI 設定的完整清單,請參閱AI 設定參考。以下設定專屬於 MCP 伺服器。

設定 說明
chat.mcp.access 在 VS Code 中開啟 在 VS Code Insiders 中開啟 此設定由組織層級管理。請聯絡您的管理員以進行變更。 管理可以在 VS Code 中使用的 MCP 伺服器。
chat.mcp.discovery.enabled 在 VS Code 中開啟 在 VS Code Insiders 中開啟 配置從其他應用程式自動探索 MCP 伺服器配置。
chat.mcp.autostart 在 VS Code 中開啟 在 VS Code Insiders 中開啟 (實驗性) 偵測到配置變更時自動啟動 MCP 伺服器。
chat.mcp.serverSampling 在 VS Code 中開啟 在 VS Code Insiders 中開啟 配置哪些模型會暴露給 MCP 伺服器進行取樣 (在背景中發出請求)。
chat.mcp.apps.enabled 在 VS Code 中開啟 在 VS Code Insiders 中開啟 (實驗性) 啟用或停用 MCP 應用程式,這些應用程式是由 MCP 伺服器提供的豐富使用者介面。
© . This site is unofficial and not affiliated with Microsoft.