Ionhour

Permite que los agentes de IA monitoreen y gestionen tu infraestructura a través del Model Context Protocol. Consulta, crea y resuelve, todo en lenguaje natural.

Documentación

@ionhour/mcp-server

Conecta asistentes de IA a tu espacio de trabajo de monitoreo de disponibilidad de Ionhour usando el Model Context Protocol.

Inicio rápido

# Option 1: Interactive login (recommended)
npx @ionhour/mcp-server login

# Option 2: Set your API key manually
export IONHOUR_API_KEY=ionh_your_key_here

# Run the MCP server
npx @ionhour/mcp-server

Configuración con asistentes de IA

Smithery

smithery badge

npx -y @smithery/cli install @ionhour/mcp-server --client claude

Claude Code

claude mcp add ionhour -- npx @ionhour/mcp-server

Claude Desktop

Añade a tu claude_desktop_config.json:

{
  "mcpServers": {
    "ionhour": {
      "command": "npx",
      "args": ["@ionhour/mcp-server"],
      "env": {
        "IONHOUR_API_KEY": "ionh_your_key_here"
      }
    }
  }
}

Cursor

Añade a tu .cursor/mcp.json:

{
  "mcpServers": {
    "ionhour": {
      "command": "npx",
      "args": ["@ionhour/mcp-server"],
      "env": {
        "IONHOUR_API_KEY": "ionh_your_key_here"
      }
    }
  }
}

VS Code (Copilot)

Añade a tu .vscode/mcp.json:

{
  "servers": {
    "ionhour": {
      "command": "npx",
      "args": ["@ionhour/mcp-server"],
      "env": {
        "IONHOUR_API_KEY": "ionh_your_key_here"
      }
    }
  }
}

Windsurf

Añade a tu ~/.codeium/windsurf/mcp_config.json:

{
  "mcpServers": {
    "ionhour": {
      "command": "npx",
      "args": ["@ionhour/mcp-server"],
      "env": {
        "IONHOUR_API_KEY": "ionh_your_key_here"
      }
    }
  }
}

Obtener una clave API

  1. Ve a tu espacio de trabajo de Ionhour Configuración > Claves API
  2. Crea una nueva clave con permiso de Lectura y Escritura o Solo Lectura
  3. Copia la clave (comienza con ionh_)

Herramientas disponibles (49)

Espacio de trabajo

  • get_workspace - Obtén detalles del espacio de trabajo
  • whoami - Obtén información de la clave API (espacio de trabajo, usuario, nivel de permiso)
  • get_workspace_summary - Resumen de proyectos, comprobaciones por estado e incidentes activos
  • get_workspace_reliability - Disponibilidad, número de incidentes y MTTR durante N días
  • list_team_members - Lista los miembros y roles del espacio de trabajo
  • send_invitation - Invita usuarios al espacio de trabajo

Proyectos

  • list_projects / create_project / update_project

Comprobaciones (Sondas HTTP salientes)

Ionhour sondea una URL que posees según un horario y alerta ante fallos.

  • create_check - Crea una comprobación saliente (acepta intervalos legibles como "cada 5 minutos" o "cada hora")
  • list_checks / list_checks_by_status / find_check_by_name
  • get_check_status - Estado detallado con resultados recientes de sondeos
  • get_check_uptime - Porcentaje de disponibilidad con segmentos diarios
  • run_check_probe - Sondea la comprobación bajo demanda
  • pause_check / resume_check
  • delete_check - Elimina permanentemente una comprobación y sus datos

register_check es un marcador obsoleto: no crea nada. Usa register_job para un monitor de latido o create_check para una sonda saliente.

Trabajos (Monitores de latido entrantes)

Tu cron/trabajador envía pings a Ionhour; Ionhour alerta si un ping llega tarde o falta.

  • register_job - Crea un trabajo y obtén su token de latido (acepta intervalos legibles)
  • list_jobs / find_job_by_name
  • get_job_status - Estado detallado con latidos recientes
  • get_job_uptime - Porcentaje de disponibilidad con segmentos diarios
  • pause_job / resume_job
  • delete_job - Elimina un trabajo y sus datos

Señales (Pings de latido)

  • send_heartbeat - Envía una señal de éxito
  • send_failure_signal - Reporta un fallo
  • list_signals - Ver historial de señales

Incidentes

  • list_incidents / search_incidents / get_incident
  • get_incident_timeline - Historial de incidentes para una comprobación o trabajo
  • create_incident / acknowledge_incident / resolve_incident
  • add_incident_note

