Volver al inicio
Especificación del protocolo

Servicialo Protocol Spec v0.9.0

Referencia autocontenida para desarrolladores y agentes IA que evalúan o implementan el protocolo. 8 dimensiones, 9 estados, 34 herramientas.

Self-contained reference for developers and AI agents evaluating or implementing the protocol. 8 dimensions, 9 states, 34 tools.

◆ Protocol v0.9.0◆ MCP Server v0.8.0◆ Sincronizado: 2026-03-23
01

Las 8 dimensiones / The 8 Dimensions

Todo servicio se modela a través de 8 dimensiones canónicas, universales para todas las verticales.

Every service is modeled across 8 canonical dimensions, universal across verticals.

#Dimensión / DimensionQué captura / What it capturesCampos ejemplo / Example fields
1Identidad (Qué)
Identity (What)
La actividad o resultado entregado
The activity or outcome being delivered
type, vertical, name, duration_minutes, requirements
2Proveedor (Quién entrega)
Provider (Who Delivers)
Profesional o entidad que entrega el servicio
Professional or entity delivering the service
provider.id, credentials, trust_score, organization_id
3Cliente (Quién recibe)
Client (Who Receives)
Beneficiario del servicio; el pagador se separa explícitamente
Beneficiary of the service; payer is explicitly separated
client.id, client.payer_id
4Agenda (Cuándo)
Schedule (When)
Ventana temporal del servicio
Temporal window for the service
requested_at, scheduled_for, duration_expected
5Ubicación (Dónde)
Location (Where)
Ubicación física o virtual; puede referenciar un Recurso
Physical or virtual location; may reference a Resource entity
type (in_person/remote), address, resource_id, coordinates
6Ciclo de vida (Estados)
Lifecycle (States)
Posición actual en el ciclo de 9 estados
Current position in the 9-state lifecycle
current_state, transitions[], exceptions[]
7Evidencia (Prueba)
Evidence (Proof)
Cómo el servicio prueba que ocurrió
How the service proves it occurred
checkin, checkout, duration_actual, evidence[]
8Facturación (Pago)
Billing (Payment)
Liquidación financiera, independiente del ciclo de vida
Financial settlement, independent from lifecycle
amount, payer, status, payment_id, tax_document

Un Recurso (espacio físico/equipamiento) es una entidad de primera clase con capacity, buffer_minutes, su propio calendario de disponibilidad y lista de equipos. Opcional — prácticas individuales funcionan sin él.

A Resource (physical space/equipment) is a first-class entity with capacity, buffer_minutes, its own availability schedule, and equipment list. Optional — solo practices work without it.

02

Los 9 estados del ciclo de vida / The 9 Lifecycle States

Requested → Scheduled → Confirmed → In Progress → Completed → Documented → Invoiced → Collected → Verified
#Estado / StateDisparador / TriggerNotas / Notes
1requestedCliente/agente envía solicitud
Client/agent submits request
Punto de entrada
Entry point
2scheduledSistema encuentra disponibilidad (proveedor, opcionalmente recurso)
System matches availability (provider, optionally resource)
Compromiso triple si hay recurso asignado
Three-way commitment if resource assigned
3confirmedAmbas partes confirman
Both parties acknowledge
Proveedor + cliente confirman
Provider + client confirm
4in_progressCheck-in detectado (GPS + timestamp)
Check-in detected (GPS + timestamp)
Comienza la entrega
Delivery begins
5completedProveedor marca entrega completa
Provider marks delivery complete
Duración auto-calculada desde checkin/checkout
Duration auto-calculated from checkin/checkout
6documentedNota clínica, reporte o evidencia archivada
Clinical note, report, or evidence filed
Schema de evidencia por vertical aplicado
Vertical-specific evidence schema applied
7invoicedDocumento tributario emitido
Tax document emitted
Dimensión de facturación actualizada
Billing dimension updated
8collectedPago recibido y confirmado
Payment received and confirmed
Solo sesiones collected cuentan para liquidación
Only collected sessions count toward payroll
9verifiedCliente confirma OK, o ventana de silencio expira (auto-verify)
Client confirms OK, or silence window expires (auto-verify)
Estado terminal del camino feliz
Terminal happy-path state

