Coordinalo — Service Business Operations
REMOTE · COORDINALO.COM · SCANNED AUG 3
Scheduling, availability, clients, billing and CRM for appointment-based services.
Available components
How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score →
Endpoint Security63
- The endpoint's TLS certificate is valid, in date, and uses a strong key. View diagnostics → Pass
- Authorisation not fully verified: no authorisation is required to call this server, and 112 tool(s) never declared a destructiveHint. The MCP spec treats an absent hint as destructive by default, so we cannot call this surface safe. See how to fix → View diagnostics → Unverified
- HTTPS is enforced; there's no plaintext access path. View diagnostics → Pass
- The HSTS (Strict-Transport-Security) header is present. View diagnostics → Pass
- DNSSEC check failed: this domain isn't protected by DNSSEC. See how to fix → View diagnostics → Fail
Transport & Reachability100
- Verified streamable-http transport via a live MCP handshake. View diagnostics → Pass
Schema Quality & AI Usability68
- AI-judged instruction clarity (good).Pass
- Context-footprint check failed: tool/resource definitions use about 12998 tokens (~116/item across 112 items; 112 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management27
- Stability observed for 8 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage67
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 0% of tool parameters carry a description.Fail
Capabilities100
- Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Add this component to your MCP client. Where a client-specific snippet is available, pick your client below and copy it straight into your config; otherwise use the connection detail shown.
remote · coordinalo.com
claude mcp add --transport http com-coordinalo-mcp-server https://coordinalo.com/api/mcp
[mcp_servers.com-coordinalo-mcp-server] url = "https://coordinalo.com/api/mcp"
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"com-coordinalo-mcp-server": {
"type": "remote",
"url": "https://coordinalo.com/api/mcp",
"enabled": true
}
}
} openclaw mcp add com-coordinalo-mcp-server --url https://coordinalo.com/api/mcp --transport streamable-http
mcp_servers:
com-coordinalo-mcp-server:
url: "https://coordinalo.com/api/mcp" {
"mcpServers": {
"com-coordinalo-mcp-server": {
"type": "http",
"url": "https://coordinalo.com/api/mcp"
}
}
} The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.
Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 3 Aug 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 23 to 27. That category is still filling its 30-day observation window: 7 days of observed history at the previous scan, 8 at this one. The score rises as the window fills, whether or not the server changes.
- 1 Aug 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 17 to 20. That category is still filling its 30-day observation window: 5 days of observed history at the previous scan, 6 at this one. The score rises as the window fills, whether or not the server changes.
- 31 Jul 26 +3
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 30 Jul 26 0
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 29 Jul 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 7 to 10. That category is still filling its 30-day observation window: 2 days of observed history at the previous scan, 3 at this one. The score rises as the window fills, whether or not the server changes.
- 28 Jul 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 3 to 7. That category is still filling its 30-day observation window: 1 days of observed history at the previous scan, 2 at this one. The score rises as the window fills, whether or not the server changes.
- 27 Jul 26 0
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 26 Jul 26 58
First indexed and scored.
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 3 Aug 2026 · Probed https://coordinalo.com/api/mcp
TLS valid
Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .
| Subject | Issuer | Valid from | Valid until | Key | Signature | Serial |
|---|---|---|---|---|---|---|
| CN=coordinalo.com | CN=YR1,O=Let's Encrypt,C=US | 5 Jul 2026 | 3 Oct 2026 | RSA 2048 | SHA256-RSA | 5619be711c8d685b9d102b60e5a04df642b |
| SANs: coordinalo.com | ||||||
| CN=YR1,O=Let's Encrypt,C=US (CA) | CN=Root YR,O=ISRG,C=US | 3 Sept 2025 | 2 Sept 2028 | RSA 2048 | SHA256-RSA | a20253f15f2691c05dc1ce13b9bcca4e |
| CN=Root YR,O=ISRG,C=US (CA) | CN=ISRG Root X1,O=Internet Security Research Group,C=US | 13 May 2026 | 2 Sept 2032 | RSA 4096 | SHA256-RSA | f24b6d17f9d9ad7cb1c9fea78782699f |
DNSSEC insecure
Validation of coordinalo.com. — Not signed
| Zone | DS | Keys | Algorithms | Outcome |
|---|---|---|---|---|
| . | trust_anchor | 20326, 38696 | 8, 8 | Verified |
| com. | present | 19718 | 13 | Verified |
| coordinalo.com. | absent | Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation |
Authentication No authorisation required
The endpoint answered without asking for a token. Anyone who knows the URL can reach it.
| Result | No authorisation required |
|---|---|
| HTTP status | 200 |
| Header | Value |
|---|---|
| strict-transport-security | max-age=31536000; includeSubDomains |
| x-content-type-options | nosniff |
| x-frame-options | SAMEORIGIN |
| referrer-policy | strict-origin-when-cross-origin |
Transports 2 probes
| Transport | URL | Outcome | Status | Location |
|---|---|---|---|---|
| streamable-http | https://coordinalo.com/api/mcp | Verified | 200 | |
| http (plaintext) | http://coordinalo.com/api/mcp | HTTPS enforced | 308 | https://coordinalo.com/api/mcp |
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability.
admin_create_service ~153
Add a bookable service to an organization. Use after admin_create_organization. Auto-discoverable by default. If the org has exactly one active provider, the service is auto-assigned to them. With multiple providers, use service_assign_provider to assign manually — unassigned services block admin_toggle_discoverable. Next step: admin_set_availability to configure the provider schedule. Requires X-Org-Api-Key header.
| Name | Type | Req | Description |
|---|---|---|---|
| apiKey | string | — | — |
| currency | string | — | — |
| description | string | — | — |
| duration_minutes | integer | yes | — |
| name | string | yes | — |
| orgSlug | string | yes | — |
| price | number | yes | — |
| vertical | string | — | — |
No output schema declared.
No examples provided.
admin_list_providers ~71
List active providers (professionals) for an organization. Use this to get providerId before calling admin_set_availability. The org owner is auto-provisioned as a provider. Requires X-Org-Api-Key header.
| Name | Type | Req | Description |
|---|---|---|---|
| apiKey | string | — | — |
| orgSlug | string | yes | — |
No output schema declared.
No examples provided.
admin_set_availability ~88
Replace the weekly availability schedule for a provider (not additive — overwrites all existing blocks). Get providerId from admin_list_providers first. Schedule uses day names and HH:MM times. Requires X-Org-Api-Key header.
| Name | Type | Req | Description |
|---|---|---|---|
| apiKey | string | — | — |
| orgSlug | string | yes | — |
| providerId | string | yes | — |
| schedule | array | yes | — |
No output schema declared.
No examples provided.
admin_toggle_discoverable ~155
Toggle the LIFECYCLE flags isPublic and servicialoPublished. ⚠️ This tool does NOT grant public discovery consent — discovery in the Servicialo registry requires Organization.discoveryConsent=true, which can ONLY be set by the human owner via PATCH /api/organizations/:slug/servicialo from the web panel (a deliberate, authenticated consent action). Without consent, the cron registry-sync and resolver-heartbeat skip the org, so calling this tool with discoverable=true on a non-consented org flips local flags but does not publish anywhere. Requires X-Org-Api-Key header.
| Name | Type | Req | Description |
|---|---|---|---|
| apiKey | string | — | — |
| discoverable | boolean | yes | — |
| orgSlug | string | yes | — |
No output schema declared.
No examples provided.
agendas_create ~319
Create a public agenda — a shareable booking page where external clients can self-book appointments. Links to a specific provider and/or service. The agenda gets a public URL at /{orgSlug}/agenda/{slug}. Create this after services and availability are configured. Without a public agenda, clients can only be booked via the API or dashboard.
| Name | Type | Req | Description |
|---|---|---|---|
| allowComments | boolean | — | — |
| allowGroupSelection | boolean | — | — |
| allowOnDemandBooking | boolean | — | — |
| allowSameDayBooking | boolean | — | — |
| apiKey | string | — | — |
| assignmentStrategy | string | — | — |
| bookingFlowOrder | string | — | — |
| cancellationDeadlineMinutes | number | — | — |
| cancellationPenaltyType | string | — | — |
| cancellationPenaltyValue | number | — | — |
| cancellationPolicyType | string | — | — |
| defaultDurations | array | — | — |
| description | string | — | — |
| isActive | boolean | — | — |
| isPublic | boolean | — | — |
| maxAdvanceBookingDays | number | — | — |
| minAdvanceBookingMinutes | number | — | — |
| orgSlug | string | yes | — |
| proveedorId | string | — | — |
| providerSelectionMode | string | — | — |
| requiresPrepayment | boolean | — | — |
| serviceSelectionMode | string | — | — |
| showClientNames | boolean | — | — |
| showProviderList | boolean | — | — |
| showProviderUtilization | boolean | — | — |
| showSessions | boolean | — | — |
| slug | string | yes | — |
| title | string | — | — |
No output schema declared.
No examples provided.
agendas_delete ~70
Delete a public agenda permanently. Cascades to related sessions booked through this agenda, comments, and service configs. Requires confirm: true. Cannot be undone.
| Name | Type | Req | Description |
|---|---|---|---|
| agendaId | string | yes | — |
| apiKey | string | — | — |
| confirm | boolean | yes | — |
| orgSlug | string | yes | — |
No output schema declared.
No examples provided.
agendas_get ~98
Get complete details of a public agenda by ID. Returns all configuration including booking flow (service_first, provider_first, auto), selection modes, assignment strategy, booking policies (advance booking, same-day, on-demand), cancellation policies, privacy settings, linked provider/service, and session count. Use before agendas_update to inspect current settings.
| Name | Type | Req | Description |
|---|---|---|---|
| agendaId | string | yes | — |
| apiKey | string | — | — |
| orgSlug | string | yes | — |
No output schema declared.
No examples provided.
agendas_list ~43
List public agendas for an organization. Returns agendas with their provider, service, and session counts.
| Name | Type | Req | Description |
|---|---|---|---|
| apiKey | string | — | — |
| orgSlug | string | yes | — |
No output schema declared.
No examples provided.
agendas_update ~421
Update a public agenda’s configuration. Partial update — only provided fields are changed. Supports modifying: title, description, visibility (isPublic/isActive), booking flow order (service_first/provider_first/auto), selection modes for service and provider (required/optional/auto/hidden), assignment strategy (manual/round_robin/least_booked/most_available/priority/random), booking policies (min/max advance, same-day, on-demand), cancellation policies (type, deadline, penalty), privacy flags (showSessions, showClientNames, showProviderUtilization, showProviderList), prepayment, and provider/service linking. When a provider is assigned, their services are auto-linked to the agenda.
| Name | Type | Req | Description |
|---|---|---|---|
| agendaId | string | yes | — |
| allowComments | boolean | — | — |
| allowGroupSelection | boolean | — | — |
| allowOnDemandBooking | boolean | — | — |
| allowSameDayBooking | boolean | — | — |
| apiKey | string | — | — |
| assignmentStrategy | string | — | — |
| bookingFlowOrder | string | — | — |
| cancellationDeadlineMinutes | number | — | — |
| cancellationPenaltyType | string | — | — |
| cancellationPenaltyValue | number | — | — |
| cancellationPolicyType | string | — | — |
| category | string | — | — |
| defaultDurations | array | — | — |
| description | string | — | — |
| expiresAt | string | — | — |
| isActive | boolean | — | — |
| isDefault | boolean | — | — |
| isPublic | boolean | — | — |
| maxAdvanceBookingDays | number | — | — |
| minAdvanceBookingMinutes | number | — | — |
| orgSlug | string | yes | — |
| proveedorId | string | — | — |
| providerSelectionMode | string | — | — |
| requiresPrepayment | boolean | — | — |
| serviceSelectionMode | string | — | — |
| showClientNames | boolean | — | — |
| showProviderList | boolean | — | — |
| showProviderUtilization | boolean | — | — |
| showSessions | boolean | — | — |
| slug | string | — | — |
| title | string | — | — |
No output schema declared.
No examples provided.
availability_get_provider_schedule ~61
Get the configured weekly availability schedule for a provider (not free slots, but the base configuration). Use admin_set_availability to modify.
| Name | Type | Req | Description |
|---|---|---|---|
| apiKey | string | — | — |
| orgSlug | string | yes | — |
| providerId | string | yes | — |
No output schema declared.
No examples provided.
availability_get_slots ~244
Query available time slots within a date range. Agenda-aware: without clientId, filters by the org default public agenda — each org decides which services to expose. With clientId, resolves the client titular provider and returns their full service catalog. Five modes: (1) orgSlug only — slots from the public agenda grouped by service, provider auto-assigned at booking; (2) orgSlug + clientId — resolves titular provider if set, falls back to agenda; (3) orgSlug + agendaId — slots for a specific agenda; (4) serviceId — slots for all providers assigned to that service; (5) providerId — slots for a specific provider. Modes 1–3 hide provider details. Use before booking_create.
| Name | Type | Req | Description |
|---|---|---|---|
| agendaId | string | — | — |
| apiKey | string | — | — |
| clientId | string | — | — |
| date | string | — | — |
| dateFrom | string | — | — |
| dateTo | string | — | — |
| duration | integer | — | — |
| orgSlug | string | yes | — |
| providerId | string | — | — |
| serviceId | string | — | — |
| timezone | string | — | — |
No output schema declared.
No examples provided.
booking_cancel ~122
Cancel an existing session. By default applies the org cancellation policy: the charge is computed from the no-charge/partial/full windows and, if the policy has autoApply, registered as a penalty transaction (money-write). Set applyCancellationPolicy: false to waive the charge. Requires confirm: true.
| Name | Type | Req | Description |
|---|---|---|---|
| apiKey | string | — | — |
| applyCancellationPolicy | boolean | — | — |
| cancelledBy | string | — | — |
| confirm | boolean | yes | — |
| orgSlug | string | yes | — |
| reason | string | yes | — |
| sessionId | string | yes | — |
No output schema declared.
No examples provided.
booking_create ~312
Create a new session/appointment for a client. providerId is optional — if omitted, the system auto-assigns a provider using the agenda assignment strategy (round_robin, least_booked, etc.). When a client has a titular provider, that provider is preferred automatically. Without providerId and without publicAgendaId, the org default public agenda is used. Preconditions: (1) service must exist and be active, (2) client must exist (use client_create first). Use availability_get_slots to find valid time slots before calling this. Set retroactive: true to register past sessions (skips slot validation, sets status to completed by default). Use autoCharge: true with retroactive to auto-generate the charge. Retroactive sessions are tagged with self_declared provenance. Max 365 days in the past. Past dates are auto-detected as retroactive — the retroactive flag is optional (system infers it from scheduledAt).
| Name | Type | Req | Description |
|---|---|---|---|
| apiKey | string | — | — |
| autoCharge | boolean | — | — |
| clientId | string | yes | — |
| duration | integer | — | — |
| idempotencyKey | string | — | — |
| modalidad | string | — | — |
| notes | string | — | — |
| orgSlug | string | yes | — |
| providerId | string | — | — |
| publicAgendaId | string | — | — |
| retroactive | boolean | — | — |
| retroactiveStatus | string | — | — |
| scheduledAt | string | yes | — |
| serviceId | string | yes | — |
No output schema declared.
No examples provided.
booking_create_recurring ~113
Create recurring sessions (e.g. weekly therapy). Generates multiple individual sessions linked by a recurrence series ID. Max 52 occurrences.
| Name | Type | Req | Description |
|---|---|---|---|
| apiKey | string | — | — |
| clientId | string | yes | — |
| confirm | boolean | yes | — |
| notes | string | — | — |
| orgSlug | string | yes | — |
| providerId | string | yes | — |
| recurrence | object | yes | — |
| serviceId | string | — | — |
| skipConflicts | boolean | — | — |
| timezone | string | yes | — |
No output schema declared.
No examples provided.
booking_get ~58
Get complete details of a session/appointment by its ID, including client, provider, service, financial, and delivery proof information.
| Name | Type | Req | Description |
|---|---|---|---|
| apiKey | string | — | — |
| orgSlug | string | yes | — |
| sessionId | string | yes | — |
No output schema declared.
No examples provided.
booking_list ~116
List sessions for an organization with filters by provider, client, service, status, and date range. Supports cursor-based pagination.
| Name | Type | Req | Description |
|---|---|---|---|
| apiKey | string | — | — |
| clientId | string | — | — |
| cursor | string | — | — |
| dateFrom | string | — | — |
| dateTo | string | — | — |
| limit | integer | — | — |
| orderBy | string | — | — |
| orgSlug | string | yes | — |
| providerId | string | — | — |
| serviceId | string | — | — |
| status | — | — | — |
No output schema declared.
No examples provided.
booking_list_requests ~171
List the reschedule requests (SessionRequest) of an organization — the org side of the bilateral coordination loop a client opens from the portal. Filter by status (pending|all|resolved, default pending), sessionId or clientId. Returns the proposed slot, current session state, and who proposed it. Cursor-paginated. Set includePendingCount: true to also get the count of pending requests (powers the sidebar badge). Read-only. Use booking_resolve_request to approve or reject one.
| Name | Type | Req | Description |
|---|---|---|---|
| apiKey | string | — | — |
| clientId | string | — | — |
| cursor | string | — | — |
| includePendingCount | boolean | — | — |
| limit | integer | — | — |
| orgSlug | string | yes | — |
| sessionId | string | — | — |
| status | string | — | — |
No output schema declared.
No examples provided.
booking_reschedule ~89
Reschedule a session to a new time. Cancels the original and creates a new one. Requires confirm: true.
| Name | Type | Req | Description |
|---|---|---|---|
| apiKey | string | — | — |
| confirm | boolean | yes | — |
| newProviderId | string | — | — |
| newScheduledAt | string | yes | — |
| orgSlug | string | yes | — |
| reason | string | — | — |
| sessionId | string | yes | — |
No output schema declared.
No examples provided.
booking_resolve_request ~136
Approve or reject a pending reschedule request (SessionRequest) that a client proposed from the portal — closes the bilateral coordination loop. outcome: "approved" applies the reschedule atomically (moves the session to the proposed slot in the same transaction); "rejected" requires a reason of at least 10 characters. Idempotent: a request already resolved returns a conflict with its current status. Emits the corresponding session lifecycle events.
| Name | Type | Req | Description |
|---|---|---|---|
| apiKey | string | — | — |
| orgSlug | string | yes | — |
| outcome | string | yes | — |
| reason | string | — | — |
| requestId | string | yes | — |
No output schema declared.
No examples provided.
booking_update_status ~150
Advance a session through the Servicialo lifecycle: confirm, start, complete, or mark as no-show. NOTE: the "deliver" action is NOT available via MCP (ref PDC-SEC-001) — MCP authentication cannot validate actor-as-Proveedor. Delivery must be performed via the REST endpoint PATCH /api/organizations/[orgSlug]/coordinalo/sessions/[sessionId]/deliver which enforces provider binding.
| Name | Type | Req | Description |
|---|---|---|---|
| action | string | yes | — |
| apiKey | string | — | — |
| deliveryType | string | — | — |
| noShowType | string | — | — |
| notes | string | — | — |
| orgSlug | string | yes | — |
| sessionId | string | yes | — |
No output schema declared.
No examples provided.
cierre_cerrar_org ~69
Close the organizational period. Requires ALL active clients with historialCompleto=true to be closed first. Freezes the period. Requires confirm: true.
| Name | Type | Req | Description |
|---|---|---|---|
| apiKey | string | — | — |
| confirm | boolean | yes | — |
| orgSlug | string | yes | — |
| periodo | string | yes | — |
No output schema declared.
No examples provided.
cierre_crear_cliente ~86
Create a client monthly closing (immutable financial snapshot). Requires historialCompleto=true on the client. One closing per client per period. Requires confirm: true.
| Name | Type | Req | Description |
|---|---|---|---|
| apiKey | string | — | — |
| clientId | string | yes | — |
| confirm | boolean | yes | — |
| notas | string | — | — |
| orgSlug | string | yes | — |
| periodo | string | yes | — |
No output schema declared.
No examples provided.
cierre_distribuir_utilidades ~85
Distribute profits for a closed period. Freezes the current period and all prior open periods. Requires the period to be organizationally closed first. Requires confirm: true.
| Name | Type | Req | Description |
|---|---|---|---|
| apiKey | string | — | — |
| confirm | boolean | yes | — |
| montoDistribuido | number | yes | — |
| orgSlug | string | yes | — |
| periodo | string | yes | — |
No output schema declared.
No examples provided.
cierre_eliminar_cliente ~65
Delete (reopen) a client closing. Only allowed if the organizational period is not frozen. Requires confirm: true.
| Name | Type | Req | Description |
|---|---|---|---|
| apiKey | string | — | — |
| cierreId | string | yes | — |
| confirm | boolean | yes | — |
| orgSlug | string | yes | — |
No output schema declared.
No examples provided.
cierre_evaluar_org ~65
Evaluate organizational closing readiness for a period. Returns: active clients, closed count, excluded count, pending count, completion percentage, and whether closing is possible.
| Name | Type | Req | Description |
|---|---|---|---|
| apiKey | string | — | — |
| orgSlug | string | yes | — |
| periodo | string | yes | — |
No output schema declared.
No examples provided.
cierre_listar_clientes ~57
List client closings for an organization. Filter by period and/or client.
| Name | Type | Req | Description |
|---|---|---|---|
| apiKey | string | — | — |
| clientId | string | — | — |
| orgSlug | string | yes | — |
| periodo | string | — | — |
No output schema declared.
No examples provided.
cierre_listar_utilidades ~62
List retained earnings (utilidades retenidas) for an organization. Returns per-period records with accumulated totals: ingresos, costos, utilidadNeta, distribuido, retenido.
| Name | Type | Req | Description |
|---|---|---|---|
| apiKey | string | — | — |
| orgSlug | string | yes | — |
No output schema declared.
No examples provided.
cierre_preview_cliente ~67
Preview the financial snapshot for a client in a period WITHOUT creating the closing. Returns totals for ventas, cobros, pagos, sessions.
| Name | Type | Req | Description |
|---|---|---|---|
| apiKey | string | — | — |
| clientId | string | yes | — |
| orgSlug | string | yes | — |
| periodo | string | yes | — |
No output schema declared.
No examples provided.
client_create ~126
Create a new client in the organization. If a Person with the same email exists, it will be linked (not duplicated).
| Name | Type | Req | Description |
|---|---|---|---|
| apiKey | string | — | — |
| comuna | string | — | — |
| direccion | string | — | — |
| string | — | — | |
| idempotencyKey | string | — | — |
| lastName | string | yes | — |
| name | string | yes | — |
| notes | string | — | — |
| orgSlug | string | yes | — |
| phone | string | — | — |
| proveedorTitularId | string | — | — |
| rut | string | — | — |
No output schema declared.
No examples provided.
client_get ~62
Get complete details of a client including financial summary and recent sessions.
| Name | Type | Req | Description |
|---|---|---|---|
| apiKey | string | — | — |
| clientId | string | yes | — |
| includeFinancials | boolean | — | — |
| includeHistory | boolean | — | — |
| orgSlug | string | yes | — |
No output schema declared.
No examples provided.
client_list ~79
List clients of an organization with search and pagination. Can filter by provider or outstanding debt.
| Name | Type | Req | Description |
|---|---|---|---|
| apiKey | string | — | — |
| cursor | string | — | — |
| hasDebt | boolean | — | — |
| limit | integer | — | — |
| orgSlug | string | yes | — |
| providerId | string | — | — |
| search | string | — | — |
No output schema declared.
No examples provided.
client_update ~106
Update an existing client's personal data. Email cannot be changed via MCP.
| Name | Type | Req | Description |
|---|---|---|---|
| apiKey | string | — | — |
| clientId | string | yes | — |
| comuna | string | — | — |
| direccion | string | — | — |
| lastName | string | — | — |
| name | string | — | — |
| notes | string | — | — |
| orgSlug | string | yes | — |
| phone | string | — | — |
| proveedorTitularId | string | — | — |
| rut | string | — | — |
No output schema declared.
No examples provided.
comms_create_campaign ~223
Create a new email campaign with HTML body to send to a segmented audience. Supports variable substitution: {nombre}, {apellido}, {nombre_completo}, {email}, {telefono}, {organizacion}. Use audienceType "predefined" with audienceId "active"/"inactive"/"new"/"withPhone"/"withoutPhone", or "adhoc" with custom filters. On send, links in the body are auto-tagged with UTMs (utm_campaign = stable slug from campaign name) and a legal footer with unsubscribe link is appended. Returns campaign ID and recipient count. Campaign starts as draft — use comms_send_campaign to execute. Requires confirm: true.
| Name | Type | Req | Description |
|---|---|---|---|
| adHocFilters | object | — | — |
| apiKey | string | — | — |
| audienceId | string | — | — |
| audienceType | string | yes | — |
| confirm | boolean | yes | — |
| emailBody | string | yes | — |
| emailSubject | string | — | — |
| name | string | yes | — |
| orgSlug | string | yes | — |
| type | string | — | — |
No output schema declared.
No examples provided.
comms_get_campaign ~63
Get details of a specific campaign with optional delivery logs per recipient.
| Name | Type | Req | Description |
|---|---|---|---|
| apiKey | string | — | — |
| campaignId | string | yes | — |
| includeLogs | boolean | — | — |
| logLimit | integer | — | — |
| orgSlug | string | yes | — |
No output schema declared.
No examples provided.
comms_get_preferences ~46
Get the communication preferences for an organization (WhatsApp, email, confirmation, reminder channels and messages).
| Name | Type | Req | Description |
|---|---|---|---|
| apiKey | string | — | — |
| orgSlug | string | yes | — |
No output schema declared.
No examples provided.
comms_list_audiences ~111
List the saved audiences/segments used for campaign targeting, each with its filter definition and campaign-usage count. Set includeCount: true to also resolve how many clients currently match each audience, and includePredefined: true to include built-in predefined segments. Read-only — use before comms_create_campaign to pick a target audience.
| Name | Type | Req | Description |
|---|---|---|---|
| apiKey | string | — | — |
| includeCount | boolean | — | — |
| includePredefined | boolean | — | — |
| orgSlug | string | yes | — |
No output schema declared.
No examples provided.
comms_list_campaigns ~64
List communication campaigns (WhatsApp/email) for the organization. Filter by status.
| Name | Type | Req | Description |
|---|---|---|---|
| apiKey | string | — | — |
| cursor | string | — | — |
| limit | integer | — | — |
| orgSlug | string | yes | — |
| status | string | — | — |
No output schema declared.
No examples provided.
comms_render_message ~149
Render a communication template as a visual image (PNG). Available templates: session-confirmation, session-reminder, payment-reminder. Use action "preview" to get the image URL, "send" to render and send via WhatsApp with the image attached. Each template requires specific data fields (clientName, providerName, date, time, etc.).
| Name | Type | Req | Description |
|---|---|---|---|
| action | string | — | — |
| apiKey | string | — | — |
| clientId | string | — | — |
| data | object | yes | — |
| orgSlug | string | yes | — |
| template | string | yes | — |
| whatsappBody | string | — | — |
| whatsappTo | string | — | — |
| width | number | — | — |
No output schema declared.
No examples provided.
comms_send_campaign ~113
Execute a draft or scheduled campaign. Sends messages to all matching recipients asynchronously, skipping recipients with email opt-out or bounced addresses (logged as "skipped"). Campaign must be in draft or scheduled status. Returns immediately — use comms_get_campaign to track progress (sent/delivered/opened/clicked update via provider webhooks). Requires confirm: true.
| Name | Type | Req | Description |
|---|---|---|---|
| apiKey | string | — | — |
| campaignId | string | yes | — |
| confirm | boolean | yes | — |
| orgSlug | string | yes | — |
No output schema declared.
No examples provided.
comms_send_message ~102
Send a single WhatsApp or email message to a specific client. Use templateKey for predefined templates or customMessage for free text. Requires confirm: true.
| Name | Type | Req | Description |
|---|---|---|---|
| apiKey | string | — | — |
| channel | string | yes | — |
| clientId | string | yes | — |
| confirm | boolean | yes | — |
| customMessage | string | — | — |
| orgSlug | string | yes | — |
| templateKey | string | — | — |
| variables | object | — | — |
No output schema declared.
No examples provided.
comms_update_preferences ~147
Enable or disable communication channels and features for an organization. Partial update — only provided fields are changed. Creates preferences if none exist.
| Name | Type | Req | Description |
|---|---|---|---|
| apiKey | string | — | — |
| emailConfirmationEnabled | boolean | — | — |
| emailEnabled | boolean | — | — |
| emailReminderEnabled | boolean | — | — |
| orgSlug | string | yes | — |
| phoneRequired | boolean | — | — |
| phoneRequiredMessage | string | — | — |
| primaryChannel | string | — | — |
| whatsappConfirmationEnabled | boolean | — | — |
| whatsappConfirmationMessage | string | — | — |
| whatsappEnabled | boolean | — | — |
| whatsappReminderEnabled | boolean | — | — |
| whatsappReminderMessage | string | — | — |
No output schema declared.
No examples provided.
delivery_confirmations_list ~172
List the delivery-confirmation ledger for an organization's sessions. Each row reflects the DeliveryProof overlay: whether the provider confirmed delivery, whether the client confirmed, and whether the system auto-confirmed after the verification window (silence). Filter by state — awaiting_client (provider confirmed, client has not, not yet auto-confirmed), confirmed (client confirmed or auto-confirmed), or provider_pending (proof exists but the provider has not confirmed delivery) — or look one up by sessionId. Privacy: returns confirmation flags/timestamps and a hasEvidence boolean only, never the evidence summary content.
| Name | Type | Req | Description |
|---|---|---|---|
| apiKey | string | — | — |
| limit | integer | — | — |
| orgSlug | string | yes | — |
| page | integer | — | — |
| sessionId | string | — | — |
| state | string | — | — |
No output schema declared.
No examples provided.
disputes_list ~72
List disputes for an organization. Filter by status or type. Returns disputes with client and provider info.
| Name | Type | Req | Description |
|---|---|---|---|
| apiKey | string | — | — |
| limit | integer | — | — |
| orgSlug | string | yes | — |
| page | integer | — | — |
| status | string | — | — |
| type | string | — | — |
No output schema declared.
No examples provided.
dunning_configure ~81
Update dunning (payment recovery) configuration for an organization. All fields except organizationSlug are optional — only provided fields are updated, rest stays unchanged.
| Name | Type | Req | Description |
|---|---|---|---|
| blockOnStep5 | boolean | — | — |
| enabled | boolean | — | — |
| gracePeriodDays | integer | — | — |
| organizationSlug | string | yes | — |
| steps | array | — | — |
No output schema declared.
No examples provided.
dunning_get_config ~57
Get the current dunning (payment recovery) configuration for an organization. Returns whether dunning is enabled, grace period, step timings, and blocking settings.
| Name | Type | Req | Description |
|---|---|---|---|
| apiKey | string | — | — |
| organizationSlug | string | yes | — |
No output schema declared.
No examples provided.
email_domain_delete ~72
Remove the configured email sending domain from the organization. This deletes it from both Resend and the database. The organization will revert to using the default Coordinalo sending address. Requires confirm: true.
| Name | Type | Req | Description |
|---|---|---|---|
| apiKey | string | — | — |
| confirm | boolean | yes | — |
| orgSlug | string | yes | — |
No output schema declared.
No examples provided.
email_domain_get ~63
Get the email sending domain configured for an organization and its verification status (PENDING, VERIFIED, FAILED). Returns null if no domain is configured. Use email_domain_register to set one up.
| Name | Type | Req | Description |
|---|---|---|---|
| apiKey | string | — | — |
| orgSlug | string | yes | — |
No output schema declared.
No examples provided.
email_domain_register ~79
Register a custom email sending domain for an organization via Resend. Returns DNS records that must be configured in the domain provider before verification. Replaces any previously configured domain. After adding DNS records, call email_domain_verify to check status.
| Name | Type | Req | Description |
|---|---|---|---|
| apiKey | string | — | — |
| domain | string | yes | — |
| orgSlug | string | yes | — |
No output schema declared.
No examples provided.
email_domain_verify ~70
Trigger DNS verification for the configured email domain and return updated status. Call this after the organization has added the required DNS records. Status will be VERIFIED (ready to send), PENDING (DNS not yet propagated), or FAILED.
| Name | Type | Req | Description |
|---|---|---|---|
| apiKey | string | — | — |
| orgSlug | string | yes | — |
No output schema declared.
No examples provided.
finance_aging ~87
Get accounts receivable aging report: pending charges grouped by age buckets (0-7, 7-30, 30-90, 90+ days). Use to answer "who owes money" or "old debts" questions.
| Name | Type | Req | Description |
|---|---|---|---|
| apiKey | string | — | — |
| cursor | string | — | — |
| limit | number | — | — |
| orgSlug | string | yes | — |
No output schema declared.
No examples provided.