為什麼你的 MCP 設定會在 60 秒超時?

當你在 Claude Desktop、Cursor 或 VSCode 中加入超過 8 個 MCP 伺服器時,系統會開始出現連線逾時問題。這是因為 Windows 上的 MCP 客戶端預設連線超時時間設為 60 秒,而每個額外伺服器都會佔用新的連線資源,導致系統無法及時處理所有請求。

核心原因包括:

  • 預設超時設定過短,無法應對多伺服器負載
  • Windows 的連線池限制(maxConnectionsPerServer)
  • 同時發起的請求數量超過系統承載能力
  • HTTP/1.1 連線管道化(pipelining)設定不當

診斷當前 MCP 設定狀態

在修改任何設定之前,你需要先了解目前的 MCP 配置狀況。按下 Ctrl + Shift + P 開啟命令面板,輸入「MCP」並選擇「MCP Server: Show Detailed Logs」。這會顯示所有伺服器的連線狀態和錯誤資訊。

檢查以下關鍵指標:

  • 連線延遲時間(latency)
  • 每個伺服器的請求失敗率
  • 系統資源使用情況(CPU、記憶體)
  • 網路連線數量

如果看到「Connection timeout after 60000ms」或類似的錯誤訊息,就確認你遇到了本文要解決的問題。

修復 MCP 超時的具體步驟

步驟一:修改 MCP 設定檔

找到並編輯 MCP 設定檔。在 Windows 上,路徑通常是:

%APPDATA%\Claude\claude_desktop_config.json(Claude Desktop)
%APPDATA%\Cursor\User\globalStorage\saoudrizwan.claude-dev\settings.json(Cursor)

在設定檔中添加或修改 mcpServers 區塊,加入超時設定:

{
  "mcpServers": {
    "filesystem": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-filesystem", "C:\\Projects"],
      "timeout": 120,
      "maxRetries": 3
    }
  }
}

步驟二:調整 Windows 連線設定

使用 PowerShell 系統管理員執行以下命令,增加系統連線限制:

# 增加連線池大小
[System.Net.ServicePointManager]::DefaultConnectionLimit = 100

# 停用 HTTP/2(避免某些 MCP 伺服器相容性問題)
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\Http\Parameters" -Name "EnableHttp2Tls" -Value 0

# 重新整理設定
Restart-Service HttpService

步驟三:限制同時連線的伺服器數量

如果你有超過 10 個 MCP 伺服器,建議分批啟用。在設定檔中使用 enabled 欄位控制:

{
  "mcpServers": {
    "server1": { "command": "...", "enabled": true },
    "server2": { "command": "...", "enabled": true },
    "server3": { "command": "...", "enabled": false },
    "server4": { "command": "...", "enabled": false }
  }
}

優化多 MCP 伺服器效能的最佳實踐

解決超時問題後,進一步優化可以提升整體使用體驗:

  • 使用本地快取:為常見請求設定本地快取,減少網路往返次數
  • 分組管理:將功能相關的伺服器分組,按需啟用
  • 健康檢查:設定自動重連機制和健康檢查間隔
  • 監控日誌:定期檢查 MCP 日誌,及早發現問題

範例:設定健康檢查間隔為 30 秒

{
  "mcpServers": {
    "database": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-sqlite"],
      "healthCheckInterval": 30000,
      "autoReconnect": true
    }
  }
}

結語

MCP 伺服器超時問題雖然惱人,但透過正確的診斷和設定調整,完全可以解決。記住三個關鍵原則:增加超時設定、優化連線管理、必要时分批啟用伺服器。按照本文的步驟操作,你的 MCP 環境將能穩定支援 8 個以上的伺服器同時運作。