Reglas: Los estados son estrictamente ordenados — no se pueden saltar. Cada transición registra from, to, at, by, method (auto/manual/agent), y metadata. Cuando method = agent, mandate_id es obligatorio.

Rules: States are strictly ordered — no skipping. Each transition records from, to, at, by, method (auto/manual/agent), and metadata. When method = agent, mandate_id is required.

03

Las dos entidades / The Two Entities

Servicio (Unidad atómica) / Service (Atomic Unit)

La unidad atómica de entrega de servicios profesionales. Modelada en las 8 dimensiones. Puede existir de forma independiente o dentro de una Orden de Servicio.

The atomic unit of professional service delivery. Modeled across the 8 dimensions. May exist standalone or within a Service Order.

Orden de Servicio (Acuerdo comercial) / Service Order (Commercial Agreement)

Un acuerdo bilateral para entregar un conjunto de servicios bajo términos comerciales definidos.

A bilateral agreement to deliver a set of services under defined commercial terms.

Eje / AxisQué define / What it defines
Alcance / ScopeTipos de servicio autorizados, límites de cantidad/horas, condición de expiración / Authorized service types, quantity/hours limits, expiry condition
Precio / PricingModelo (fijo / tiempo y materiales / tarifa / mixto), moneda, tarifas / Model (fixed / time & materials / rate card / mixed), currency, rates
Calendario de pagos / Payment scheduleCuándo se mueve el dinero (anticipado / hito / periódico / contra entrega / personalizado) / When money moves (upfront / milestone / periodic / on delivery / custom)

Ciclo de vida de la Orden de Servicio / Service Order lifecycle:

draft → proposed → negotiating → active → paused → completed | cancelled

Una cotización ES una Orden de Servicio en estado draft o proposed — no existe un objeto de cotización separado.A quote IS a Service Order in draft or proposed state — no separate quote object.

Libro mayor computado / Computed Ledger (read-only, on the Service Order)

Campo / FieldSignificado / Meaning
services_verifiedCantidad de servicios en estado verified
Count of services in verified state
hours_consumedTotal de horas en servicios verificados
Total hours across verified services
amount_consumedValor consumido a tarifas del modelo de precio
Value consumed at pricing model rates
amount_billedTotal facturado a la fecha
Total invoiced to date
amount_collectedTotal de pagos recibidos
Total payments received
amount_remainingAlcance autorizado aún no consumido
Authorized scope not yet consumed

Relación (Principio 6): Orden de Servicio = lo acordado. Servicio atómico = lo entregado. El libro mayor conecta ambos.Relationship (Principle 6): Service Order = what was agreed. Atomic Service = what was delivered. The ledger bridges both.

04

Flujos de excepción / Exception Flows

6 flujos de excepción de primera clase. Cualquiera puede redirigir fuera del camino feliz.

6 first-class exception flows. Any of these may redirect out of the happy path.

