Capabilities Registry

Total capabilities

136

Con MCP tool

80

59%

Sin MCP tool

56

API endpoints

102

Cron jobs

18

CapabilityMCP Tool
availability.get-slotscoordinalo/availability

Consultar horarios disponibles para un proveedor o servicio

availability_get_slots
availability.get-provider-schedulecoordinalo/availability

Obtener horario semanal configurado de un proveedor

availability_get_provider_schedule
availability.set-provider-schedulecoordinalo/availability

Reemplazar horario semanal de un proveedor

admin_set_availability
booking.create-sessioncoordinalo/booking

Crear nueva sesión/cita

booking_create
booking.get-sessioncoordinalo/booking

Obtener detalle completo de una sesión

booking_get
booking.list-sessionscoordinalo/booking

Listar sesiones con filtros y paginación

booking_list
booking.cancel-sessioncoordinalo/booking

Cancelar sesión existente

booking_cancel
booking.reschedule-sessioncoordinalo/booking

Reagendar sesión a nueva fecha/hora

MCP tool hace cancel+create atómico. UI usa edit page.

Rationale:Reagendar como operación atómica (cancel+create en una transacción) evita estados inconsistentes donde la sesión original queda cancelada pero la nueva no se crea.

booking_reschedule
booking.update-statuscoordinalo/booking

Avanzar sesión en ciclo de vida (confirmar, iniciar, completar, entregar, no-show)

UI tiene endpoints separados por acción. MCP unifica en un solo tool con param action.

booking_update_status
booking.create-recurringcoordinalo/booking

Crear sesiones recurrentes

booking_create_recurring
booking.deliver-sessioncoordinalo/booking

Marcar sesión como entregada con prueba de entrega

Cubierto por booking_update_status action=deliver con deliveryType param. Crea DeliveryProof.

Rationale:No se creó un tool separado porque booking_update_status unifica todo el ciclo de vida en un solo punto de entrada — reduce superficie de la API del agente.

booking_update_status
booking.auto-advancecoordinalo/booking

Auto-avanzar sesiones por ciclo de vida (requested→expired, confirmed→in_progress, etc.)

Cron hourly. No requiere MCP — es automatización del sistema.

— ninguno
booking.auto-completecoordinalo/booking

Auto-completar sesiones pasadas que no fueron marcadas manualmente

— ninguno
booking.auto-verifycoordinalo/booking

Auto-verificar entregas después de período de gracia

— ninguno
booking.expire-pendingcoordinalo/booking

Expirar sesiones pendientes de confirmación

— ninguno
booking.public-createcoordinalo/public-booking

Reservar sesión desde agenda pública (flujo cliente)

Usa el mismo endpoint que booking.create-session pero con auth de cliente/guest.

Rationale:Booking público es un flujo interactivo con selección de horario, servicio y proveedor — exponerlo como MCP no agrega valor vs booking_create directo.

— ninguno
booking.public-resultcoordinalo/public-booking

Confirmación post-booking público

— ninguno
agendas.listcoordinalo/agendas

Listar agendas públicas

agendas_list
agendas.createcoordinalo/agendas

Crear agenda pública

agendas_create
agendas.getcoordinalo/agendas

Obtener detalle de una agenda pública

agendas_get
agendas.updatecoordinalo/agendas

Editar agenda pública existente

agendas_update
agendas.deletecoordinalo/agendas

Eliminar agenda pública

agendas_delete
disputes.listcoordinalo/disputes

Listar disputas

disputes_list
resources.listcoordinalo/resources

Listar recursos (salas, equipos)

— ninguno
resources.getcoordinalo/resources

Detalle de recurso

— ninguno
treatment-plans.listcoordinalo/treatment-plans

Listar planes de tratamiento/atención

Rationale:Planes de tratamiento son complejos (multi-sesión, objetivos, seguimiento) — MCP read sería útil pero write requiere supervisión.

— ninguno
treatment-plans.getcoordinalo/treatment-plans

Detalle de plan de tratamiento

— ninguno
treatment-plans.auto-processcoordinalo/treatment-plans

Procesar cambios pendientes en planes de tratamiento

— ninguno
client.listrelacionalo/clients

Listar clientes con búsqueda y paginación

client_list
client.getrelacionalo/clients

Obtener detalle de cliente con resumen financiero

