Appty
Measured conclusion: Deep-tested. L2 outcome: tools_ok.
Find open slots on any appty link and book solo providers. Providers manage bookings by API key.
| Author | com.getappty |
|---|---|
| Access | remote |
| Publisher key required | No |
| Measured state | Deep-tested |
| L1 liveness | alive |
| L1 latency | 2746 ms |
| Last measured | 2026-10-24 |
Add to your agent
Copy this into your MCP client config:
{
"mcpServers": {
"Appty": {
"url": "https://getappty.com/api/mcp",
"transport": "streamable-http"
}
}
}
Measured tools (11)
get_providerread-onlyPublic booking page for a provider slug: name, headline, time zone, currency, services, upcoming group sessions, and the booking URL. No client data.
Parameters:
slug(required) — string — Booking link slug, the part after getappty.com/
Hints: read-only yes · destructive no · idempotent not declared · open-world no
find_open_slotsread-onlyOpen start times for a public service, using the same slot rules as the booking page. from_date and to_date are YYYY-MM-DD and at most 31 days apart. Each start is ISO 8601 with the provider's offset, plus a provider-local label.
Parameters:
slug(required) — string — Booking link slug, the part after getappty.com/service_id(required) — string — Service id from get_providerfrom_date(required) — string — First day to include, YYYY-MM-DDto_date(required) — string — Last day to include, YYYY-MM-DD. At most 31 days after from_date.timezone— string — IANA zone the dates are in. Defaults to the provider's zone. Slot labels stay in the provider's zone.
Hints: read-only yes · destructive no · idempotent not declared · open-world no
get_booking_linkread-onlyCheck that a start is still open, then return a link to the booking page with that service and time selected. The client confirms and pays on Appty. Nothing is booked here.
Parameters:
slug(required) — string — Booking link slug, the part after getappty.com/service_id(required) — string — Service id from get_providerstart(required) — string — Slot start, ISO 8601, from find_open_slots
Hints: read-only yes · destructive no · idempotent not declared · open-world no
list_bookingsread-onlyThis provider's bookings. Omit from and to for upcoming sessions. Never includes pay or manage tokens.
Parameters:
to— string — Include sessions starting before this ISO 8601 time.from— string — Include sessions starting at or after this ISO 8601 time. When from and to are both omitted, this is now.limit— integer — Default 50. Maximum 100.status— string
Hints: read-only yes · destructive no · idempotent not declared · open-world no
list_clientsread-onlyThis provider's clients: id, name, email, phone, billing currency, and default pay mode.
Parameters:
limit— integer — Default 50. Maximum 100.query— string — Case-insensitive match on the client's name or email.
Hints: read-only yes · destructive no · idempotent not declared · open-world no
who_owesread-onlyUnpaid balances for this provider, grouped by client and currency. Same figures as the dashboard who-owes page.
Hints: read-only yes · destructive no · idempotent not declared · open-world no
book_sessiondestructiveBook a client into a service at a start time, the same way the dashboard books. Returns a preview first and only acts when confirm=true. A past start is saved as completed with no email. A future start emails the usual confirmation. No money moves through the assistant. Any pay link is only a request the client pays on Appty.
Parameters:
client_id(required) — string — Client id from list_clients.service_id(required) — string — Service id. One-off shells are refused.start(required) — string — Session start, ISO 8601. Does not have to be an open public slot.confirm— boolean — Set true only after the caller has seen a preview and wants it done. Anything else, including the string "true", is a preview and changes nothing.
Hints: read-only no · destructive yes · idempotent not declared · open-world yes
reschedule_bookingdestructiveMove a booking to an open slot. The client is not emailed. Returns a preview first and only acts when confirm=true. No money moves through the assistant.
Parameters:
booking_id(required) — stringnew_start(required) — string — New start, ISO 8601. Must be an open slot for this booking's length.confirm— boolean — Set true only after the caller has seen a preview and wants it done. Anything else, including the string "true", is a preview and changes nothing.
Hints: read-only no · destructive yes · idempotent not declared · open-world no
cancel_bookingdestructiveCancel one booking under the provider's cancellation policy and email the client. Returns a preview first and only acts when confirm=true. No money moves through the assistant. Any refund or fee is applied by Appty, the same as the dashboard. The client pays anything still due on Appty.
Parameters:
booking_id(required) — stringreason— stringconfirm— boolean — Set true only after the caller has seen a preview and wants it done. Anything else, including the string "true", is a preview and changes nothing.
Hints: read-only no · destructive yes · idempotent not declared · open-world yes
send_pay_linkdestructiveEmail a pay link for one booking, or for a client's unpaid sessions and invoices. Returns a preview first and only acts when confirm=true. No money moves through the assistant. This only sends a request the client pays on Appty. Group spots, packages, and fees are not emailed.
Parameters:
confirm— boolean — Set true only after the caller has seen a preview and wants it done. Anything else, including the string "true", is a preview and changes nothing.client_id— string — Email a pay reminder for each unpaid session and invoice this client has. Pass this or booking_id.booking_id— Email a pay link for this booking. Pass this or client_id.
Hints: read-only no · destructive yes · idempotent not declared · open-world yes
send_invoicedestructiveCreate one invoice per currency for a client's sessions (by id or by calendar month) and email it. Returns a preview first and only acts when confirm=true. No money moves through the assistant. The invoice only sends a request the client pays on Appty.
Parameters:
client_id(required) — stringperiod— string — Calendar month YYYY-MM in the provider's time zone. Uninvoiced sessions in that month.confirm— boolean — Set true only after the caller has seen a preview and wants it done. Anything else, including the string "true", is a preview and changes nothing.booking_ids— array — Sessions to put on the invoice. Pass this or period.
Hints: read-only no · destructive yes · idempotent not declared · open-world yes
Measured by MCPYP probing. Untested fields are omitted, never estimated. Listing is always free; MCPYP never proxies calls or stores user tokens.