mcp-cliniko
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| CLINIKO_API_KEY | Yes | Your Cliniko API key |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {} |
| prompts | {} |
| resources | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_patientsC | List or search for patients |
| get_patientC | Get a specific patient by ID |
| create_patientC | Create a new patient |
| update_patientC | Update an existing patient |
| delete_patientA | Delete (archive) a patient |
| list_appointmentsC | List or search for appointments |
| get_appointmentC | Get a specific appointment by ID |
| create_appointmentC | Create a new appointment |
| update_appointmentC | Update an existing appointment |
| cancel_appointmentC | Cancel an appointment |
| delete_appointmentC | Delete an appointment completely |
| get_available_timesC | Get available appointment times for a practitioner |
| list_practitionersC | List all practitioners |
| list_appointment_typesB | List all appointment types |
| list_businessesB | List all businesses |
| generate_test_dataB | Generate synthetic test data for Cliniko (Australian healthcare data) |
| cleanup_test_dataA | Delete all test patients (patients with emails ending in @gmail.com, @outlook.com, etc) |
| generate_comprehensive_test_dataB | Generate comprehensive synthetic test data across all Cliniko categories |
| cleanup_comprehensive_test_dataC | Clean up all test data with granular control and dry-run option |
| list_invoicesB | List invoices with filtering options (READ-ONLY - invoices must be created in Cliniko web interface) |
| get_invoiceA | Get details of a specific invoice (READ-ONLY) |
| get_appointment_invoicesA | Get invoices for a specific appointment (READ-ONLY) |
| get_patient_invoicesA | Get invoices for a specific patient (READ-ONLY) |
| list_invoice_itemsB | List items in an invoice (READ-ONLY) |
| how_to_create_invoicesB | Get instructions on how to create invoices in Cliniko (manual process) |
| demo_invoice_generationA | Demo: Generate test patients and appointments, then show how to create invoices. NOTE: Cliniko API is READ-ONLY for invoices - they must be created via the web interface. |
| display_invoices_for_dateB | Display all existing invoices for a specific date (READ-ONLY). Invoices must be created manually in Cliniko. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| Individual patient data | Individual patient data |
| List of all patients | List of all patients |
| Individual appointment data | Individual appointment data |
| List of appointments | List of appointments |
| Today's appointments | Today's appointments |
| List of all practitioners | List of all practitioners |
| List of all businesses | List of all businesses |
| List of all appointment types | List of all appointment types |
| Cliniko API OpenAPI specification | Cliniko API OpenAPI specification |
TDQS
Scored across 27 tools
Most tools target distinct resources (patients, appointments, invoices) with clear purposes. However, cleanup_test_data and cleanup_comprehensive_test_data are very similar, and demo_invoice_generation overlaps with how_to_create_invoices in providing guidance.
All tool names follow a consistent verb_noun pattern in snake_case (e.g., create_patient, list_appointments, delete_patient). No mixing of styles or ambiguous verbs.
27 tools is slightly high for a healthcare practice server. Multiple test data generation and cleanup tools add redundancy, and several invoice tools are read-only due to API limitations, reducing effective utility. A more streamlined set (around 15-20) would be better.
CRUD operations are covered for patients and appointments, along with listings and searches. Invoice operations are read-only but acknowledged. Missing features like appointment notes or patient tags are minor given the domain focus.