client_get
client.createrelacionalo/clients

Crear nuevo cliente

client_create
client.updaterelacionalo/clients

Actualizar datos personales del cliente

client_update
client.importrelacionalo/clients

Importar clientes desde archivo

No tiene API ni MCP tool — operación bulk UI-only.

Rationale:Import masivo requiere preview de conflictos y validación fila por fila antes de confirmar — exponerlo como tool sería destructivo sin UI de revisión.

— ninguno
client.mergerelacionalo/clients

Fusionar clientes duplicados

No tiene API ni MCP tool — operación destructiva, requiere supervisión humana.

Rationale:Merge resuelve identidades duplicadas con lógica de conflictos que requiere decisión humana explícita sobre qué atributos conservar.

— ninguno
client.detect-duplicatesrelacionalo/clients

Detectar clientes duplicados automáticamente

— ninguno
client.auto-unblockrelacionalo/clients

Desbloquear clientes automáticamente cuando pagan deuda

— ninguno
service.listplanificalo/services

Listar servicios con filtros

service_list
service.createplanificalo/services

Crear nuevo servicio

service_create es el tool general. admin_create_service es para setup/onboarding.

service_create
service.updateplanificalo/services

Actualizar servicio (precio, duración, estado)

service_update
service.assign-providerplanificalo/assignments

Asignar o desasignar proveedor a servicio

service_assign_provider
provider.listplanificalo/providers

Listar proveedores activos de la organización

MCP tool se llama admin_list_providers por herencia del setup flow. Funciona como list general.

admin_list_providers
provider.getplanificalo/providers

Obtener detalle de proveedor con servicios y horario

provider_get
provider.createplanificalo/providers

Crear nuevo proveedor

provider_create
provider.updateplanificalo/providers

Actualizar datos de proveedor

provider_update
provider.get-statsplanificalo/providers

Métricas de rendimiento del proveedor (ocupación, revenue, no-shows)

MCP tool calcula stats inline. API retorna en el GET del provider. UI tiene página dedicada.

Rationale:Stats computadas on-demand en el tool permiten rangos de fecha dinámicos sin necesidad de endpoints de reporting adicionales.

provider_get_stats
finance.list-cobrosplanificalo/finance

Listar cobros/cargos con filtros y paginación

finance_list_cobros
finance.get-cobroplanificalo/finance

Obtener detalle de cobro con todos sus pagos

API filtra por cobroId como query param, no tiene ruta dedicada [cobroId].

finance_get_cobro
finance.create-cobroplanificalo/finance

Crear cobro manual para un cliente

finance_create_cobro
finance.register-paymentplanificalo/finance

Registrar pago manual contra un cobro existente

finance_register_payment
finance.list-paymentsplanificalo/finance

Listar pagos recibidos con resumen por tipo

finance_list_payments
finance.create-ventaplanificalo/finance

Crear venta de servicios

finance_create_venta
finance.list-ventasplanificalo/finance

Listar ventas con filtros

finance_list_ventas
finance.client-balanceplanificalo/finance

Balance financiero completo de un cliente

MCP tool calcula balance inline. En la UI se muestra en el detalle del cliente.

Rationale:Balance calculado en el tool en vez de campo en la API evita stale data: siempre refleja cobros y pagos actuales sin depender de vistas materializadas.

finance_client_balance
finance.agingplanificalo/finance

Reporte de antigüedad de cuentas por cobrar

finance_aging
finance.gastosplanificalo/expenses

Gestión de gastos operacionales

— ninguno
finance.movimientosplanificalo/finance

Libro de movimientos/transacciones contables

— ninguno
finance.projectionsplanificalo/finance

Proyecciones financieras y forecasting

Rationale:Proyecciones son lectura — útil para agentes que hacen análisis financiero.

— ninguno
finance.financial-statementsplanificalo/finance

Estados financieros (P&L, balance general)

— ninguno
finance.invoicesplanificalo/invoices

Gestión de facturas

— ninguno
finance.verify-cobrosplanificalo/finance

Verificar cobros automáticamente

— ninguno
cierre.preview-clienteplanificalo/cierre

Preview financiero de cierre de un cliente sin persistir

cierre_preview_cliente
cierre.crear-clienteplanificalo/cierre

Crear cierre mensual inmutable de un cliente