Excepción / ExceptionDisparador / TriggerDesde / FromHacia / ToRegla clave / Key rule
No-show del cliente
Client no-show
Cliente ausente pasado el periodo de gracia
Client absent past grace period
confirmedcancelled (no_show)Cobrar penalidad según política; liberar slot del proveedor
Charge penalty per policy; free provider slot
No-show del proveedor
Provider no-show
Proveedor ausente o cancelación de último minuto
Provider absent or last-minute cancel
confirmedreassigning → scheduledBuscar reemplazo automáticamente; notificar cliente; marcar proveedor
Auto-find replacement; notify client; flag provider
Cancelación
Cancellation
Cualquier parte cancela pre-entrega
Either party cancels pre-delivery
Any pre-deliverycancelledAplicar política de cancelación según tiempo restante
Apply cancellation policy by time remaining
Disputa de calidad
Quality dispute
Cliente disputa dentro de ventana de disputa
Client disputes within dispute window
completeddisputedCongelar cobro; solicitar evidencia adicional; resolver a verified o cancelled
Freeze charge; request additional evidence; resolve to verified or cancelled
Reprogramación
Rescheduling
Cualquier parte necesita horario diferente
Either party needs different time
scheduled/confirmedrescheduling → scheduledMantener mismo proveedor si es posible; manejar conflictos de recurso
Maintain same provider when possible; handle resource conflicts
Entrega parcial
Partial delivery
Servicio no puede completarse en su totalidad
Service cannot be completed in full
in_progresspartialDocumentar lo entregado; ajustar factura proporcionalmente
Document what was delivered; adjust invoice proportionally
05

Herramientas MCP por fase / MCP Tools by Phase

34 herramientas implementadas en @servicialo/mcp-server v0.8.0. 9 públicas (sin auth) + 25 autenticadas (API key + org ID).

34 tools implemented in @servicialo/mcp-server v0.8.0. 9 public (no auth) + 25 authenticated (API key + org ID).

Fase 0 / Phase 0 — Resoluci\u00f3n DNS / DNS Resolution (3 public tools)

ToolDescripción / DescriptionAuth
resolve.lookupResolver orgSlug → endpoint + nivel de confianza / Resolve orgSlug → endpoint + trust levelNo
resolve.searchBuscar resolver global por país y vertical / Search global resolver by country and verticalNo
trust.get_scorePuntaje de confianza (0–100), nivel, última actividad / Trust score (0–100), level, last activityNo

Fase 1 / Phase 1 — Descubrimiento / Discovery (6 public tools)

ToolDescripción / DescriptionAuth
registry.searchBuscar organizaciones por vertical, ubicación, país / Search organizations by vertical, location, countryNo
registry.get_organizationDetalles públicos: servicios, proveedores, config de reserva / Public details: services, providers, booking configNo
registry.manifestManifiesto del servidor: capacidades, versión, metadata / Server manifest: capabilities, protocol version, metadataNo
scheduling.check_availabilitySlots disponibles (3 variables: proveedor ∧ cliente ∧ recurso) / Available slots (3-variable: provider ∧ client ∧ resource)No
services.listCatálogo público de servicios de una organización / Public service catalog of an organizationNo
a2a.get_agent_cardAgent Card A2A para descubrimiento inter-agente / A2A Agent Card for inter-agent discoveryNo

Fase 2 / Phase 2 — Entender / Understand (2 tools)

ToolDescripción / DescriptionScopes
service.getLas 8 dimensiones completas de un servicio / Full 8 dimensions of a serviceservice:read
contract.getTérminos del contrato: evidencia requerida, política de cancelación, ventana de disputa / Contract terms: evidence required, cancellation policy, dispute windowservice:read order:read

Fase 3 / Phase 3 — Comprometer / Commit (3 tools)

ToolDescripción / DescriptionScopes
clients.get_or_createBuscar o crear cliente por email/teléfono / Find or create client by email/phonepatient:write
scheduling.bookReservar sesión → requested. resource_id opcional / Book session → requested. Optional resource_idschedule:write
scheduling.confirmConfirmar reserva → confirmed / Confirm booking → confirmedschedule:write

Fase 4 / Phase 4 — Ciclo de vida / Lifecycle (4 tools)

ToolDescripción / DescriptionScopes
lifecycle.get_stateEstado actual, transiciones disponibles, historial / Current state, available transitions, historyservice:read
lifecycle.transitionEjecutar transición de estado con evidencia / Execute state transition with evidenceservice:write
scheduling.rescheduleReprogramar (política de contrato puede aplicar) / Reschedule (contract policy may apply)schedule:write
scheduling.cancelCancelar (política de cancelación aplicada) / Cancel (cancellation policy applied)schedule:write

