mcp-ssh-sre

Un servidor MCP que proporciona herramientas de monitoreo de solo lectura para asistentes de IA. Ejecuta comandos de diagnóstico predefinidos a través de SSH y pasa solo los resultados al LLM: tus credenciales del servidor y el shell nunca se exponen.

Documentación

MCP SSH SRE

Un servidor MCP que proporciona herramientas de monitoreo de servidores de solo lectura para asistentes de IA. Ejecuta comandos de diagnóstico predefinidos a través de SSH y pasa solo los resultados al LLM: tus credenciales de servidor y shell nunca se exponen.

Inicio rápido (Docker)

Imágenes preconstruidas disponibles en GitHub Container Registry.

docker run -d \
  -p 3000:3000 \
  -e SSH_HOST=server.local \
  -e SSH_USERNAME=mcp-readonly \
  -e SSH_KEY_PATH=/keys/id_ed25519 \
  -v ~/.ssh/id_ed25519_mcp:/keys/id_ed25519:ro \
  ghcr.io/jeprecated/mcp-ssh-sre:latest

Luego agrégalo a tu cliente MCP:

{
  "mcpServers": {
    "ssh-sre": {
      "url": "http://your-server:3000/mcp"
    }
  }
}

Consulta DEPLOYMENT.md para Docker Compose, instalación local, configuración de autenticación y configuración de seguridad.

¿Por qué usar esto?

Administrar un servidor Linux implica conectarse por SSH, ejecutar comandos, correlacionar registros e interpretar métricas. Este servidor MCP permite que los asistentes de IA hagan ese trabajo usando lenguaje natural.

Haz preguntas como:

  • "¿Por qué se está bloqueando mi contenedor de Plex?"
  • "¿Está sano mi array y hay algún disco que muestre signos de fallo?"
  • "¿Qué contenedores están consumiendo más recursos?"
  • "Ayúdame a depurar la conectividad de red entre mis contenedores de nginx y de base de datos"

En lugar de ejecutar manualmente docker logs, smartctl, docker inspect y correlacionar las salidas, tu asistente de IA lo hace en segundos.

Plataformas compatibles

PlataformaEstadoHerramientas
UnraidSoporte completo12 módulos (10 principales + 2 específicos de Unraid)
Linux genéricoSoporte completo10 módulos principales
TrueNASNo probado (PRs bienvenidos)Las herramientas principales deberían funcionar
ProxmoxNo probado (PRs bienvenidos)Las herramientas principales deberían funcionar

El servidor detecta automáticamente tu plataforma al inicio y carga las herramientas adecuadas.

Características

  • 12 módulos de herramientas con más de 79 acciones para una gestión integral del servidor
  • Transporte dual - Stdio (local) o HTTP/SSE (accesible por red)
  • Solo lectura por diseño - Cero riesgo de modificaciones accidentales
  • Gestión de Docker - Registros, estadísticas, entorno, puertos, topología de red
  • Almacenamiento y array - Comprobaciones de paridad, datos SMART, temperaturas, registros de mover (Unraid)
  • Diagnósticos de salud - Estado agregado con detección automática de problemas
  • Monitoreo del sistema - Procesos, E/S de disco, conexiones de red
  • Análisis de registros - Búsqueda en contenedores y registros del sistema
  • Gestión de VM - Listar, inspeccionar, detalles de VNC, registros de libvirt
  • Auditoría de seguridad - Escaneo de puertos, monitoreo de inicios de sesión, auditorías de permisos

¿Por qué SSH en lugar de APIs de plataforma?

CaracterísticaAPIsSSH
Registros de contenedores Docker❌✅
Datos de salud del disco SMART❌✅
Promedios de CPU/carga en tiempo real❌✅
Monitoreo de ancho de banda de red❌✅
Monitoreo de procesos (ps/top)❌✅
Análisis de archivos de registro❌✅

SSH proporciona acceso sin restricciones a las herramientas del sistema sin límites de tasa de API.

Arquitectura

src/
├── platforms/
│   ├── linux/        # Generic Linux (baseline)
│   └── unraid/       # Unraid-specific tools
├── tools/core/       # 10 core tool modules
├── index.ts          # Stdio transport
└── http-server.ts    # HTTP transport

Agregar nuevas plataformas

  1. Crea src/platforms/<platform>/index.ts implementando Platform
  2. Agrega lógica de detección
  3. Crea módulos de herramientas específicos de la plataforma
  4. Regístralo en src/platforms/index.ts

Desarrollo

npm run dev      # Development with auto-reload
npm test         # Run tests
npm run build    # Build for production

Licencia

ISC

Soporte

Para problemas y preguntas, abre un issue en el repositorio de GitHub.