cierre_crear_cliente
cierre.listar-clientesplanificalo/cierre

Listar cierres de clientes con filtros de período y cliente

cierre_listar_clientes
cierre.eliminar-clienteplanificalo/cierre

Reabrir cierre de un cliente (si el período org no está congelado)

cierre_eliminar_cliente
cierre.evaluar-orgplanificalo/cierre

Evaluar estado del cierre organizacional: clientes activos, cerrados, pendientes, % completado

cierre_evaluar_org
cierre.cerrar-orgplanificalo/cierre

Cerrar período organizacional (congela el período)

cierre_cerrar_org
cierre.distribuir-utilidadesplanificalo/cierre

Distribuir utilidades de un período cerrado (congela período actual y anteriores)

cierre_distribuir_utilidades
cierre.listar-utilidadesplanificalo/cierre

Listar utilidades retenidas acumuladas por período

cierre_listar_utilidades
payroll.list-recordsplanificalo/payroll

Listar registros de nómina con filtros de período, proveedor y estado

payroll_list_records
payroll.get-summaryplanificalo/payroll

Resumen de nómina por período: totales por proveedor, estados, costo total

MCP tool calcula resumen inline. La generación de nómina sigue siendo UI-only por su complejidad (modes simple/legal, adjustments por proveedor).

Rationale:Generar nómina requiere configuración de modo (simple/legal) y ajustes manuales por proveedor — exponerlo como tool de lectura (consulta) es seguro, la escritura (generación) requiere supervisión humana.

payroll_get_summary
payroll.generateplanificalo/payroll

Generar nómina mensual (cálculo de comisiones, liquidaciones)

UI-only por complejidad: modos simple/legal, ajustes manuales por proveedor, previsión.

Rationale:Generación requiere supervisión humana — múltiples configuraciones y ajustes que no se pueden automatizar sin riesgo.

— ninguno
payroll.parametrosplanificalo/payroll

Configurar parámetros de nómina (indicadores legales, porcentajes)

— ninguno
payroll.vacacionesplanificalo/payroll

Gestión de vacaciones y días libres de proveedores

— ninguno
comms.get-preferencesrelacionalo/communication

Obtener preferencias de comunicación de la organización

comms_get_preferences
comms.update-preferencesrelacionalo/communication

Actualizar canales y features de comunicación

comms_update_preferences
comms.list-campaignsrelacionalo/campaigns

Listar campañas de WhatsApp/email

comms_list_campaigns
comms.get-campaignrelacionalo/campaigns

Detalle de campaña con logs de entrega

comms_get_campaign
comms.send-messagerelacionalo/communication

Enviar mensaje WhatsApp o email a un cliente

comms_send_message
email-domain.getrelacionalo/email-domains

Obtener dominio de email configurado y su estado de verificación

email_domain_get
email-domain.registerrelacionalo/email-domains

Registrar nuevo dominio de email para enviar campañas desde dirección propia via Resend

email_domain_register
email-domain.verifyrelacionalo/email-domains

Verificar DNS del dominio de email y actualizar estado

email_domain_verify
email-domain.deleterelacionalo/email-domains

Eliminar dominio de email configurado

email_domain_delete
dunning.get-configrelacionalo/dunning

Obtener configuración de dunning/cobranza

dunning_get_config
dunning.configurerelacionalo/dunning

Actualizar configuración de dunning (pasos, periodo de gracia, bloqueo)

dunning_configure
dunning.executerelacionalo/dunning

Ejecutar secuencia de dunning (5 pasos escalantes) — envío automático

Ejecuta la secuencia de 5 pasos: WhatsApp gentle → friendly → firm → urgent + admin notify → final + block bookings.

Rationale:Ejecución automática por cron — no requiere MCP, el agente configura vía dunning.configure.

— ninguno
nps.dashboardrelacionalo/nps

Dashboard de NPS: score, promotores, pasivos, detractores

nps_get_summary
nps.auto-sendrelacionalo/nps

Envío automático de encuesta NPS post-sesión vía WhatsApp

Se envía después de sesión N (configurable). Clasifica: promoter 9-10, passive 7-8, detractor 0-6.

— ninguno
audiences.managerelacionalo/campaigns

Gestionar audiencias/segmentos de clientes para campañas

— ninguno
referrals.listrelacionalo/referrals

