splose_get_account
Get the account behind the API key
The organisation and the practitioner who owns the API key, plus the key's expiry date. Good first call. GET /me.
Takes no parameters.
io.usefulapiPublished by usefulapi.ioOfficial publisherv1.15.4Updated Nov 7, 2026
Read splose patients, appointments, invoices, cases; book and cancel appointments, record payments.
The publisher's own server: Ably MCP by usefulapi
Remote MCP server for Splose practice management: read patients, appointments, invoices and cases, and book, cancel or record payments.
Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.
Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.
Read https://sourceweft.com/mcp/io.usefulapi%2Fsplose/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.Add this to your client's mcpServers config.
{
"mcpServers": {
"splose-by-usefulapi": {
"type": "http",
"url": "https://splose.usefulapi.io/mcp"
}
}
}Read splose patients, appointments, invoices, cases; book and cancel appointments, record payments.
Live endpoint: https://splose.usefulapi.io/mcp · Homepage: https://usefulapi.io/splose
https://splose.usefulapi.io/mcp.claude mcp add --transport http splose https://splose.usefulapi.io/mcp, then run /mcp to log in.Add only the URL. Do not add an Authorization header or an API key to the client config: the server signs you in with OAuth, and the login page asks for your splose credentials.
Step-by-step setup, where to find your credentials, and FAQ: https://usefulapi.io/splose/
On first connect you'll paste your splose API key and pick your region (Australia or UK). The workspace owner requests API access from splose Support (paid plans only), then creates the key in splose under My account, API.
read tools are read-only; write tools mutate data (clients should confirm them); meta tools report usage, manage your subscription or send a feature request.
*Pro has a fair use limit of 10,000 tool calls a month on this server. For more, write to [email protected].
Pro covers this server only. Subscribe with splose_upgrade (it returns a Stripe Checkout link). Cancel any time with splose_cancel_subscription: Pro continues to the end of the paid period, with no refund for the current period, and running splose_upgrade before then undoes the cancel. Or write to [email protected].
MIT © usefulapi. Not affiliated with or endorsed by splose.
Source: servers/splose/README.md at commit 4046075
Get the account behind the API key
The organisation and the practitioner who owns the API key, plus the key's expiry date. Good first call. GET /me.
Takes no parameters.
List patients
Patients (clients) of the practice, filtered, in id order, as short rows: id, name, email, birthdate, phones, tags, alert, archived. Use splose_get_patient for the full record. HEALTH DATA: only look people up when the user asks. GET /patients.
idsemailid_gtid_ltlastnamebirthdatefirstnameupdate_gtupdate_ltpatientTagphoneNumberinclude_archivedGet a patient
One patient in full: contact details, address, NDIS number and plan info, Medicare/health fund, emergency contact, tags and custom fields. HEALTH DATA. GET /patients/{id}.
patient_idrequiredList appointments
Appointments in id order: start/end (UTC), service, location, practitioner, price, note and the per-patient status (Arrived, Did not arrive, Cancelled, Completed, cancellation reason, invoice id). Filter by time window, patient, practitioner or status. GET /appointments.
id_gtid_ltstatusstart_gtstart_ltpatientIdupdate_gtupdate_ltpractitionerIdinclude_archivedstatus_update_gtstatus_update_ltGet an appointment
One appointment in full, with each patient's status, case, invoice and cancellation details. GET /appointments/{id}.
appointment_idrequiredList practitioners
Practitioners (staff): name, email, profession, role, active flag, online-booking flag, timezone and their location/service connections. GET /practitioners.
emailid_gtid_ltisActivelastnameroleNamefirstnameupdate_gtupdate_ltinclude_archivedGet a practitioner
One practitioner in full, including provider numbers and connections. GET /practitioners/{id}.
practitioner_idrequiredList locations
Practice locations: title, address, phone, email, timezone, online-booking flag and the ids of the services offered there. GET /locations.
id_gtid_lttitleupdate_gtupdate_ltinclude_archivedGet a location
One location in full. GET /locations/{id}.
location_idrequiredList services
The service catalogue: name, type, code, duration (minutes), unit (Hour or Each), price, tax type, group size and tags. GET /services.
codenametypeid_gtid_ltupdate_gtupdate_ltserviceTaginclude_archivedGet a service
One service in full, including provider-travel pricing. GET /services/{id}.
service_idrequiredList contacts
Contacts (GPs, plan managers, referrers, invoice recipients): name, type, email, address, phones and the ids of their patients, invoices and cases. GET /contacts.
emailid_gtid_ltlastnamefirstnameupdate_gtupdate_ltphoneNumberinclude_archivedGet a contact
One contact in full. GET /contacts/{id}.
contact_idrequiredList cases
Cases (funding referrals and plans): case number, budget, hours or appointment allowance, issue and expiry dates, tracking type, open flag and utilisation alert. HEALTH/FUNDING DATA. GET /cases.
id_gtid_ltstatuscontactIdpatientIdtrackTypeupdate_gtupdate_ltpractitionerIdinclude_archivedGet a case
One case in full, with its appointment connections. GET /cases/{id}.
case_idrequiredList invoices
Invoices: number, issue/due dates, patient, contact, location, practitioner, subtotal, tax, total, paid amount, status (Draft, Awaiting Payment, Paid), line items and payment ids. Use status=Awaiting Payment for what is owed. GET /invoices.
id_gtid_ltstatuspatientIdupdate_gtupdate_ltlocationIdpractitionerIdinclude_archivedGet an invoice
One invoice in full with its line items and payments. GET /invoices/{id}.
invoice_idrequiredList payments
Payments received: payment number, amount, date, patient, location, payment method, the invoices each payment settles and credit allocations. GET /payments.
id_gtid_ltpatientIdupdate_gtupdate_ltlocationIdinclude_archivedGet a payment
One payment in full. GET /payments/{id}.
payment_idrequiredList payment methods
Payment methods (cash, card, bank transfer and so on) with their ids, needed to record a payment. GET /payment-methods.
id_gtid_ltupdate_gtupdate_ltinclude_archivedList credit notes
Credit notes: number, invoice, patient, subtotal, tax, total, sent status, items and allocations. GET /credit-notes.
id_gtid_ltinvoiceIdpatientIdupdate_gtupdate_ltsentStatuspractitionerIdList waitlist items
Waitlist entries: patient, practitioner, location, wanted services, preferred days and time, tags and active flag. GET /waitlists.
id_gtid_ltisActivepatientIdupdate_gtupdate_ltlocationIdserviceIdsdateAddedGtdateAddedLtuserGroupIdpractitionerId+1 moreList patient forms
Forms sent to patients: title, status (Incomplete, In progress, Completed), patient, appointment, template and submission time. The form content is included. GET /patient-forms.
id_gtid_ltpatientIdupdate_gtupdate_lttemplateIdinclude_archivedList support activities
Non-appointment billable activities (NDIS support activities): patient, practitioner, service, item code, quantity, price, invoice id. GET /support-activities.
id_gtid_ltstart_gtstart_ltpatientIdupdate_gtupdate_ltinclude_archivedList busy times
Blocked-out time in practitioner calendars (leave, admin time): start/end, location, practitioners, type and note. GET /busy-times.
id_gtid_ltstart_gtstart_ltupdate_gtupdate_ltbusyTimeTypeIdpractitionerIdinclude_archivedList cancellation reasons
Cancellation reasons with their ids, needed to cancel an appointment. GET /cancellation-reasons.
id_gtid_ltupdate_gtupdate_ltinclude_archivedList patient custom fields
The custom fields defined for patients: id, name, type (short text, dropdown, date and so on), required flag and options. GET /custom-field/.
Takes no parameters.
Get a practitioner's availability
A practitioner's working-hours availability per date and location (start/end time, weekly or fortnightly repeat). The window is at most 100 days. This is the roster, not the open slots: use splose_find_free_slots for bookable times. GET /availabilities/{practitionerId}.
endDaterequiredstartDaterequiredlocationIdpractitioner_idrequiredFind free appointment slots
Bookable free slots for one or more practitioners at a location for one patient service, between from and to (the window is at most 7 days). Returns, per practitioner, the start/end of each open slot in UTC. Read-only. GET /free-slots.
tofromrequiredintervalserviceIdrequiredlocationIdrequiredpractitionerIdsrequiredCreate an appointment
WRITE: books ONE appointment for one patient with one practitioner, service and location, from start to end (UTC). Splose may send the patient its normal booking confirmation or reminders according to the practice's settings, and the appointment can later be invoiced. Check splose_find_free_slots first. Not idempotent: calling twice books twice. POST /appointments.
endrequirednotestartrequiredcaseIdpatientIdrequiredserviceIdrequiredlocationIdrequiredpractitionerIdrequiredUpdate (reschedule) an appointment
WRITE: changes the time, service, location, practitioner, case or patient of ONE existing appointment; send only the fields to change. Splose may notify the patient of a change according to the practice's settings. Same input twice gives the same result. PUT /appointments/{id}.
endstartcaseIdpatientIdserviceIdlocationIdappointment_idrequiredpractitionerIdCancel an appointment
WRITE: cancels ONE appointment with a cancellation reason (ids from splose_list_cancellation_reasons) and an optional note. The reason's billable rate may create a cancellation charge, and the patient may be notified per the practice's settings. For a group appointment pass patient_id to cancel only that patient's place; without it the whole appointment is cancelled. Cannot be undone through this server: confirm with the user first and pass confirm: true. POST /appointments/{id}/cancellation or /appointments/{id}/patients/{patientId}/cancellation.
noteconfirmrequiredreasonIdrequiredpatient_idappointment_idrequiredMark a patient as arrived
WRITE: marks the patient of ONE appointment as arrived (check-in). For a group appointment pass patient_id to mark just that patient. Marking twice has the same effect. POST /appointments/{id}/arrival or /appointments/{id}/patients/{patientId}/arrival.
patient_idappointment_idrequiredCreate a patient
WRITE: adds ONE new patient record (first and last name required). Search with splose_list_patients first to avoid a duplicate. Patient messaging follows the practice's settings and communicationPreference. Not idempotent: calling twice creates two patients. HEALTH DATA: only enter what the user supplied. POST /patients.
irnsexcityalertemailstatetitlecountrylastnamerequiredpronounstimezoneaddressL1+16 moreCreate a contact
WRITE: adds ONE contact (GP, plan manager, referrer, payer). type, name and email are required (type is Splose's contact type, e.g. Standard; see splose_list_contacts for the values in use). Not idempotent: calling twice creates two contacts. POST /contacts.
namerequiredtyperequiredemailrequiredstatetitlesuburbcountrylastNameaddressL1addressL2firstNamedoctorType+6 moreRecord a payment against an invoice
WRITE, MONEY: records ONE payment received (cash, card, transfer) against ONE invoice; it moves the invoice towards Paid and is shown in the patient's account. It does NOT charge anyone's card. amount must not exceed what is owed (check splose_get_invoice). Not idempotent: calling twice records two payments, and this server cannot delete a payment, so confirm the details with the user first and pass confirm: true. Ids come from splose_get_invoice and splose_list_payment_methods. POST /payments.
amountrequiredconfirmrequiredinvoiceIdrequiredpatientIdrequiredlocationIdrequiredpaymentDaterequiredpaymentMethodIdrequired100% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
io.usefulapiOfficial publisher
Hosted MCP server for Ably realtime messaging: inspect channel history, presence and occupancy, publish messages, and review app usage and configuration.
io.usefulapiOfficial publisher
Hosted read-only MCP server that lets an assistant look up Woffu company users, employment contracts, departments and offices.
io.usefulapiOfficial publisher
Hosted MCP server for White Label Loyalty: browse rewards, read a customer's points wallet and tier progress, and buy rewards with points.
io.usefulapiOfficial publisher
Hosted Weekdone connector that lets an assistant read weekly reports, teams, objectives and KPIs, and add report items, comments and KPI values.
io.usefulapiOfficial publisher
Hosted read-only MCP server that lets an assistant list WebinarKit webinars, their dates, series, meetings and white-label sub-accounts.
{ "mcpServers": { "splose": { "url": "https://splose.usefulapi.io/mcp" } }}