Skip to main content
Glama

Practice Better MCP by usefulapi

Server Details

Read Practice Better clients, sessions, availability, services, packages, invoices and forms.

If you are the author of this connector, you can claim ownership by verifying the domain or GitHub account it belongs to. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Last Tested
Transport
Streamable HTTP · MCP 2025-06-18
URL
Repository
m190/usefulapi-mcp
GitHub Stars
0

TDQS

Score is being calculated.

Available Tools

15 tools
practice_better_find_clientsFind clients by name or email
Read-only
Inspect

Search client records by name, preferred name or email (case-insensitive text match). Practice Better has no search endpoint, so this reads the 500 most recent records (5 pages of 100) and filters them; complete says whether every record was checked. Returns at most max_results matches with the same fields as practice_better_list_clients. GET /consultant/records.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYesText to look for in first name, last name, preferred name or email.
statusNoOnly these statuses.
max_resultsNoMost matches to return, 1-50 (default 10).
practice_better_get_accountGet my account
Read-only
Inspect

The practitioner (API user) behind this connection: id, name, title, timezone, default currency, role flags and the practice (company) id and name. Settings, integrations and the bio are not returned. GET /consultant/profile.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

practice_better_get_availabilityGet available time slots
Read-only
Inspect

Open booking slots of one practitioner for one service, starting on the given day: start, end and duration of each slot. It follows the practitioner's booking settings. Needs a practitioner id and a service id. GET /consultant/availability/slots.

ParametersJSON Schema
NameRequiredDescriptionDefault
dayYesThe day to start from, ISO 8601 date-time with timezone, e.g. 2026-10-12T00:00:00Z.
typeNoSession type: face (in person), phone or virtual.
package_idNoOnly slots usable with this client package.
service_idYesService id (practice_better_list_services).
location_idNoOnly slots at this location.
practitioner_idYesPractitioner id (practice_better_list_practitioners).
practice_better_get_clientGet client
Read-only
Inspect

One client record by id: status, name, preferred name, pronouns, email, phones, timezone, activity dates and tag ids. Date of birth, address, insurance, emergency contacts, notes and health history are not returned. GET /consultant/records/{recordId}.

ParametersJSON Schema
NameRequiredDescriptionDefault
record_idYesClient record id.
practice_better_get_invoiceGet invoice
Read-only
Inspect

One invoice by id with its line items (date, quantity, amount, tax) and totals. Descriptions, payment history and billing contact are not returned. GET /consultant/payments/invoices/{invoiceId}.

ParametersJSON Schema
NameRequiredDescriptionDefault
invoice_idYesInvoice id.
practice_better_get_sessionGet session
Read-only
Inspect

One session (appointment) by id: date, duration, service, practitioner, client (id and name), location and status. Booking notes and session notes are not returned. For a group session pass record_id to see one client's view. GET /consultant/sessions/{sessionId}.

ParametersJSON Schema
NameRequiredDescriptionDefault
record_idNoGroup sessions only: the client record id.
session_idYesSession id.
practice_better_list_clientsList clients
Read-only
Inspect

List client records, newest first: id, status, name, email, phone, timezone and activity dates. Date of birth, address, insurance and notes are not returned. A page holds at most 100 records. To look up one person by name or email use practice_better_find_clients. GET /consultant/records.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoResults per page, 1-100 (default 25).
statusNoOnly these statuses. pendingcreate = prospective client, created = added client.
after_idNoCursor for lists in ascending order: return items after this id. Normally use before_id.
before_idNoCursor: pass next_page.before_id of the previous reply to get the next page (lists are newest first).
has_accountNotrue = only clients with an active Practice Better user account.
child_recordsNotrue = only sub-records (dependants), false = only primary records.
modified_afterNoISO 8601 date-time with a timezone, e.g. 2026-10-01T00:00:00Z.
modified_beforeNoISO 8601 date-time with a timezone, e.g. 2026-10-01T00:00:00Z.
practice_better_list_form_requestsList form requests
Read-only
Inspect

List forms sent to clients, newest first: which form, which client (id), practitioner, and whether it was started or completed, with dates. The answers are never returned. GET /consultant/formrequests.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoResults per page, 1-100 (default 25).
after_idNoCursor for lists in ascending order: return items after this id. Normally use before_id.
before_idNoCursor: pass next_page.before_id of the previous reply to get the next page (lists are newest first).
completedNotrue = only completed requests, false = only incomplete ones.
record_idsNoOnly requests for these client records.
created_afterNoCreated on or after this date-time.
created_beforeNoCreated on or before this date-time.
practitioner_idsNoOnly requests of these practitioners.
practice_better_list_formsList forms
Read-only
Inspect