Listar derivaciones entre proveedores/organizaciones

— ninguno
retention.auto-detectrelacionalo/retention

Detectar abandono de clientes y enviar re-engagement automático (3 pasos)

Secuencia de 3 pasos: día N, N+14, N+30 desde última sesión. Configurable abandonmentDays (default 30).

— ninguno
reminders.session-24hrelacionalo/notifications

Recordatorio automático 24h antes de sesión

— ninguno
reminders.session-1hrelacionalo/notifications

Recordatorio automático 1h antes de sesión

— ninguno
reminders.bookingrelacionalo/notifications

Recordatorio post-booking (ej: confirmar asistencia)

— ninguno
reminders.get-configrelacionalo/notifications

Obtener configuración detallada de recordatorios (7 tipos: booking, sesión 24h/1h, pago, pago vencido, follow-up, confirmación)

reminders_get_config
reminders.update-configrelacionalo/notifications

Actualizar configuración de recordatorios (parcial, por sección)

reminders_update_config
report.dashboardorganization/reporting

Resumen ejecutivo: sesiones de hoy, métricas mensuales, alertas

report_dashboard
report.occupancyorganization/reporting

Tasas de ocupación por proveedor/día/semana

report_occupancy
report.revenueorganization/reporting

Revenue por día/semana/mes/servicio/proveedor

report_revenue
report.no-showsorganization/reporting

Estadísticas de inasistencia agrupadas por cliente/proveedor/servicio/día

report_no_shows
org.create-organizationorganization/setup

Crear nueva organización desde cero

No tiene UI admin — el flujo de onboarding web es diferente al MCP.

Rationale:Usa X-Bootstrap-Key en vez de X-Org-Api-Key porque la org no existe aún. Retorna una API key admin one-time para los pasos de setup subsiguientes.

admin_create_organization
org.list-providersorganization/setup

Listar proveedores activos de la organización (contexto setup)

Consolidar: admin_list_providers duplica provider.list. Mantener por backward-compat pero marcar deprecated.

admin_list_providers
org.create-serviceorganization/setup

Agregar servicio a la organización (setup)

Consolidar: admin_create_service duplica service_create. Diferencia original era auth (bootstrap key vs org key), pero ambos usan X-Org-Api-Key ahora.

admin_create_service
org.toggle-discoverableorganization/setup

Publicar/despublicar organización en el registry Servicialo

admin_toggle_discoverable
org.updateorganization/setup

Actualizar perfil de la organización (nombre, descripción, logo, vertical)

El campo logoUrl del tool mapea al campo logo en la DB. No existe campo website en el schema.

org_update
org.summaryorganization/setup

Resumen compacto de la organización: servicios, proveedores, horarios, features activas, onboarding status

Tool MCP-only (~500 tokens). Punto de entrada recomendado para agentes.

org_summary
members.listorganization/members

Listar miembros de la organización

members_list
members.inviteorganization/members

Invitar miembro a la organización

members_invite
settings.getorganization/settings

Leer configuración de la organización por capítulo o keys específicas (31 settings, 7 capítulos)

Tool unificado que cubre todos los settings: basics, availability, communication, finances, policies, reminders, client_data.

settings_get
settings.updateorganization/settings

Actualizar configuración de la organización (parcial, validado)

Escribe a 6 modelos Prisma en una transacción. Valida todos los valores antes de escribir.

settings_update
settings.cancellation-policiesorganization/settings

Configurar políticas de cancelación

Cubierto por settings_get con chapter=policies y settings_update con keys policies.*

settings_get
settings.client-fieldsorganization/settings

Definir campos personalizados de cliente

Cubierto por settings_get con chapter=client_data y settings_update con keys client_data.*

settings_get
settings.financesorganization/settings

Configuración financiera (moneda, impuestos, cuentas)

Cubierto por settings_get con chapter=finances y settings_update con keys finances.*

settings_get
settings.bankingorganization/settings

Configurar cuentas bancarias de la organización

— ninguno
settings.billingorganization/billing

Gestión de suscripción y facturación de la plataforma

— ninguno
settings.api-integrationsorganization/settings

Configurar integraciones externas (API keys, webhooks)

— ninguno
settings.domainorganization/settings

Configurar dominio personalizado

— ninguno
system.exchange-ratesorganization/settings

