返回技能列表

troubleshoot-mcp-connection

pjt222
更新于 6 days ago
9 次查看
17
2
17
在 GitHub 上查看
测试aimcp

关于

This skill diagnoses and fixes MCP server connection issues between Claude Code/Desktop and MCP servers. It covers problems like authentication failures, transport issues, Windows argument parsing, and platform-specific debugging. Use it when MCP tools don't appear, connections fail, or you encounter "cannot attach the server" errors.

快速安装

Claude Code

推荐
主要方式
npx skills add pjt222/agent-almanac -a claude-code
插件命令备选方式
/plugin add https://github.com/pjt222/agent-almanac
Git 克隆备选方式
git clone https://github.com/pjt222/agent-almanac.git ~/.claude/skills/troubleshoot-mcp-connection

在 Claude Code 中复制并粘贴此命令以安装该技能

技能文档

排查 MCP 連線

診斷並解決 MCP 伺服器連線失敗。

適用時機

  • Claude Code 或 Claude Desktop 無法連上 MCP 伺服器
  • 會話中未出現 MCP 工具
  • 出現「Cannot attach the server」錯誤
  • 連線原本可用,今已中斷
  • 於新機器上設置 MCP

輸入

  • 必要:錯誤訊息或症狀描述
  • 必要:何客戶端(Claude Code、Claude Desktop 或兩者)
  • 必要:何 MCP 伺服器(mcptools、Hugging Face 或自製)
  • 選擇性:近期對配置或環境之變更

步驟

步驟一:辨識客戶端與配置

Claude Code(WSL):

# View MCP configuration
claude mcp list
claude mcp get server-name

# Configuration stored in
cat ~/.claude.json | python3 -m json.tool

Claude Desktop(Windows):

# Configuration file location
cat "/mnt/c/Users/$USER/AppData/Roaming/Claude/claude_desktop_config.json"

預期: 配置文件已定位且可讀取,列出 MCP 伺服器條目,含 command、args 與 env 欄位。

失敗時: 若配置文件不存在或為空,伺服器從未配置。依 configure-mcp-server 技能重新設置。

步驟二:獨立測試伺服器

R mcptools

# Test if R can start the server
"/mnt/c/Program Files/R/R-4.5.0/bin/Rscript.exe" -e "mcptools::mcp_server()"

若失敗:

  • 檢查 R 路徑:ls "/mnt/c/Program Files/R/"
  • 檢查 mcptools 已安裝:Rscript -e "library(mcptools)"
  • 檢查 ellmer 依賴:Rscript -e "library(ellmer)"

Hugging Face MCP

# Test mcp-remote directly
mcp-remote https://huggingface.co/mcp

# Check if mcp-remote is installed
which mcp-remote
npm list -g mcp-remote

預期: 伺服器進程啟動,產生初始化輸出(JSON-RPC 握手或「listening」訊息),無錯誤。

失敗時: 若 R mcptools 失敗,確認 R 版本路徑無誤且 mcptools 已安裝於 R 庫中。若 mcp-remote 失敗,以 npm install -g mcp-remote 全局重裝並驗證其位於 PATH 上。

步驟三:診斷常見錯誤模式

「Cannot attach the server」(Claude Desktop)

根本原因:Windows 命令引數解析。

修復:以環境變數取代 --header 引數:

{
  "hf-mcp-server": {
    "command": "mcp-remote",
    "args": ["https://huggingface.co/mcp"],
    "env": { "HF_TOKEN": "your_token" }
  }
}

並確保 mcp-remote 全局安裝(npm install -g mcp-remote),勿依賴 npx

「Connection refused」

  • 伺服器未運行或埠號錯誤
  • 防火牆阻擋連線
  • 傳輸類型錯誤(stdio 對 HTTP)

「Command not found」

  • 缺少可執行檔之完整路徑
  • 執行上下文中未配置 PATH
  • 於 Windows:含空格之路徑用 C:\\PROGRA~1\\...

MCP 工具未出現但無錯誤

  • 伺服器啟動但工具未註冊
  • 檢查伺服器 stdout 之初始化訊息
  • 確認伺服器使用正確之 MCP 協議版本

預期: 錯誤模式已對應至文檔分類之一(cannot attach、connection refused、command not found 或無聲失敗)。

失敗時: 若錯誤不合任何已知模式,捕捉完整錯誤輸出並查伺服器端日誌。於該 MCP 伺服器之 GitHub issues 中搜索此確切錯誤訊息。

步驟四:檢查網路與認證

# Test Hugging Face API connectivity
curl -I "https://huggingface.co/mcp"

# Verify token validity
curl -H "Authorization: Bearer $HF_TOKEN" https://huggingface.co/api/whoami

預期: HTTP 端點返回 200 狀態,whoami 呼叫返回您的 Hugging Face 用戶名,證實網路連通且認證有效。

失敗時: 若 curl 返回連線錯誤,檢查 DNS 解析與代理設定。若令牌被拒(401),於 huggingface.co/settings/tokens 重新生成令牌並更新配置。

步驟五:驗證 JSON 配置語法

