Local services & SaaS
Faire
Orders, inventory, reorders and messages for wholesale brands.
12 endpoints
Your AI agent books consults and treatments from messages, moves a provider's day and finds patients due back. Sign in to PatientNow once in your own Cloud Browser. Charts stay untouched.
5 tools Read and write
PatientNow has no MCP server, no ChatGPT or Claude app and no Zapier app. Its REST APIs need "A PatientNow Essentials account with API access enabled" and a gateway key (PatientNow developer docs, checked 9 Nov 2026). Cotlet runs 5 PatientNow tools hosted, over MCP for agents and REST for scripts, in your own login, for the schedule and patient contact details only.
| What you need | PatientNow API | By hand | Cotlet |
|---|---|---|---|
| Schedule and free slots | If enabled | Yes, one by one | Yes |
| Book or move | If enabled | Yes, one by one | Yes, after your OK |
| Patients due back | If enabled | Report | Yes |
| Ask in ChatGPT or Claude | No | No | Yes |
| Charts and photos | If enabled | Yes | Not touched |
Checked 8 Nov 2026. Sources: PatientNow integrations and FAQ · PatientNow login hub · PatientNow Essentials login
Once, in a browser we host for you.
One address in its settings.
It drafts the work, you OK what customers get.
We never keep your PatientNow password, the tools never open charts or photos, and no booking or move goes through until you approve it. Who can see your session
Sign in to PatientNow in a Cloud Browser. Create a Cotlet account, open PatientNow in its Cloud Browser, sign in with your Essentials login and press Enable for agents.
Add the Cotlet address. Enter https://cotlet.dev/mcp/v1 as the MCP server or connector URL in your agent.
Let the agent in. Chat apps open a Cotlet sign-in page. Editors, n8n and scripts send an API key made in the console.
PatientNow shares the address https://cotlet.dev/mcp/v1 with every other app you enable, so one connector covers them all. Turned PatientNow on after connecting? Refresh the connector and the 5 tools appear.
Settings > Connectors > Add custom connector
URL: https://cotlet.dev/mcp/v1/connect
Claude Code:
claude mcp add --transport http cotlet \
https://cotlet.dev/mcp/v1 \
--header "Authorization: Bearer $COTLET_API_KEY" Settings > Apps & Connectors > Create
MCP server URL: https://cotlet.dev/mcp/v1/connect
Authentication: OAuth // ~/.cursor/mcp.json
{
"mcpServers": {
"cotlet": {
"url": "https://cotlet.dev/mcp/v1",
"headers": { "Authorization": "Bearer ${env:COTLET_API_KEY}" }
}
}
} # ~/.codex/config.toml
[mcp_servers.cotlet]
url = "https://cotlet.dev/mcp/v1"
bearer_token_env_var = "COTLET_API_KEY" MCP Client Tool (inside an AI Agent)
Transport: HTTP Streamable
URL: https://cotlet.dev/mcp/v1
Auth: Bearer, <your key>
Tool: patientnow_read Make: MCP Client > Call a tool
Zapier: MCP Client by Zapier > Run Tool
Server URL: https://cotlet.dev/mcp/v1
Token: <your key>
Tool: patientnow_write Bookings and moves wait for your OK; PatientNow sends its usual messages.
Returns appointments with patient name, service, provider, start time and status.
MCP callpatientnow_read → list_appointments
REST endpointGET https://cotlet.dev/api/v1/patientnow/appointments
| Name | Type | Description |
|---|---|---|
| date_from string required | string | ISO date. |
| date_to string | string | ISO date. Default: date_from. |
| provider string | string | Provider. |
| page integer | integer | Page number. Default: 1. |
{
"date_from": "date from"
} {
"appointments": [
{
"appointment_id": "PN-71102",
"patient": "Natalie Brooks",
"service": "Neurotoxin",
"provider": "Dr. Lane",
"start": "2026-11-12T10:30",
"status": "Confirmed"
}
],
"page": 1
} Reads the schedule and returns start times where the service fits.
MCP callpatientnow_read → find_free_slots
REST endpointGET https://cotlet.dev/api/v1/patientnow/free-slots/find
| Name | Type | Description |
|---|---|---|
| service string required | string | Service name. |
| date string required | string | ISO date. |
| provider string | string | Provider. |
{
"service": "service",
"date": "date"
} {
"service": "Filler consult",
"slots": [
{
"provider": "Dr. Lane",
"start": "2026-11-13T15:00"
}
]
} Creates the appointment; PatientNow sends its usual confirmation by your settings. By default you confirm each call; you can switch that off for this tool.
MCP callpatientnow_write → book_appointment
REST endpointPOST https://cotlet.dev/api/v1/patientnow/patients/{patient_id}/appointments
| Name | Type | Description |
|---|---|---|
| patient_id string required | string | Patient ID from list_patients. |
| service string required | string | Service name. |
| start string required | string | ISO date and time. |
| provider string | string | Provider. |
{
"patient_id": "PT-40977",
"service": "Filler consult",
"start": "2026-11-13T15:00",
"provider": "Dr. Lane"
} {
"appointment_id": "PN-71177",
"patient": "Isabelle Moreau",
"service": "Filler consult",
"provider": "Dr. Lane",
"start": "2026-11-13T15:00",
"status": "Confirmed"
} Moves the appointment; your settings decide what the patient hears. By default you confirm each call; you can switch that off for this tool.
MCP callpatientnow_write → reschedule_appointment
REST endpointPOST https://cotlet.dev/api/v1/patientnow/appointments/{appointment_id}/reschedule
| Name | Type | Description |
|---|---|---|
| appointment_id string required | string | Appointment ID from list_appointments. |
| start string required | string | New ISO date and time. |
| provider string | string | New provider. |
{
"appointment_id": "appointment_8c41d2",
"start": "start"
} {
"appointment_id": "PN-71102",
"start": "2026-11-14T11:00",
"status": "Confirmed"
} Contact details, last visit and last service only.
Returns contact details, last visit and last service only. No charts, notes or photos.
MCP callpatientnow_read → list_patients
REST endpointGET https://cotlet.dev/api/v1/patientnow/patients
| Name | Type | Description |
|---|---|---|
| query string | string | Name, phone or email. |
| not_visited_days integer | integer | Only patients with no visit in this many days. |
| page integer | integer | Page number. Default: 1. |
{
"patients": [
{
"patient_id": "PT-40912",
"name": "Rachel Donovan",
"phone": "(480) 555-0142",
"last_visit": "2026-06-20",
"last_service": "Neurotoxin"
}
],
"page": 1
} Your signed-in PatientNow profile, AES-256-GCM encrypted, in Finland. No password.
The 5 PatientNow tools, never the session cookie.
What your login sees on the schedule and patient contact details.
Charts, notes, photos, prescriptions, payments, deletes.
You sign in again yourself, in the same Cloud Browser.
Disable for agents, reset the browser, or change your PatientNow password.
Cotlet never types your password: you sign in yourself, and the agent only uses the session. Our site scores A+ on Qualys SSL Labs, securityheaders.com and Mozilla Observatory (live results).
When PatientNow moves a button on the schedule or renames a patient tab, we fix the tool and your agent calls it the same way. status.cotlet.dev checks the site, console and API every 3 minutes.
| Action | Undo |
|---|---|
| Book an appointment | Yes, cancel it |
| Move an appointment | Move it back; a message already sent stays sent |
2 of 5 tools ask first: book_appointment, reschedule_appointment. You can turn the wait off per tool once you trust a routine.
{
"name": "book_appointment",
"arguments": {
"patient_id": "PT-40977",
"service": "Filler consult",
"start": "2026-11-13T15:00",
"provider": "Dr. Lane"
}
} curl -X POST https://cotlet.dev/api/v1/patientnow/patients/PT-40977/appointments \
-H "Authorization: Bearer $COTLET_API_KEY" \
-H "Content-Type: application/json" \
-d '{"service":"Filler consult","start":"2026-11-13T15:00","provider":"Dr. Lane"}' {
"appointment_id": "PN-71177",
"patient": "Isabelle Moreau",
"service": "Filler consult",
"provider": "Dr. Lane",
"start": "2026-11-13T15:00",
"status": "Confirmed"
} A cron job or n8n flow can call the same tools over REST at /api/v1/patientnow with the same key and price, in JSON. Failed calls are free. Each tool row above shows its REST path.
About $30 a monthfor a med spa with 3 providers, 5,140 credits. Your PatientNow plan stays as it is.
| Job | Calls | Credits |
|---|---|---|
| Booking from a message | 3 × 100 | 3,000 |
| Patients due back, weekly | 1 × 4 | 40 |
| Appointment moved | 3 × 20 | 600 |
| Cloud Browser, 30 days | 1,500 | |
| Total | 5,140 |
PatientNow publishes no booking counts, so the month is our example. Dollars at the $29 pack rate.
| Credits | Price, one time | Calls at 10 credits | Per 1,000 credits |
|---|---|---|---|
| 5,000 | $29 | 500 | $5.80 |
| 15,000 | $79 | 1,500 | $5.27 |
| 32,000 | $149 | 3,200 | $4.66 |
| 60,000 | $249 | 6,000 | $4.15 |
Only successful calls use credits; failed calls and timeouts cost nothing. At a balance of 0 calls pause, never a surprise charge. Authenticate with the Authorization: Bearer header.
| Option | What it does | Where it stops |
|---|---|---|
| PatientNow API | Patients, appointments and services for your own developer. | Access enabled per account; you build and host the code. |
| PatientNow marketing | Email and SMS campaigns inside PatientNow. | Fixed campaigns; nothing you can ask. |
| By hand | Every screen of PatientNow, one booking at a time. | Your front desk's time. |
If PatientNow has enabled your API access and you have a developer, building on it is cheaper for syncing data. To book, move and bring patients back from ChatGPT or Claude this week, Cotlet works in the PatientNow account you already have.
Take Group sp. z o.o. runs Cotlet. It is a software company registered in Poland, EU (VAT PL6342984273), in business since 2019, led by its founders Bart Krawczyk (Co-founder, CTO) and Jake Slugocki (Co-founder, SEO, sales and marketing). Questions about the PatientNow tools go to contact@cotlet.dev.
Sign up free at https://cotlet.dev, open PatientNow under Integrations in the console and sign in to PatientNow in its Cloud Browser. The trial starts with your first app and asks for no card.
Sign up at cotlet.dev, log in to PatientNow once in its Cloud Browser and add Cotlet to ChatGPT or Claude, following the steps in your console. No API key is needed. ChatGPT and Claude then work in your PatientNow account through Cotlet, in their phone apps too.
With Cotlet, ChatGPT, Claude and other AI agents handle jobs like these in PatientNow: book consults from messages; bring patients back; move a provider's day. You ask in plain words, and anything that reaches other people waits for your OK first.
No. PatientNow has no ChatGPT or Claude connector of its own and PatientNow has no official MCP server (checked 9 Nov 2026). Cotlet is an independent one that works in ChatGPT, Claude, Cursor and any MCP client, on your signed-in account.
Yes, with Cotlet. ChatGPT finds the patient, checks free slots and books the service, after your OK.
Yes, with Cotlet. ChatGPT lists patients not back in the time you name, with their last service.
No. The PatientNow tools cover the schedule and patient contact details. Charts, notes and photos are not part of them.
Only in how it is called. Both carry the same 5 tools, inputs, answers, API key and price. Agents use MCP; scripts and HTTP steps use REST.
No. Cotlet is independent and not affiliated with PatientNow.
Free 7-day trial with 2,000 credits, no card needed.
May we use Google Analytics to see which pages help people? It sets cookies only if you accept. No ads, and we never sell data. Cookie policy