exit1.dev

Monitoreo de disponibilidad desde tu agente de IA: crea y gestiona monitores HTTP, TCP, UDP, WebSocket e ICMP, consulta estadísticas e historial de disponibilidad, y configura alertas.

Documentación

exit1-mcp

Servidor MCP para el monitoreo de disponibilidad de Exit1. Permite que tu asistente de IA configure el monitoreo para el proyecto que acabas de lanzar: lee tu repositorio, crea las verificaciones, configura las alertas y envía una alerta de prueba real para demostrar que funciona; luego, pregúntale sobre la disponibilidad en lenguaje natural.

Dos formas de conectarse

Alojado (recomendado). Sin clave API, sin instalación de npm, sin requisito de plan para comenzar. Ejecuta esto en tu terminal antes de iniciar una sesión: el inicio de sesión abre tu navegador, inicias sesión (o te registras) con Clerk, apruebas y estás conectado.

claude mcp add --transport http exit1 https://app.exit1.dev/mcp/v1 && claude mcp login exit1

Una línea a propósito: pegar los dos comandos como líneas separadas no es confiable en algunos terminales (cmd.exe descarta la segunda línea). En Windows PowerShell antiguo (5.1), donde && no se analiza, ejecuta las dos mitades una a la vez. Conéctate antes de iniciar la sesión: los clientes MCP cargan los servidores al inicio, por lo que un servidor agregado a mitad de conversación no se puede usar hasta reiniciar. En versiones de Claude Code sin claude mcp login, inicia claude y autentícate mediante /mcp en su lugar.

Stdio local. Este paquete de npm. Utiliza una clave API pública de tu panel de control. Úsalo cuando tu cliente no admita servidores MCP remotos con OAuth.

claude mcp add exit1 -- npx -y exit1-mcp
export EXIT1_API_KEY="ek_live_your_key_here"

Ambos exponen las mismas herramientas. El servidor alojado es más fácil; el stdio no tiene paso de navegador, lo que algunas configuraciones similares a CI prefieren.

De cero a monitoreado

Conecta el servidor (arriba), luego pega esto en Claude Code, Cursor, Codex o cualquier asistente compatible con MCP, desde dentro de tu proyecto:

Set up uptime monitoring for this project with Exit1.

1. Call get_account to see my plan limits. If the Exit1 tools aren't available
   to you, don't try to connect from inside this session; tell me to add the
   HTTP MCP server https://app.exit1.dev/mcp/v1 in my tool, restart it, and
   paste this prompt again.
2. Read this repo to find what should be monitored: deployed URLs in vercel.json /
   next.config / wrangler.toml / .env.production / README, and any /health or
   /api/status route handlers.
3. Show me the checks you plan to create before creating them.
4. Configure email alerts, then send a test alert so I can confirm delivery works.

Una vez conectado, el servidor también incluye un prompt setup_monitoring que contiene el manual completo: en Claude Code, /exit1:setup_monitoring.

Requisitos

  • Alojado: una cuenta de Exit1. El registro se realiza en línea durante el flujo de OAuth.
  • Stdio local: Node.js 18+ y una clave API de tu panel de control. Cada plan puede generar una clave, incluido el gratuito.

Clientes compatibles

ClienteAlojado (OAuth)Stdio local
Claude Code✅✅
Claude Desktop✅✅
Cursor✅✅
VS Code (Copilot)✅✅
Windsurf⚠️ verificar versión✅
Codex CLI⚠️ verificar versión✅
Gemini CLI⚠️ verificar versión✅
Goose⚠️ verificar versión✅
ChatGPTmediante conectormediante puente mcp-remote

El MCP remoto con OAuth aún se está implementando en todos los clientes. Donde aún no es compatible, la ruta stdio a continuación funciona en todas partes.

Configuración de stdio local

Claude Code

claude mcp add exit1 -- npx -y exit1-mcp

export EXIT1_API_KEY="ek_live_your_key_here"
claude

Claude Desktop

Agrega a ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) o %APPDATA%\Claude\claude_desktop_config.json (Windows):

{
  "mcpServers": {
    "exit1": {
      "command": "npx",
      "args": ["-y", "exit1-mcp"],
      "env": {
        "EXIT1_API_KEY": "ek_live_your_key_here"
      }
    }
  }
}

Cursor

Agrega a .cursor/mcp.json en tu proyecto (o ~/.cursor/mcp.json globalmente). Misma forma que Claude Desktop arriba.

VS Code con Copilot

Ejecuta MCP: Agregar servidor desde la Paleta de comandos, elige Comando (stdio), ingresa npx -y exit1-mcp. VS Code usa una clave servers en lugar de mcpServers:

{
  "servers": {
    "exit1": {
      "command": "npx",
      "args": ["-y", "exit1-mcp"],
      "env": {
        "EXIT1_API_KEY": "ek_live_your_key_here"
      }
    }
  }
}

Windsurf / Gemini CLI / Goose

Mismo bloque mcpServers que Claude Desktop, en mcp_config.json (Configuración de Windsurf › MCP), ~/.gemini/settings.json, o mediante goose mcp add exit1 -- npx -y exit1-mcp. Reinicia el IDE o CLI después.

Codex CLI

