com um clique
mcp-doctor
Check health of configured MCP servers
Instalar com Codex ou Claude Copie este prompt, cole no Codex, Claude ou outro assistente e deixe que ele revise a página da skill e instale para você.
Menu
Check health of configured MCP servers
Instalar com Codex ou Claude Copie este prompt, cole no Codex, Claude ou outro assistente e deixe que ele revise a página da skill e instale para você.
Baseado na classificação ocupacional SOC
Definitive reference for how Claude Code works — disambiguates skills vs hooks vs subagents vs MCPs vs slash commands vs memory vs settings. Use when asked "how does Claude Code X work", "what's the difference between X and Y", "where should this live", "build me a [skill|hook|agent|mcp|slash command]", "configure Claude Code", or when picking the right surface for a new capability.
Scribe — the project-documentation skill. Generate or maintain a project's Claude-facing documentation (CLAUDE.md, .claude/docs/*, project-context.md, README) from verified facts. Use when the user says "document this project", "write the docs for X", "the docs are stale", "fill in the .claude docs", or "/scribe". Detects existing doc state and routes between from-scratch and update. Verify-before-assert is the core discipline — confirmed facts go to committed docs, inferred/uncertain ones go to a separate hazards artifact, never silently into the repo.
Speak content aloud via Kokoro neural TTS (local, offline). Use when the user says "read it for me", "read it to me", "play it in audio", "say it", "speak it", "read that aloud", "/say-it", or asks to hear something spoken instead of reading it.
Install a local neural voice interface for Claude Code on macOS Apple Silicon. Wires mlx-whisper (STT) + Kokoro TTS (offline neural voices) into voice-claude and vtranscribe CLI scripts. Two voice contexts — personal (af_heart) and tech (af_bella). Multi-session safe — concurrent sessions speak in turn (global lock) and announce their name. No cloud APIs, no API keys.
Collect the user's daily work activity from Slack, Jira, Confluence, GitHub, and Google Drive with source links
Collect a team member's daily work activity from Slack, Jira, Confluence, and GitHub
| name | mcp-doctor |
| description | Check health of configured MCP servers |
| user_invocable | true |
You are performing a health check on all configured MCP servers.
This skill has two modes:
/hello and for routine verification.--deep) — process-level connectivity tests for diagnosing missing or broken servers.Use this when invoked by /hello or standalone without --deep.
Read .mcp.json to get the list of configured local servers and their names.
Enumerate session tools: Identify all mcp__<server>__<tool> tool names visible in the current session. Group them by server prefix (the part between mcp__ and __<tool>).
Cross-reference with .mcp.json: For each server configured in .mcp.json, check whether any tools with its prefix appear in the session.
Identify claude.ai integrations: Group all mcp__claude_ai_<Name>__* tools as a separate "Claude.ai Integrations" section — these are not in .mcp.json.
authenticate and complete_authentication tools → label as auth-only (OAuth flow required before full tools are available)Report a unified status table:
MCP Health — Session
─────────────────────────────────────────
Local Servers (.mcp.json)
Server Status Tools
cognee HEALTHY 23 tools
playwright HEALTHY 12 tools
other-server ABSENT —
Claude.ai Integrations
Integration Status
Slack connected (14 tools)
Gmail auth-only (OAuth required)
If any .mcp.json server is ABSENT, offer: "Run /mcp-doctor --deep to diagnose why <server> failed to connect."
Return the health status so calling skills (e.g., /hello) can use it.
--deep)Use this when a server is missing or broken and you need to diagnose why.
Read MCP configuration: Read .mcp.json from the project root to discover all configured MCP servers, their transport type, and their setup details.
Classify each server: For each entry in .mcp.json, determine the transport:
command and args fields (e.g., cognee with a Python binary, playwright with npx)url fieldHealth-check each server via its native transport: Do NOT call MCP tools (they require the server to already be loaded in the Claude Code session). Instead, test connectivity directly:
For stdio servers using Python (command points to a Python binary):
command fieldmcp.ClientSession, StdioServerParameters, and stdio_client from the MCP Python SDKcommand, args, and env from .mcp.jsoninitialize(), then list_tools(), print the tool count and tool namesFor stdio servers using npx/node (e.g., playwright):
For HTTP/SSE servers (url is set):
Key principle: This skill describes what to do. You generate the actual test scripts on the fly based on what you find in .mcp.json. Do not use pre-baked scripts.
Report results: Present a status table covering ALL configured servers:
MCP Health Report — Deep
─────────────────────────
Server Status Transport Tools
cognee healthy stdio 23 tools
playwright healthy stdio 12 tools
other-server unhealthy http (connection refused)
If a server is healthy, show the tool count. If unhealthy, show the error summary.
If any server is unhealthy, troubleshoot based on the actual config found in .mcp.json:
For local clone setups (command points to a Python path):
commandserver.py exists at the path shown in argsLLM_API_KEY in the env block has an actual value (not a shell variable reference like ${LLM_API_KEY})/setup-cognee to reinstallFor Docker setups (command is docker):
docker info)docker images for the image name from args)--network flag is in args, verify that Docker network exists (docker network ls)DB_HOST in the env/argshost.docker.internal while Linux may need the bridge network IPFor HTTP/SSE setups (url is set):
For npx-based servers (e.g., playwright):
npx is available and the package can be resolvedGeneral checks (all setups):
LLM_API_KEY is present and looks like a real key (not empty, not a placeholder) — for servers that need it/setup-cognee, /setup-playwright-mcp)Do not hardcode any paths — derive everything from what's actually in .mcp.json.
Return the health status so calling skills can use it.