io.usefulapi/cliniko

Cliniko MCP by usefulapi

Hosted MCP server for Cliniko — patients, appointments, availability, and invoices for AI agents.

1.11.1
Version
remote
Transport
17
Tools

Security review

Partly reviewed

Reviewed 1h ago.

  • tools: 17 tools scanned
  • metadata: scanned
  • mediumReviewRemote tools take credentials as input

    Whatever an agent passes to a remote tool leaves the machine. Never send connection strings, tokens or passwords to a third-party MCP server unless it is the service those credentials belong to.

    cliniko_get_account

Tools (17)

  • cliniko_get_account

    Get the Cliniko account and subscription details for the authenticated API key. A good first call to sanity-check auth, shard, and User-Agent. GET /account.

  • cliniko_list_patients

    Search/list patients. Name/email filters use Cliniko 'contains' matching (q[]=field:~value). GET /patients.

  • cliniko_get_patient

    Fetch a single patient by id. GET /patients/{id}.

  • cliniko_list_appointments

    List individual appointments, optionally filtered by patient/practitioner/business/type and a starts_at date-time window (starts_from / starts_to, ISO 8601). GET /individual_appointments.

  • cliniko_get_appointment

    Fetch a single individual appointment by id. GET /individual_appointments/{id}.

  • cliniko_list_practitioners

    List practitioners in the account. GET /practitioners.

  • cliniko_list_businesses

    List businesses (practice locations) in the account. GET /businesses.

  • cliniko_list_appointment_types

    List appointment types (service definitions). GET /appointment_types.

  • cliniko_list_products

    List billable products/items. GET /products.

  • cliniko_list_invoices

    List invoices, optionally filtered by patient. GET /invoices.

  • cliniko_get_invoice

    Fetch a single invoice by id. GET /invoices/{id}.

  • cliniko_list_treatment_notes

    List treatment notes, optionally filtered by patient. NOTE: treatment notes are protected health information (PHI) — handle with care. Read-only. GET /treatment_notes.

  • cliniko_get_treatment_note

    Fetch a single treatment note by id. NOTE: treatment notes are protected health information (PHI). Read-only. GET /treatment_notes/{id}.

  • cliniko_list_available_times

    List bookable appointment slots for a business + practitioner + appointment type within a date range (from/to, yyyy-mm-dd, span <= 7 days). High-value booking-slot lookup. GET /businesses/{business_id}/practitioners/{practitioner_id}/appointment_types/{appointment_type_id}/available_times.

  • cliniko_next_available_time

    Get the single next bookable slot for a business + practitioner + appointment type (optionally from a date). GET /businesses/{business_id}/practitioners/{practitioner_id}/appointment_types/{appointment_type_id}/next_available_time.

  • cliniko_create_patient

    WRITE — creates a REAL new patient record in the live Cliniko practice. Requires first_name + last_name. POST /patients.

  • cliniko_create_appointment

    WRITE — books a REAL new individual appointment in the live Cliniko practice. Requires patient_id, practitioner_id, business_id, appointment_type_id, and starts_at (ISO 8601). ends_at defaults from the appointment type if omitted. POST /individual_appointments.