codex mcp add exit1 -- npx -y exit1-mcp
export EXIT1_API_KEY="ek_live_your_key_here"
codex

ChatGPT

Conecta el servidor stdio con mcp-remote, luego agrégalo en Configuración › Conectores.

Herramientas

HerramientaAlcanceDescripción
get_accountchecks:readPlan, límites y uso actual. Llama a esto primero al configurar.
list_checkschecks:readLista verificaciones con estado actual.
get_checkchecks:readDetalle de una verificación, incluido el estado SSL.
get_check_historychecks:readResultados individuales a lo largo del tiempo.
get_check_statschecks:read% de disponibilidad y tiempos de respuesta en rangos.
get_status_pagechecks:readInstantánea de una página de estado pública.
create_checkchecks:writeCrea un monitor (sitio web, API, ping, TCP, DNS, dominio, heartbeat).
update_checkchecks:writeCambia la configuración de una verificación existente.
toggle_checkchecks:writePausa o reanuda una verificación.
delete_checkchecks:deleteElimina permanentemente una verificación.
get_alert_settingsalerts:readVe a dónde van las alertas actualmente.
set_email_alertsalerts:writeConfigura destinatarios de correo y eventos.
add_webhook_alertalerts:writeConecta Slack, Discord, Teams o un webhook genérico.
send_test_alertalerts:writeEnvía una alerta de prueba real.

El servidor alojado solicita checks:read, checks:write, alerts:read y alerts:write por defecto, no checks:delete, que debe solicitarse explícitamente. Para la ruta stdio, marca los alcances que desees al crear la clave API.

Ejemplos de prompts

  • "Configura el monitoreo para este proyecto."
  • "¿Alguno de mis monitores está caído ahora mismo?"
  • "¿Cuál es la disponibilidad de mi verificación de API en los últimos 30 días?"
  • "Muéstrame las últimas 10 fallas de producción."
  • "Agrega una verificación en staging.example.com y envía alertas a #ops en Slack."
  • "Compara los tiempos de respuesta de esta semana vs la semana pasada."

Configuración

Variable de entornoRequeridaDescripción
EXIT1_API_KEYsolo stdioTu clave API de Exit1 (ek_live_…)
EXIT1_API_URLNoAnula la URL base de la API (para desarrollo)

Gestión de conexiones

Las conexiones alojadas se listan en app.exit1.dev/mcp y se pueden revocar allí en cualquier momento. Revocar elimina inmediatamente todos los tokens emitidos para ese cliente.

Desarrollo

npm install
npm run build          # tsc -> dist/
npm test               # build, then drive a real MCP handshake over stdio
npm run check:catalog  # compare the tool catalog against the hosted server

npm test genera el servidor compilado y verifica la superficie que un cliente realmente ve: el recuento de herramientas, las anotaciones readOnlyHint / destructiveHint, el prompt setup_monitoring, y que una herramienta desconocida devuelve isError en lugar de un error de protocolo. No necesita clave API y no realiza llamadas de red.

Por qué existe check:catalog

El catálogo de herramientas está deliberadamente duplicado entre este paquete y el servidor OAuth alojado, que vive en Mopra/exit1.dev en functions/src/mcp-tools.ts. Dos compilaciones separadas, sin paquete compartido, nada en tiempo de compilación que las vincule. npm run check:catalog falla si se desvían en nombres de herramientas o esquemas de entrada, y advierte sobre diferencias de redacción. CI lo ejecuta en cada push y una vez al día.

Cambia una herramienta aquí, cámbiala allí, y ejecuta la verificación antes de publicar.

Para ejecutarlo contra un checkout local en lugar de GitHub:

CATALOG_REMOTE_PATH=../exit1.dev/functions/src/mcp-tools.ts npm run check:catalog

Publicación

npm version patch          # or minor
npm publish                # prepublishOnly runs the build + smoke test
git push --follow-tags

Aumenta version en server.json para que coincida, luego vuelve a publicar la entrada del registro (ver abajo). La cadena version en src/index.ts es lo que los clientes ven en serverInfo: mantenla en sintonía con package.json.

Registro MCP

server.json describe ambas rutas de distribución (el paquete npm y el endpoint alojado) para el registro MCP oficial. El nombre del registro es dev.exit1/exit1-mcp, lo que requiere demostrar control de exit1.dev:

mcp-publisher login dns --domain=exit1.dev --private-key=HEX_KEY
mcp-publisher publish

La propiedad de npm se demuestra mediante el campo mcpName en package.json, que debe permanecer igual a name en server.json.

Enlaces rápidos

Sitio webexit1.dev — Conoce la plataformaRepositorio
Aplicación de monitoreoapp.exit1.dev — Inicia sesión y gestiona tus verificacionesRepositorio
Documentacióndocs.exit1.dev — Guías, referencia de API e instrucciones de configuraciónRepositorio
Servidor MCPexit1-mcp — este repositorioRepositorio

También listado en el registro MCP oficial como dev.exit1/exit1-mcp.

Licencia

MIT — ver LICENCIA.

El resto de exit1 es de código fuente disponible en lugar de código abierto; este paquete es la excepción, por lo que puede ser vendido e inspeccionado libremente por los clientes MCP.