CLAUDE_DESKTOP_FIX.md•3.27 kB
# ✅ Solución Definitiva - Claude Desktop + Node.js
## 🔍 El Problema Real
Claude Desktop estaba usando **Node.js v12.22.7** automáticamente (del PATH), que causaba:
1. ❌ Crash por falta de memoria (Out of Memory)
2. ❌ JSON parsing errors
3. ❌ Server disconnects
## ✅ La Solución
**Especificar la ruta completa a Node.js v22** en la configuración de Claude Desktop.
### Archivo Actualizado
`~/Library/Application Support/Claude/claude_desktop_config.json`
```json
{
"mcpServers": {
"superprecio": {
"command": "/Users/diegopacheco/.nvm/versions/node/v22.20.0/bin/node",
"args": ["/Users/diegopacheco/Development/superprecio_mcp/build/index.js"],
"env": {
"SUPERPRECIO_API_URL": "http://localhost:3000"
}
}
}
}
```
### Cambio Clave
**Antes:**
```json
"command": "node" // ❌ Usa el primer node del PATH (v12)
```
**Después:**
```json
"command": "/Users/diegopacheco/.nvm/versions/node/v22.20.0/bin/node" // ✅ Usa v22 explícitamente
```
## 🔄 Aplicar la Solución
### 1. La configuración ya está actualizada
El archivo ya fue modificado con la ruta correcta.
### 2. Reiniciar Claude Desktop
```bash
# Cmd+Q (cierre completo)
# Abrir Claude Desktop de nuevo
```
### 3. Verificar en Claude
Pregunta en Claude:
```
¿Qué herramientas MCP tienes disponibles?
```
Deberías ver las 6 herramientas de Superprecio sin errores.
## 📊 Verificación de Versiones
```bash
# Tu versión actual de Node (correcta)
$ node --version
v22.20.0
# La que Claude Desktop estaba usando (incorrecta)
$ /Users/diegopacheco/.nvm/versions/node/v12.22.7/bin/node --version
v12.22.7
```
## 💡 Por Qué Pasó Esto
1. **nvm** tiene múltiples versiones de Node instaladas
2. Claude Desktop usa su propio PATH
3. Por defecto encuentra `/Users/diegopacheco/.nvm/versions/node/v12.22.7/bin/node` primero
4. Node v12 es muy viejo (2019) y tiene limitaciones de memoria
## 🎯 Ventajas de esta Solución
✅ **Funciona inmediatamente** - Sin necesidad de cambiar código
✅ **Estable** - Node v22 es moderno y robusto
✅ **Compatible** - Soporta todas las features de JavaScript modernas
✅ **Sin regresiones** - El código funciona perfectamente con v22
## 🧪 Tests Exitosos
```bash
$ npm test
✅ All tests passed!
🚀 The MCP server is ready to use!
```
El servidor funciona perfectamente cuando se ejecuta con Node.js v22.
## 📝 Otros Servidores MCP
Si tienes otros servidores MCP con problemas similares, usa la misma solución:
```json
{
"mcpServers": {
"mi-servidor": {
"command": "/Users/diegopacheco/.nvm/versions/node/v22.20.0/bin/node",
"args": ["/path/to/server.js"]
}
}
}
```
## 🔍 Debug Mode
Si necesitas debug en el futuro, agrega:
```json
"env": {
"SUPERPRECIO_API_URL": "http://localhost:3000",
"DEBUG": "true"
}
```
Pero para uso normal, no es necesario.
## 📚 Referencias
- Node.js v12: EOL (End of Life) desde Abril 2022
- Node.js v22: LTS actual, soporte hasta Octubre 2027
- [Node.js Release Schedule](https://nodejs.org/en/about/previous-releases)
---
**Estado**: ✅ Solucionado
**Causa**: Claude Desktop usando Node.js v12
**Solución**: Especificar Node.js v22 en configuración
**Próximo paso**: Reiniciar Claude Desktop