Fase 5 / Phase 5 — Verificar entrega / Verify Delivery (3 tools)

ToolDescripción / DescriptionScopes
delivery.checkinCheck-in: GPS + timestamp → in_progressevidence:write
delivery.checkoutCheck-out: GPS + timestamp → completed (duración auto-calculada / duration auto-calculated)evidence:write
delivery.record_evidenceRegistrar evidencia: gps, firma, foto, documento, duración, notas / Record evidence: gps, signature, photo, document, duration, notesevidence:write

Fase 6 / Phase 6 — Cerrar / Close (4 tools)

ToolDescripción / DescriptionScopes
documentation.createGenerar registro de servicio → documented / Generate service record → documenteddocument:write
payments.create_saleCrear cobro → invoiced / Create charge → invoicedpayment:write
payments.record_paymentRegistrar pago recibido / Record payment receivedpayment:write
payments.get_statusEstado de pago o saldo del cliente / Payment status or client account balancepayment:read

Gesti\u00f3n de recursos / Resource Management (6 tools)

ToolDescripción / DescriptionScopes
resource.listListar recursos físicos por organización / List physical resources by organizationresource:read
resource.getDetalles del recurso + slots disponibles / Resource details + availability slotsresource:read
resource.createCrear recurso (sala, box, equipo) / Create resource (room, box, equipment)resource:write
resource.updateActualizar recurso (patch semantics) / Update resource (patch semantics)resource:write
resource.deleteEliminación lógica (is_active = false) / Soft delete (is_active = false)resource:write
resource.get_availabilityDisponibilidad por rango de fechas / Availability by date rangeresource:read

Administraci\u00f3n del resolver / Resolver Administration (3 tools)

ToolDescripción / DescriptionScopes
resolve.registerRegistrar org en resolver global / Register org in global resolverresolve:write
resolve.update_endpointActualizar endpoints (portabilidad de backend) / Update endpoints (backend portability)resolve:write
telemetry.heartbeatHeartbeat: nodo activo / Heartbeat: node is alivetelemetry:write
06

Requisitos mínimos / Minimum Implementation Requirements

Para ser listado como una implementación compatible de Servicialo:

To be listed as a compatible Servicialo implementation:

#Requisito / RequirementReferencia / ReferenceObligatorio / Mandatory
1Modelar servicios usando las 8 dimensiones
Model services using the 8 dimensions
§5Sí / Yes
2Implementar los 9 estados del ciclo de vida
Implement the 9 lifecycle states
§6Sí / Yes
3Manejar al menos 3 flujos de excepción
Handle at least 3 exception flows
§7Sí / Yes
4Exponer una API a la que un servidor MCP pueda conectarse
Expose an API that an MCP server can connect to
§13Sí / Yes
5Modelar Órdenes de Servicio (schema §8)
Model Service Orders (§8 schema)
§8No
6Implementar el Modelo de Agencia Delegada
Implement the Delegated Agency Model
§10No
7Implementar Perfiles de Proveedor
Implement Provider Profiles
§12No
8Contribuir a la Inteligencia de Red
Contribute to Network Intelligence
§14No
07

Superficie de API / API Surface

El servidor MCP se conecta a un backend via adaptador. El backend debe exponer endpoints cubriendo estas operaciones. Las rutas HTTP no son prescritas por el protocolo — cada implementación elige su propia superficie REST.

The MCP server connects to a backend via an adapter. The backend must expose endpoints covering these operations. HTTP routes are not prescribed by the protocol — each implementation chooses its own REST surface.

Descubrimiento / Discovery (público, sin auth / public, no auth)