List the form templates of the practice (intake forms, questionnaires, consent forms): id and name only. GET /consultant/forms.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoResults per page, 1-100 (default 25).
after_idNoCursor for lists in ascending order: return items after this id. Normally use before_id.
team_forNoWhose items: self (default), all (all team members) or other (team members except you).
before_idNoCursor: pass next_page.before_id of the previous reply to get the next page (lists are newest first).
practice_better_list_invoicesList invoices
Read-only
Inspect

List client invoices, newest first: number, date, totals, amount due and paid, payment status, client (id and name) and practitioner. Payment history and line items are not in the list; use practice_better_get_invoice. GET /consultant/payments/invoices.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoResults per page, 1-100 (default 25).
after_idNoCursor for lists in ascending order: return items after this id. Normally use before_id.
before_idNoCursor: pass next_page.before_id of the previous reply to get the next page (lists are newest first).
record_idsNoOnly invoices of these client records.
payment_statusNoOnly invoices with these payment statuses.
practitioner_idsNoOnly invoices of these practitioners.
invoice_date_afterNoInvoice date on or after this date-time.
invoice_date_beforeNoInvoice date on or before this date-time.
practice_better_list_packagesList packages
Read-only
Inspect

List the package definitions (bundles of sessions or programs) the practice sells: id, name and SKU. GET /consultant/packages.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoResults per page, 1-100 (default 25).
after_idNoCursor for lists in ascending order: return items after this id. Normally use before_id.
before_idNoCursor: pass next_page.before_id of the previous reply to get the next page (lists are newest first).
practice_better_list_practitionersList practitioners
Read-only
Inspect

List the practitioners and admin users of the practice, with id, name, role flags and activation status. Use the ids to filter sessions and invoices. GET /company/administration/members.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

practice_better_list_servicesList services
Read-only
Inspect

List the services (appointment types) the practice offers: id, name, duration, group or 1-1, session types and SKU. GET /consultant/services.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoResults per page, 1-100 (default 25).
after_idNoCursor for lists in ascending order: return items after this id. Normally use before_id.
team_forNoWhose items: self (default), all (all team members) or other (team members except you).
before_idNoCursor: pass next_page.before_id of the previous reply to get the next page (lists are newest first).
practice_better_list_sessionsList sessions (appointments)
Read-only
Inspect

List sessions (appointments), newest first: date, duration, service, practitioner, client (id and name), status and payment status. Booking notes and session notes are not returned. Filter by date range, practitioner, client record, service or group/1-1. GET /consultant/sessions.

ParametersJSON Schema
NameRequiredDescriptionDefault
groupNotrue = only group sessions, false = only 1-1 sessions.
limitNoResults per page, 1-100 (default 25).
after_idNoCursor for lists in ascending order: return items after this id. Normally use before_id.
before_idNoCursor: pass next_page.before_id of the previous reply to get the next page (lists are newest first).
date_afterNoSessions on or after this date-time (ISO 8601 with timezone).
record_idsNoOnly sessions of these client records.
date_beforeNoSessions on or before this date-time (ISO 8601 with timezone).
service_idsNoOnly sessions of these services (ids from practice_better_list_services).
practitioner_idsNoOnly sessions of these practitioners (ids from practice_better_list_practitioners).
practice_better_list_tagsList tags
Read-only
Inspect

List the tags the practice uses to organize clients: id and name. A client record carries tag ids. GET /tags.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoResults per page, 1-100 (default 25).
after_idNoCursor for lists in ascending order: return items after this id. Normally use before_id.
before_idNoCursor: pass next_page.before_id of the previous reply to get the next page (lists are newest first).

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 15 tool updates
    • First observedpractice_better_find_clients
    • First observedpractice_better_get_account
    • First observedpractice_better_get_availability
    • First observedpractice_better_get_client
    • First observedpractice_better_get_invoice
    • First observedpractice_better_get_session
    • First observedpractice_better_list_clients
    • First observedpractice_better_list_form_requests
    • First observedpractice_better_list_forms
    • First observedpractice_better_list_invoices
    • First observedpractice_better_list_packages
    • First observedpractice_better_list_practitioners
    • First observedpractice_better_list_services
    • First observedpractice_better_list_sessions
    • First observedpractice_better_list_tags

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    A
    maintenance
    Enables AI assistants to read field-service business data through a read-only MCP integration, including jobs, invoices, quotes, schedules, clients, and draft client messages. It handles authentication, token refresh, throttling, schema versioning, and account-currency formatting for live Jobber accounts.
    7
    MIT
  • F
    license
    Not graded
    quality
    C
    maintenance
    Enables read-only access to InvoiceNinja data, including invoices, expenses, clients, and tax reports, for AI assistants like Claude.
    1
    -
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.