Despliegues

  • create_deployment - Inicia una ventana de despliegue (pausa automáticamente las comprobaciones)
  • end_deployment - Finaliza el despliegue y reanuda las comprobaciones
  • list_deployments

Dependencias

  • list_dependencies / get_dependency / create_dependency
  • update_dependency_status
  • delete_dependency - Elimina una dependencia

Páginas de estado

  • list_status_pages / create_status_page / update_status_page
  • create_announcement - Publica una actualización de estado

Canales de alerta

  • list_alert_channels / create_alert_channel / update_alert_channel
  • delete_alert_channel - Elimina un canal de notificación

Reglas de escalado

  • list_escalation_rules / create_escalation_rule / update_escalation_rule
  • delete_escalation_rule - Elimina una regla de escalado

Recursos

El servidor expone datos de referencia que los asistentes de IA pueden explorar sin llamar a herramientas:

URIDescripción
ionhour://enumsTodos los enums de Ionhour (estados de comprobación, estados de incidente, severidades, etc.)
ionhour://checks/schemaEsquema de creación de comprobaciones con restricciones de campos y ciclo de vida de estados
ionhour://help/ping-formatsEjemplos de integración de latidos (curl, Node, Python, cron, CI/CD)
ionhour://tools/catalogCatálogo de todas las herramientas organizadas por dominio con descripciones
ionhour://guides/workflowsPatrones de flujo de trabajo comunes y mejores prácticas

Prompts

Plantillas de flujo de trabajo predefinidas que guían a los asistentes de IA a través de operaciones de varios pasos:

PromptArgsDescripción
diagnose_incidentincidentIdInvestigación de incidentes paso a paso
setup_monitoringserviceNameConfiguración guiada de monitoreo para nuevos servicios
deployment_checklistprojectIdFlujo de trabajo pre/durante/post-despliegue
weekly_reliability_reportdaysBack?Generar un resumen de confiabilidad
triage_all_incidents—Listar y clasificar todos los incidentes activos
status_page_incidentincidentIdComunicar un incidente a través de páginas de estado
dependency_health_audit—Auditar todas las dependencias y evaluar el impacto en la salud

Comandos CLI

npx @ionhour/mcp-server [command] [options]

Commands:
  (default)     Start the MCP server (stdio proxy mode)
  setup         Interactive wizard — install MCP server into your editors
  login         Authenticate via browser and store API key
  logout        Remove stored credentials
  whoami        Show current authentication status

Options:
  --api-key KEY     Ionhour API key (or set IONHOUR_API_KEY env var)
  --base-url URL    MCP base URL (default: https://mcp.ionhour.com)
  --version, -v     Show version
  --help, -h        Show help

Environment Variables:
  IONHOUR_API_KEY   API key for authentication
  IONHOUR_BASE_URL  Base URL override
  IONHOUR_AUTH_URL  Keycloak auth server URL (for login)
  IONHOUR_REALM     Keycloak realm name (for login)

setup

Asistente interactivo que detecta editores instalados (Cursor, Claude Desktop, VS Code, Claude Code, Windsurf) y escribe la configuración del servidor MCP de Ionhour en cada uno. Solicita inicio de sesión si no hay credenciales almacenadas:

npx @ionhour/mcp-server setup

login

Abre tu navegador para autenticarte con Ionhour, luego crea y almacena automáticamente una clave API:

npx @ionhour/mcp-server login

Las credenciales se almacenan en ~/.config/ionhour/credentials.json (permisos de archivo: 600). Después de iniciar sesión, puedes ejecutar el servidor MCP sin configurar IONHOUR_API_KEY.

logout

Elimina las credenciales almacenadas de ~/.config/ionhour/credentials.json:

npx @ionhour/mcp-server logout

whoami

Muestra el estado de autenticación actual: el espacio de trabajo, el usuario y el nivel de permiso asociados con la clave API almacenada:

npx @ionhour/mcp-server whoami

Cómo funciona

Este paquete ejecuta un servidor MCP local sobre stdio que actúa como proxy de solicitudes a la API de Ionhour. Tu asistente de IA se comunica con este servidor local, que reenvía las llamadas de herramientas a tu espacio de trabajo de Ionhour.

AI Assistant <--stdio--> @ionhour/mcp-server <--HTTPS--> Ionhour API

Documentación

Requisitos

  • Node.js >= 18
  • Una cuenta de Ionhour con una clave API

Licencia

MIT