Ir al contenido
Desarrolladores

API abierta y servidor MCP.

Todo lo que hace la app del paciente también se puede hacer desde su propio software o desde un asistente de IA. Es una demostración con datos simulados, sin autenticación por ahora: ninguna clínica real es alcanzable y los datos se reinician.

URL base

https://adelantesalud.com

Todas las respuestas son JSON; CORS abierto. Errores siempre 4xx con { error, message } y el mensaje en español: 400 entrada inválida, 404 id desconocido, 409 cambio ya no posible u oferta vencida.

Encabezado opcional x-adelante-actor: mobile-app | mcp; se guarda en la bitácora. Cualquier otro valor se registra como api.

REST · /api/v1

MétodoRutaCuerpo / queryDevuelve
GET/api/v1/sites[{ id, name, municipality, queues: [{ id, name, isOpen }] }]
GET/api/v1/queues/{queueId}{ siteName, queueName, nowServing[], nextUp[] } (solo turnos, sin nombres)
POST/api/v1/queues/{queueId}/join{ fullName, phone, language?: "ES"|"EN" }{ visitId, ticket }
GET/api/v1/queues/{queueId}/next-available?after=ISO (default: ahora){ slotTime: ISO | null }
GET/api/v1/visits/{visitId}{ id, state, ticket, queueName, siteName, lang, scheduledAt, travelMinutes, position, etaMinutes, offer }
POST/api/v1/visits/{visitId}/en-route{ ok: true }
POST/api/v1/visits/{visitId}/arrived{ ok: true }
POST/api/v1/visits/{visitId}/cancel{ ok: true }
POST/api/v1/offers/{offerId}/accept{ ok: true }
POST/api/v1/offers/{offerId}/decline{ ok: true }

Ejemplo: entrar a una fila y consultar el turno

curl -X POST https://adelantesalud.com/api/v1/queues/QUEUE_ID/join \
  -H 'content-type: application/json' -H 'x-adelante-actor: mobile-app' \
  -d '{"fullName":"Ana Pérez","phone":"787-555-1234"}'
# → { "visitId": "…", "ticket": "A-14" }
curl https://adelantesalud.com/api/v1/visits/VISIT_ID
# → { "state": "WAITING", "ticket": "A-14", "position": 3, "etaMinutes": 25, … }

MCP

Servidor MCP por Streamable HTTP, sin estado (no requiere sesión SSE). Las mismas operaciones que la API REST; el actor en la bitácora es mcp.

https://adelantesalud.com/api/mcp

Herramientas

  • listar_clinicas

    Lista las clínicas y sus filas.

  • estado_fila

    Pizarra de una fila: atendiendo ahora y próximos (solo turnos).

  • estado_turno

    Estado, posición y tiempo estimado de un turno.

  • unirse_a_fila

    Entra a una fila con nombre y teléfono; devuelve el turno.

  • voy_en_camino

    Avisa que el paciente va en camino.

  • llegue

    Avisa que el paciente llegó.

  • cancelar_turno

    Cancela un turno.

  • proximo_disponible

    Próximo espacio libre de una fila.

  • aceptar_oferta

    Acepta un espacio recuperado que se le ofreció al paciente.

Conectar un cliente

Claude Code

claude mcp add --transport http adelante https://adelantesalud.com/api/mcp

Claude Desktop (o cualquier cliente con config JSON)

{
  "mcpServers": {
    "adelante": { "type": "http", "url": "https://adelantesalud.com/api/mcp" }
  }
}

Otros clientes

Cualquier cliente MCP: transporte Streamable HTTP, sin estado, sin autenticación. Apunte a la URL de arriba.

¿Preguntas o necesita autenticación para un piloto real? Escríbanos. hola@adelantesalud.com

Empiece hoy

Pruébela con su clínica.

60 días de prueba con garantía: si las citas recuperadas no cubren la mensualidad, le devolvemos el mes. Pida su cotización o escríbanos — contesta una persona.

Quién está detrás

Un equipo de Puerto Rico

Construyo Adelante para las clínicas de la isla, con el personal de mostrador como primer usuario.

hola@adelantesalud.com