# Validate JSON (common issue: trailing commas, missing quotes)
python3 -m json.tool /path/to/config.json

預期: JSON 解析無誤,證實配置文件具有效語法。

失敗時: 最常見之 JSON 問題為對象或陣列末尾條目後之拖尾逗號、字串值缺引號、大括號不匹配。修復解析器報告之語法錯誤並重新驗證。

步驟六:平台特定除錯

Windows(Claude Desktop)

  • 引數解析有別於 Unix
  • 路徑中之空格中斷命令執行
  • 用 8.3 短路徑:C:\PROGRA~1\R\R-45~1.0\bin\x64\Rscript.exe
  • 環境變數比命令列標頭更可靠

WSL(Claude Code)

  • Unix 風格之引號運作正確
  • 可用含空格之完整路徑(加引號)
  • 經 NVM 之 npm/npx:確保 NVM 於執行上下文中已載入

預期: 已辨識平台特定問題(如 Windows 引數解析、WSL 路徑解析或 NVM 上下文載入)。

失敗時: 若問題為 Windows 特有,將認證從命令列引數切換至環境變數。若為 WSL 特有,驗證 Windows 可執行檔路徑可從 WSL 經完整 /mnt/c/... 路徑存取。

步驟七:重置並重新配置

若一切無效:

# Remove and re-add the server (Claude Code)
claude mcp remove server-name
claude mcp add server-name stdio "/full/path/to/executable" -- args

# Restart Claude Desktop after config changes
# (close and reopen the application)

預期: 移除並重新加入伺服器後,claude mcp list 顯示伺服器具正確配置,且新一次連線嘗試成功。

失敗時: 若重新加入失敗,確認可執行檔路徑無誤且該命令於終端中直接運行有效。對 Claude Desktop,確保應用程式已完全關閉(查系統匣)後再重啟。

步驟八:檢查日誌

Claude Code:啟動會話時查終端輸出中之 MCP 錯誤。

Claude Desktop:查應用程式日誌(位置依 OS 而異)。

伺服器端:於 MCP 伺服器加入日誌,捕捉傳入請求與錯誤。

預期: 日誌條目揭示失敗之特定點(伺服器啟動、握手、認證或工具註冊)。

失敗時: 若無日誌可用,於伺服器命令加入 stderr 捕捉(如重定向至日誌文件)並重現失敗。對 Claude Desktop,查 %APPDATA%\Claude\logs\ 之應用層日誌。

驗證

  • 伺服器獨立啟動無錯誤
  • 配置 JSON 有效
  • 客戶端連線成功
  • 會話中出現 MCP 工具
  • 工具被呼叫時執行正確
  • 連線持續跨多次請求

常見陷阱

  • 編輯錯誤之配置文件:Claude Code(~/.claude.json)對 Claude Desktop(%APPDATA%\Claude\claude_desktop_config.json
  • 配置變更後未重啟:Claude Desktop 需重啟;Claude Code 於新會話採用變更
  • 受限環境中之 npx:npx 於運行時下載套件。若網路或權限受限,全局安裝
  • 令牌過期:Hugging Face 令牌可能過期。若認證失敗突然出現,重新生成
  • 版本不匹配:客戶端與伺服器間之 MCP 協議版本須相容

相關技能

  • configure-mcp-server — 初始 MCP 設置
  • build-custom-mcp-server — 自製伺服器除錯上下文
  • setup-wsl-dev-environment — WSL 前置設置

GitHub 仓库

pjt222/agent-almanac
路径: i18n/wenyan-lite/skills/troubleshoot-mcp-connection
0
agentsagentskillsai-assisted-developmentclaude-codeskillsteams

相关推荐技能

evaluating-llms-harness

测试

该Skill通过60+个学术基准测试(如MMLU、GSM8K等)评估大语言模型质量,适用于模型对比、学术研究及训练进度追踪。它支持HuggingFace、vLLM和API接口,被EleutherAI等行业领先机构广泛采用。开发者可通过简单命令行快速对模型进行多任务批量评估。

查看技能

cloudflare-cron-triggers

测试

这个Claude Skill提供了关于Cloudflare Cron Triggers的完整知识库,用于通过cron表达式定时执行Workers。它支持配置周期性任务、维护作业和自动化工作流,并能处理常见的cron触发错误。开发者可以用它来设置定时任务、测试cron处理器,并集成Workflows和Green Compute功能。

查看技能

webapp-testing

测试

该Skill为开发者提供了基于Playwright的本地Web应用测试工具集,支持自动化测试前端功能、调试UI行为、捕获屏幕截图和查看浏览器日志。它包含管理服务器生命周期的辅助脚本,可直接作为黑盒工具运行而无需阅读源码。适用于需要快速验证本地Web应用界面和交互功能的开发场景。

查看技能

finishing-a-development-branch

测试

这个Skill用于开发分支完成后的集成决策,当代码实现完成且测试通过时,它会引导开发者选择合适的工作流。它首先验证测试状态,然后提供合并、创建PR或清理等结构化选项。核心价值在于确保代码质量的同时,标准化分支收尾流程。

查看技能