TidyCal MCP server
Bookings, booking types, availability and teams -- including the writes TidyCal's own MCP server cannot do.
- Tools
- 19
- Read-only
- 12
- Write
- 7
- Off by default
- Destructive
- 2
- Flagged distinctly
TidyCal through an assistant
TidyCal ships a read-only MCP server of its own, so an assistant can already answer "what's on next week?". This connector is for the other half: creating and cancelling real bookings, publishing booking types, and managing team membership. That half needs care rather than enthusiasm, because none of it is undone by deleting a row -- booking somebody emails them, cancelling emails them again, and TidyCal has no uncancel. So a booking is checked against real availability before anyone is contacted, booking types are created private rather than published to the open internet, and every write ships switched off until an operator turns it on.
- Bookings, booking types and contacts, read in full
- Real availability: the slots TidyCal computes from schedule, existing bookings, calendar conflicts and buffers
- Preview a booking without making it -- checks the slot is free and emails nobody
- Create and cancel bookings (opt-in, and each one emails a real person)
- Publish booking types, created private by default (opt-in)
- Team bookings, members and team booking types (opt-in for changes)
What people actually ask
Real questions, answered from live TidyCal data.
“When am I free for a 30-minute call next week?”
tidycal_list_booking_typestidycal_list_timeslots“What's booked for me this month, and who cancelled?”
tidycal_list_bookingstidycal_get_booking“Check whether Thursday at 2pm is actually free before I offer it to anyone.”
tidycal_list_timeslotstidycal_create_booking_preview19 TidyCal tools
Grouped by what they touch. Every tool is individually toggleable — you expose only what you want.
Bookings
6 tools4 read-only · 2 writeShowing 6 of 6 tools
- tidycal_cancel_bookingWriteDestructive
Cancels a booking. THIS CANNOT BE UNDONE — TidyCal has no uncancel endpoint — and it emails the person who booked to tell them it is off. Read the booking with tidycal_get_booking first and confirm it is the right one, because the only way back is to book them again, which sends a third email. Modifies the live account. CONTACTS A REAL PERSON: TidyCal emails them as a result of this call.
- tidycal_create_bookingWrite
Books a real meeting. TidyCal emails the person immediately with a confirmation and the meeting goes on the calendar. There is no draft state and no way to create one quietly. The requested time is checked against the booking type's real availability first, so a slot that is not free is refused before anybody is contacted. Undoing this means CANCELLING, which sends them a second email. Call tidycal_create_booking_preview first. Modifies the live account. CONTACTS A REAL PERSON: TidyCal emails them as a result of this call.
- tidycal_create_booking_previewRead-only
Checks a booking WITHOUT making it: confirms the requested time is genuinely free and shows exactly what would be sent. Nobody is emailed and nothing is reserved. Call this before tidycal_create_booking — it is read-only, so it also works on a connection whose write tools are switched off, which makes it the way to check a booking before enabling anything. Read-only.
- tidycal_get_bookingRead-only
Full detail for one booking: its booking type, the contact, their answers to the booking questions, payment and hosts. Read this before cancelling anything, so the cancellation names the right meeting. Read-only.
- tidycal_list_bookingsRead-only
Lists bookings on the account, optionally filtered by date range and whether they were cancelled. Read-only.
- tidycal_list_team_bookingsRead-only
Lists bookings across a team rather than just the connected account. Read-only.
Booking types
4 tools2 read-only · 2 writeShowing 4 of 4 tools
- tidycal_create_booking_typeWrite
Creates a booking type — a scheduling page with its own public URL. CREATED PRIVATE by default: TidyCal's own default is public, which would put a page on the open internet the moment this is called, so `public` must be set true deliberately. A price with no connected payment platform is refused, because TidyCal accepts it and it then fails at a real person's checkout. Modifies the live account.
- tidycal_create_team_booking_typeWrite
Creates a booking type owned by a team rather than by the connected account. Same rules as tidycal_create_booking_type: created private unless `public` is explicitly true, and a price with no connected payment platform is refused. Modifies the live account.
- tidycal_list_booking_typesRead-only
Lists the booking types on the account — the scheduling pages offered, with title, slug, duration and price. The id from here is what tidycal_list_timeslots and tidycal_create_booking need. Read-only.
- tidycal_list_team_booking_typesRead-only
Lists the booking types belonging to a team rather than to the connected account. Read-only.
Contacts
2 tools1 read-only · 1 writeShowing 2 of 2 tools
- tidycal_create_contactWrite
Adds a contact to the account's address book. This does NOT book anything and does not email them — it only records the person. Modifies the live account.
- tidycal_list_contactsRead-only
Lists contacts on the account — the people who have booked. This is personal data: names and email addresses of real people who booked a meeting. Read-only.
Pii
1 tool1 read-only · 0 writeShowing 1 of 1 tools
- tidycal_list_team_usersRead-only
Lists the members of a team. The teamUser id returned here is what removing a member needs — it is NOT the same as a user id. Read-only.
More tools
6 tools4 read-only · 2 writeShowing 6 of 6 tools
- tidycal_add_team_userWrite
Adds somebody to a team, which TidyCal notifies them about and which gives them access to the team's bookings. Modifies the live account. CONTACTS A REAL PERSON: TidyCal emails them as a result of this call.
- tidycal_get_accountRead-only
Returns the connected TidyCal account: name, email, timezone, language and currency. Call this first — the account's timezone is what every other tool's times are relative to, and getting it wrong books people at the wrong hour. Read-only.
- tidycal_get_teamRead-only
Detail for one team the account owns or belongs to. Read-only.
- tidycal_list_teamsRead-only
Lists the teams the account owns or belongs to. Read-only.
- tidycal_list_timeslotsRead-only
Lists the times a booking type can actually be booked in a date range. TidyCal computes these from the schedule, existing bookings, connected-calendar conflicts and buffers, so this is the authority on what is free — not the calendar you can see. ALWAYS call this before tidycal_create_booking: booking a slot that is not on this list is how you double-book somebody. Read-only.
- tidycal_remove_team_userWriteDestructive
Removes somebody from a team, taking away their access to its bookings. The id this needs is the teamUser id from tidycal_list_team_members — NOT a user id, and passing the wrong one removes the wrong person. Modifies the live account.
Every tool name and description, machine-readable: /llms-full.txt
You decide what it can touch
The same model applies to every connector, and it defaults closed.
Authorize once
Connect TidyCal through its own consent screen. Credentials are encrypted with AES-256-GCM and never returned by any API response or tool call.
Writes off by default
A new connection switches on a read-oriented default set only. Every write tool must be enabled deliberately before any client can call it.
Roles enforced server-side
READ, WRITE and ADMIN gate tool invocation on the server, not just in the UI. A READ member's token is refused any write tool.
Connect TidyCal in minutes
No infrastructure to run. Copy one URL and one token into your client.
- 1Create a free workspace and connect TidyCal.
- 2Choose which tools to expose — writes stay off until you enable them.
- 3Copy your MCP endpoint URL and bearer token.
- 4Paste them into Claude, Cursor, or any MCP client.
{
"mcpServers": {
"serve-mcp": {
"url": "https://servemcp.com/api/mcp/your-workspace",
"transport": "http",
"headers": {
"Authorization": "Bearer smcp_..."
}
}
}
}On Claude you paste one URL and sign in — no token to copy. See the setup guide for each client.
More in Customer Support
Put TidyCal in front of your assistant
Free plan, no card required. Connect in minutes.