Cómo depurar un servidor MCP con mcptools
Cuándo usarlo: Tu MCP funciona en Claude Desktop a veces pero falla silenciosamente — necesitas ver el tráfico de protocolo bruto.
Requisitos previos
- mcptools instalado — brew install f/mcptools/mcp o go install github.com/f/mcptools/cmd/mcp@latest
Flujo
-
Listar herramientas en tu servidorEjecuta
mcp tools --transport stdio -- node ./my-server.js. Comprueba los nombres de las herramientas y esquemas.✓ Copiado→ Lista limpia; si está vacía, el servidor no anunció correctamente las herramientas -
Llamar una herramienta específica con argumentos brutosEjecuta
mcp call my_tool --params '{"x":1}' -- node ./my-server.jse inspecciona la respuesta JSON.✓ Copiado→ La salida de la herramienta coincide con el esquema esperado -
Iniciar un shell interactivoEjecuta
mcp shell -- node ./my-server.jsy llama herramientas manualmente.✓ Copiado→ REPL con autocompletado de tabulador sobre tus herramientas
Resultado: Ves exactamente lo que Claude ve — los errores que solo se reproducen en Claude se hacen visibles aquí.
Errores comunes
- El servidor escribe logs en stdout, corrompiendo el flujo JSON-RPC — Enruta todos los logs a stderr. mcptools lo expone — la pista son errores de análisis JSON corrupto
- El esquema de la herramienta usa palabras clave de JSON Schema no soportadas — Mantente en draft-07 principal; algunos clientes rechazan
$ref,allOf, etc.