Can an AI assistant work inside a clinic safely? Yes, when every action it takes is gated, named and recorded.
Request a demoUpdated
wai runs Model Context Protocol servers that let an AI assistant such as Claude or ChatGPT, or a clinic's own agent, read and act in wai through the same tools, approval gates and audit trail as the clinic's own team. The public server at www.wellnessa-i.com/api/mcp needs no sign-in and answers what wai does and costs, and each clinic's own server signs every person in with OAuth 2.1 and holds every gated action until a named member of staff approves it.
The protocol is open, so the assistant can change and the rules do not. Whichever client connects, it reaches the clinic's wai through the doors described below, and nothing it does goes unrecorded.
| What you get | The public server | A clinic's own server |
|---|---|---|
| Who it is for | Anyone, and the assistants people ask about clinic software | A clinic's staff and the agents they authorise |
| Address | www.wellnessa-i.com/api/mcp | Set up with the clinic at onboarding |
| Protocol | Model Context Protocol over Streamable HTTP, JSON-RPC1 | Model Context Protocol over HTTP, JSON-RPC1 |
| Sign-in | None | OAuth 2.1 with PKCE, discovered from the server itself234, or a named token for a clinic's own agent |
| Tools | get_wai_overview and request_demo | Four doors, discover, describe, dispatch_readonly and dispatch, over hundreds of clinic operations |
| Actions that change something | A demo request, sent only with the person's agreement | Gated actions park as an approval card until an owner or admin releases them |
| Audit | The demo request lands where the website form lands | Every call recorded before it runs, named by person or agent |
| In the client | The wai mark in the connector list | The wai mark, and a sign-in screen showing the client's mark beside it |
The clinic server lists four tools. discover searches the catalogue and returns the operations that match, describe returns one operation's inputs and its gate, dispatch_readonly runs reads, and dispatch runs the rest. An assistant finds what it needs by asking, so its context holds a handful of tools rather than hundreds.
Patients, consultations, results, medications, documents and letters. A read such as get_patient_record runs at once. A change such as add_medication or update_letter_draft waits for a person.
Conversations by phone, email, web form and WhatsApp, one thread per patient. find_conversation and search_conversations read. send_on_thread and schedule_send_later wait for approval before anything reaches a patient.
Booking types, availability and rooms. rooms_free reads. schedule_booking and room_book wait for approval.
Invoices, payments and payouts in the clinic's own Stripe account. stripe_find_payments reads. stripe_create_payment_link waits for approval.
The weekly pay run for a clinic's clinicians, read in full, with every approval, hold and vendor bill gated.
list_waiting_actions and show_waiting_action show what is parked, today_brief and search_audit_trail show the day and its record, and web_research and academic_search answer with sources.
get_wai_overview returns what wai is, the published plans and prices, the pilot terms and the cities where it is live. request_demo sends the same request as the demo form, with the person's name, work email, clinic and city, and the team replies within one working day.
See it run on one of your own consultations or a day at your front desk. Fifteen minutes on video.
Request a demoEvery operation carries its own gate. A gated call does not run. It parks as an approval card with a plain summary of what it would do, the assistant is told that nothing has happened yet, and it is never reported as done. A member of staff with the owner or admin role releases it or declines it, and a card runs once.
A card not released within 48 hours goes stale and has to be proposed again, so nothing waits in a queue for a week and then acts on old facts.
A clinic's own agent, connected with a named token, can propose and never approve. Release always takes a person signed in as themselves.
A client that has never met the server finds the sign-in route from the server itself, registers, and sends the person to a consent screen that only a signed-in member of the clinic's staff can approve. PKCE with S256 is required, codes last 60 seconds and are used once, access tokens last an hour, refresh tokens rotate on every use, and every secret is stored only as a hash.
A clinic's own agent sees only the parts of wai its token allows, and a tool outside them is hidden from the catalogue and refused if guessed. An agent can be stopped from the staff screen, and its access revoked there too.
Every call is written to the audit trail before it runs, naming the tool, its input and who asked, as a named person for an OAuth connection or a named agent for a token. Each row carries the hash of the one before it, so a gap or an edit shows.
What an assistant reads through the server reaches the assistant's own provider, so a clinic connects only assistants it has an agreement with. wai holds a SOC 2 Type II report, sent on request, and each clinic's records are hosted in its own country.
The public server is open to every assistant. A clinic's own server comes with wai Admin, the front desk, priced per location after a demo, beside the published Clinician plans on the pricing page.
The Wellness, a private clinic in London, runs on wai every day, and its team works through these servers from Claude, with every gated action released by a person. Every clinician there has 15 hours a week back, as published in the customer story. The integrations page lists the systems wai connects to, and the security page sets out the controls behind every call.
What a demo shows
A Model Context Protocol server lets an AI assistant use a system's tools in a standard way. In healthcare the server has to add what the protocol leaves to it, sign-in for named people, a gate on every action that touches a patient and an audit trail. wai's clinic server does all three.
Yes, at https://www.wellnessa-i.com/api/mcp, with no sign-in. It has two tools, get_wai_overview for what wai does and costs, and request_demo to send a demo request with the person's agreement.
Four doors, discover, describe, dispatch_readonly and dispatch, over hundreds of clinic operations across the clinical record, the front desk, booking, invoices and payments, clinician pay, approvals and research.
A gated call parks as an approval card instead of running, and the assistant is told nothing has happened yet. An owner or admin at the clinic releases or declines it within 48 hours, and an agent connected with a token can never approve.
Yes. The clinic server is an OAuth 2.1 authorisation server with discovery by RFC 9728 and RFC 8414, dynamic client registration, PKCE with S256, one-hour access tokens and rotating refresh tokens. Only a signed-in member of the clinic's staff can approve a connection.
Yes. Every call is recorded before it runs, with the tool, its input and the named person or agent, in a hash-chained audit trail, and every approval, release and decline is recorded beside it.
Any client that speaks the Model Context Protocol. The public server works from ChatGPT in developer mode, Claude as a custom connector and Perplexity, and a clinic's server is used today from Claude with OAuth and from a clinic's own agents with a named token.
Further reading
Fifteen minutes on video, with the people who build the servers.