Actualizar tasas de cambio desde fuentes externas

— ninguno
system.servicialo-syncorganization/settings

Sincronizar registry Servicialo

— ninguno
system.calendar-synccoordinalo/availability

Sincronizar calendarios externos (Google Calendar)

— ninguno
system.notifications-retryrelacionalo/notifications

Reintentar notificaciones fallidas

— ninguno
provider-portal.mi-diacoordinalo/provider-portal

Dashboard diario del proveedor: sesiones de hoy, estadísticas

Rationale:Portal del proveedor es interactivo — no tiene sentido exponer vía MCP, el agente admin ya tiene booking_list.

— ninguno
provider-portal.mi-calendariocoordinalo/provider-portal

Calendario completo del proveedor (día/semana/mes)

— ninguno
provider-portal.mis-clientesrelacionalo/provider-portal

Lista de clientes del proveedor con estadísticas

— ninguno
provider-portal.mi-horariocoordinalo/provider-portal

Editar disponibilidad semanal (self-service)

Usa el mismo endpoint que availability.set-provider-schedule pero con auth de proveedor.

— ninguno
provider-portal.mis-estadisticasplanificalo/provider-portal

Métricas de rendimiento del proveedor (6 meses)

— ninguno
provider-portal.onboardingorganization/provider-portal

Wizard de onboarding: perfil + disponibilidad

— ninguno
client-portal.accessrelacionalo/client-portal

Acceso al portal de cliente (magic link / token)

Rationale:Portal de cliente es un flujo interactivo para el usuario final.

— ninguno
compensalo.receive-movementcompensalo/reconciliation

Recibir movimiento bancario vía webhook Habilitalo/Fintoc

Webhook con verificación HMAC-SHA256. Deduplica eventos y triggerea matching async vía Inngest.

— ninguno
compensalo.auto-matchcompensalo/reconciliation

Matching automático de movimientos bancarios contra cobros (exact/fuzzy)

MatchingEngine con ventana de 3 días, scoring EXACT (1.0) y FUZZY (0.7). Emite planificalo.cobro.paid.v1 al matchear.

— ninguno
compensalo.list-positionscompensalo/reconciliation

Listar posiciones de reconciliación con filtros

Rationale:Un agente podría consultar posiciones pendientes de match para reportar al admin.

— ninguno
compensalo.force-matchcompensalo/reconciliation

Match manual forzado de posición contra cobro

Rationale:Match manual requiere juicio humano sobre cuál cobro asociar.

— ninguno
compensalo.flag-exceptioncompensalo/reconciliation

Marcar posición como excepción para revisión manual

— ninguno
salud.dashboardplanificalo/reporting

Dashboard de salud de datos: integridad, consistencia, alertas

Rationale:Herramienta de diagnóstico admin — no requiere MCP.

— ninguno
respondelo.tts-renderrespondelo/tts

Generar audio desde texto vía ElevenLabs API (TTS synthesis)

Package @coordinalo/respondelo. Provider: ElevenLabs (eleven_multilingual_v2). Requiere ELEVENLABS_API_KEY. Cost: ~$0.30/1000 chars.

Rationale:Sin MCP tool: funcionalidad interna del pipeline, no expuesta a agentes. Sin UI: operación backend. Sin Cron: on-demand.

— ninguno
respondelo.tts-cacherespondelo/tts

Almacenar y servir audio cacheado para textos repetidos (SHA256 hash → AudioAsset)

Tablas: TtsCache (textHash + voiceProfileId → AudioAsset), AudioAsset, VoiceProfile. Hit count tracking. Cache transparente dentro del servicio TTS.

Rationale:Sin interfaces externas: capa de optimización interna. El cache es transparente — se activa automáticamente en cada llamada TTS.

— ninguno
respondelo.respond-endpointrespondelo/respond

Endpoint principal del pipeline Respondelo (interpret → think → render)

Pendiente de conectar. Pipeline 4 fases: Interpret (STT, TODO), Think (LLM, placeholder), Render (TTS, implementado), Record. Session management con ResponseSession + Exchange.

Rationale:Sin MCP: endpoint para consumo por canales (WhatsApp, web widget, phone). Sin UI: backend API. Sin Cron: event-driven.

— ninguno

136 de 136 capabilities · Actualizar: editar src/lib/capabilities/registry.ts