Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Description from the maker (original English)
Read Practice Better clients, sessions, availability, services, packages, invoices and forms.
These three are never merged into one score: opinions, measurements and popularity are different things.
We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.
Pick the AI app you use, then copy the settings.
You need
Which app do you use?
Pick your app above. We remember it, so next time the button says “Install in …”.
Works in Claude on the web, desktop and mobile:
https://practice-better.usefulapi.io/mcpRun this in your terminal
claude mcp add --transport http practice-better https://practice-better.usefulapi.io/mcpPaste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"practice-better": {
"url": "https://practice-better.usefulapi.io/mcp"
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
Paste into .vscode/mcp.json in your project
{
"servers": {
"practice-better": {
"type": "http",
"url": "https://practice-better.usefulapi.io/mcp"
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
ChatGPT connects only to servers on the internet:
https://practice-better.usefulapi.io/mcpMenu names can differ slightly by plan and over time.
Your choice stays on this device in a cookie; no account needed.
These settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
Tool names and descriptions exactly as the server reported them on Nov 6, 2026. The maker wrote them, not us; we show them as plain text.
practice_better_get_accountThe 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.
practice_better_list_practitionersList 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.
practice_better_list_clientsList 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
practice_better_find_clientsSearch 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_result
practice_better_get_clientOne 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}.
practice_better_list_sessionsList 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.
practice_better_get_sessionOne 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}.
practice_better_get_availabilityOpen 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.
practice_better_list_servicesList the services (appointment types) the practice offers: id, name, duration, group or 1-1, session types and SKU. GET /consultant/services.
practice_better_list_packagesList the package definitions (bundles of sessions or programs) the practice sells: id, name and SKU. GET /consultant/packages.
practice_better_list_tagsList the tags the practice uses to organize clients: id and name. A client record carries tag ids. GET /tags.
practice_better_list_invoicesList 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.
practice_better_get_invoiceOne 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}.
practice_better_list_formsList the form templates of the practice (intake forms, questionnaires, consent forms): id and name only. GET /consultant/forms.
practice_better_list_form_requestsList 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.
We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 6, 2026
The registry name was verified against the domain usefulapi.io (the registry checks domain ownership)
We have not read this repo from GitHub yet
We have not read this repo from GitHub yet
Responded in 15 ms (HTTP 200)
No sign-in needed
Read 15 tool descriptions and found no hidden instructions to the AI
Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.
It passed 3 of 3 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.
The registry does not list a required key, though some servers ask you to sign in on first use.
It runs in the maker’s cloud. Connect over the internet with nothing to install, but what you send passes through the maker’s servers.
The GitHub repo last changed –, and the latest version (1.22.3) reached the registry yesterday.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. It connects by URL, so apps that accept remote MCP servers work too, such as ChatGPT in developer mode.
In the same category: Spec Driven Development, Remote Desktop Commander, LickityClick
Servers in the same category from other makers, sorted by stars.
Reading a card:★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Create, edit and track LickityClick short links, campaigns and click stats from your AI assistant.
Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.
Use Practice Better from Claude, Cursor, or any MCP client — read-only access to clients, sessions, booking slots, services, packages, invoices and form requests. Hosted, no local install: connect with your own Practice Better credentials.
Patient data: do not use this server with protected health information (PHI). We do not sign HIPAA Business Associate Agreements (BAAs). See https://usefulapi.io/terms/#5-acceptable-use.
Live endpoint: https://practice-better.usefulapi.io/mcp · Homepage: https://usefulapi.io/practice-better
https://practice-better.usefulapi.io/mcp.claude mcp add --transport http practice-better https://practice-better.usefulapi.io/mcp, then run /mcp to log in.{
"mcpServers": { "practice-better": { "url": "https://practice-better.usefulapi.io/mcp" } } }
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 Practice Better credentials.
Step-by-step setup, where to find your credentials, and FAQ: https://usefulapi.io/practice-better/
| Tool | Type | What it does |
|---|---|---|
practice_better_get_account | read | Get my account |
practice_better_list_practitioners | read | List practitioners |
practice_better_list_clients | read | List clients |
practice_better_find_clients | read | Find clients by name or email |
practice_better_get_client | read | Get client |
practice_better_list_sessions | read | List sessions (appointments) |
practice_better_get_session | read | Get session |
practice_better_get_availability | read | Get available time slots |
practice_better_list_services | read | List services |
practice_better_list_packages | read | List packages |
practice_better_list_tags | read | List tags |
practice_better_list_invoices | read | List invoices |
practice_better_get_invoice | read | Get invoice |
practice_better_list_forms | read | List forms |
practice_better_list_form_requests | read | List form requests |
practice_better_usage_status | meta | Usage status (free-tier meter) |
practice_better_request_feature | meta | Request a missing feature |
practice_better_upgrade | meta | Upgrade to Pro or Pro+ |
practice_better_cancel_subscription | meta | Cancel the Pro subscription |
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.
| Plan | Price | Limit |
|---|---|---|
| Free | $0 | 50 tool calls / month |
| Pro (per practice) | $9/mo or $90/yr (2 months free) | Unlimited* |
\*Pro has a fair use limit of 10,000 tool calls a month on this server. For more, write to support@usefulapi.io.
Pro covers this server only. Subscribe with practice_better_upgrade (it returns a Stripe Checkout link). Cancel any time with practice_better_cancel_subscription: Pro continues to the end of the paid period, with no refund for the current period, and running practice_better_upgrade before then undoes the cancel. Or write to support@usefulapi.io.
MIT © usefulapi. Not affiliated with or endorsed by Practice Better.