Skip to main content
Clients discover these automatically with tools/list; this page is the human-readable version. There are two kinds:
  • Generic tools are driven by the API’s resource registry, so they cover every resource on the API Reference — including ones added after this page was written.
  • Curated tools wrap the common clinical flows with friendlier parameters. They use the same services as the generic tools and the REST API.

A typical booking

1

Discover

list_entity_types once per session — the agent learns the resources, attributes and accepted input.
2

Find the patient

patient-lookup-tool with a name, phone or email; patient-info-tool for the full record.
3

Find the reference ids

query_entities on locations, appointment_types and practitioners?active=eq:1.
4

Check availability

check_availability with the location and appointment type (and optionally a practitioner and date range) — the agent offers only slots that are actually free.
5

Book

appointment-book-tool with the ids and one of the returned slots; the end defaults to the appointment type’s duration. A time that is no longer free is refused (slot_unavailable) — check again and offer the next.
Agents should confirm the details with the person before calling any write tool. Write tools are marked destructive in their annotations so clients that ask for confirmation will do so.

Generic tools

list_entity_types

Read-only. Returns every resource with its attributes (filterable / sortable flags), the write operations it supports and the input accepted per operation — the MCP form of GET /schema. No parameters.
Read-only. Lists a resource with the API’s filter syntax.Returns the same data / meta / links envelope as the REST list endpoint.
Read-only. One record by id.
Create, update or delete any writable resource through the same path as POST / PATCH / DELETE on the REST API — validation, business rules and audit trail included.Unsupported operations (a read-only resource, or update on payment_allocations) and rule refusals come back as tool errors with the API’s message.
Read-only. Free, bookable slots for a location and appointment type — the MCP form of GET /availability. Slots are in the clinic timezone with the practitioner_id, start and end to pass to appointment-book-tool (or group_master_id for a group slot); unavailable_dates lists days with nothing free.

Curated tools

patient-lookup-tool

Read-only. Searches patients by name, phone number or email.
Read-only. Detailed information about one patient.
Read-only. A patient’s appointments — upcoming only by default.
Books a new appointment. Same validation as write_entity on appointments (active patient, location, practitioner; resource at that location; the time free in the diary — call check_availability first) and triggers confirmation messaging as a staff booking would.
Moves an existing appointment, keeping its duration unless a new end is given; can also change practitioner or location. Cascades to grouped appointments and records the reschedule in the audit trail.
Cancelling, marking missed, arriving or reinstating an appointment is done with write_entityoperation: update with attributes: {"status": "cancelled", "cancel_note": "…"} — see Writing.