Operación / OperationInputOutput
Buscar organizaciones / Search organizationsvertical, location, countryLista de organizaciones / Organization list
Obtener detalles / Get organization detailsorg_id or slugPerfil público, servicios, proveedores / Public profile, services, providers
Obtener manifiesto / Get server manifestCapacidades, versión, metadata / Capabilities, protocol version, org metadata
Verificar disponibilidad / Check availabilityservice_id, provider_id?, resource_id?, date_from, date_toSlots disponibles con puntaje de confianza / Available time slots with confidence scores
Listar servicios / List servicesorg_idCatálogo de servicios / Service catalog
Obtener agent card A2A / Get A2A agent cardorg_idA2A Agent Card JSON

Resolución DNS / DNS Resolution (público, sin auth / public, no auth)

Operación / OperationInputOutput
Buscar endpoint de org / Lookup org endpointorg_slugURL de endpoint MCP/REST, nivel de confianza / MCP/REST endpoint URL, trust level
Buscar en resolver / Search resolvercountry, verticalOrganizaciones coincidentes / Matching organizations
Obtener puntaje de confianza / Get trust scoreorg_slugPuntaje 0–100, nivel, última actividad / Score 0–100, level, last activity

Operaciones autenticadas / Authenticated operations (API key + org ID)

Operación / OperationInputOutput
Obtener servicio (8 dimensiones) / Get service (8 dimensions)service_idObjeto servicio completo / Full service object
Obtener contrato / Get contractservice_id or order_idTérminos del contrato / Contract terms
Obtener o crear cliente / Get or create clientemail or phone, nameRegistro de cliente / Client record
Reservar sesión / Book sessionservice_id, provider_id, client_id, datetime, resource_id?Reserva en estado requested / Booking in requested state
Confirmar sesión / Confirm sessionbooking_idReserva en estado confirmed / Booking in confirmed state
Obtener estado / Get lifecycle statesession_idEstado actual + transiciones + historial / Current state + transitions + history
Transicionar estado / Transition statesession_id, to_state, evidence?Estado actualizado / Updated state
Reprogramar / Reschedulesession_id, new_datetimeSesión reprogramada / Rescheduled session
Cancelar / Cancelsession_id, reason?Sesión cancelada / Cancelled session
Check-insession_id, gps, timestampSesión en in_progress / Session in in_progress
Check-outsession_id, gps, timestampSesión en completed / Session in completed
Registrar evidencia / Record evidencesession_id, type, payloadEvidencia adjunta / Evidence attached
Crear documentación / Create documentationsession_id, contentSesión en documented / Session in documented
Crear cobro / Create salesession_id, amount?Venta/factura creada / Sale/invoice created
Registrar pago / Record paymentsale_id, method, amountPago registrado / Payment recorded
Estado de pago / Get payment statussale_id or client_idEstado de pago / saldo / Payment status / balance
CRUD recursos / CRUD resourcesresource_id?, fieldsEntidad recurso / Resource entity
Disponibilidad de recurso / Resource availabilityresource_id, date_from, date_toSlots disponibles / Available slots
Registrar en resolver / Register in resolverorg_slug, endpointsRegistro confirmado / Registration confirmed
Actualizar endpoint / Update endpointorg_slug, endpointsEndpoints actualizados / Endpoints updated
Enviar heartbeat / Send heartbeatorg_slugHeartbeat confirmado / Heartbeat acknowledged

Autenticación: Todas las operaciones autenticadas requieren X-API-Key + X-Org-Id como headers. Cuando actor.type = agent, un ServiceMandate válido con los scopes apropiados es adicionalmente requerido.

Authentication: All authenticated operations require X-API-Key + X-Org-Id headers. When actor.type = agent, a valid ServiceMandate with appropriate scopes is additionally required.

Esta página refleja la Servicialo Protocol Spec v0.9.0 completa. Para la especificación completa incluyendo JSON Schemas, gobernanza y extensiones por vertical, consulta el repositorio en GitHub.

This page mirrors the full Servicialo Protocol Spec v0.9.0. For the complete protocol specification including JSON Schemas, governance, and vertical-specific extensions, see the GitHub repository.