setmore_create_ appointmentBook a new appointment (note the path is SINGULAR `appointment/create`, unlike the plural `appointments` list).
Pull the week's bookings, check which slots a staff member still has open, book a customer in, and mark an appointment as a no-show — all without opening the booking calendar.
PopMCPSetmore
Every appointment, service, customer, staff and slot operation in the connection, plus the calendar changes PopMCP can watch for.
setmore_create_ appointmentBook a new appointment (note the path is SINGULAR `appointment/create`, unlike the plural `appointments` list).
setmore_list_ appointmentsList appointments within a date range, optionally filtered to one staff member.
setmore_update_ appointment_ labelSet/update an appointment's label (its status text).
setmore_list_ category_ servicesList the services that belong to a single service category, identified by its category `key`.
setmore_list_ service_ categoriesList all service categories.
setmore_list_ servicesList all bookable services configured for the company.
setmore_create_ customerCreate a new customer.
setmore_search_ customersSearch for existing customers by first name, email, and/or phone (all passed as query params).
setmore_get_ available_ slotsGet the available booking time-slots for a staff member + service on a given day.
setmore_list_ staffList all staff members (note the path is `staffs`, plural).
setmore_delete_ appointmentAttempt to delete/cancel an appointment by its `key`.
Credentials off one Setmore screen, then an endpoint your client signs into. Nothing to deploy, and nothing to install.
Paste the Refresh token Setmore issued you — no OAuth popup, client secret or password. We exchange it server-side for a short-lived access token that refreshes itself, and the connection is locked to that one account.
your-setmore-value••••••••••••3f7aPick read-only for reporting, or full access to book and relabel. Load the full catalog when you need every operation, and require approval on writes so canceling an appointment waits for a human yes.
Drop the PopMCP URL into Claude, ChatGPT, Codex or any other supported client. It signs in through PopMCP with OAuth, so your Setmore credential never leaves the server.
app.popmcp.com/mcp/…Ask for something harmless before you turn writes on. Once it comes back clean, widen the tool set or switch the connection to full access.
Break down last week's bookings by staff member and service
setmore_list_staffok
Then just ask for the work
“Break down last week's bookings by staff member and service”
“Mark yesterday's appointments with Priya that nobody turned up for as no-show”
“Add Marco Ruiz as a customer and book him into Thursday's first free slot with Ana”
“Which Hair services still have open slots with Ana on Saturday”
One hosted endpoint, registered once per client. The same tools and the same permissions, whichever window the request comes from.
Add the PopMCP URL under Settings → Connectors and the tools appear in every chat.
The same endpoint, registered in the browser. Nothing to install on the machine you are working from.
Register PopMCP as a custom connector, then let ChatGPT read and update the account.
Wire the endpoint into Codex or the Codex CLI when a task needs live business context, not a fixture.
Register the remote MCP server in OpenCode's config for terminal-first and scripted agent runs.
Add PopMCP as an MCP server in Z.ai's desktop app and work the account from the same window.
FAQ
What teams ask before putting Setmore behind an AI client.
Setmore issues it per account, and API access is only available on a paid Setmore Pro plan. If you don't have a token yet, email api@setmore.com from the address your Setmore account is registered under and ask for API access. Paste the value Setmore sends back into the Refresh token field on the connect form.
No. The connect form asks for a Refresh token plus an optional Connection type label, and that is the whole setup — no redirect URL, no client secret, and never your Setmore password. PopMCP exchanges the refresh token server-side for a short-lived access token and renews it automatically, so there is nothing to re-paste later.
Canceling maps to delete_appointment, which attempts to delete an appointment by its key. There is no operation that moves an existing booking's start or end time, so a reschedule is really a cancel followed by a fresh create_appointment. update_appointment_label changes only the appointment's label — its status text — not when it happens.
search_customers looks people up by first name, email and/or phone, all passed as query params, and create_customer adds anyone who isn't already on file. Those are the only two customer operations, so the connection cannot edit or delete a customer record. In practice the agent searches first, creates only on a miss, then books.
Eleven, spread across five API modules: Appointments, Services, Customers, Slots and Staff. Seven are reads and four are writes; ten load into your AI client by default and the remaining one is searchable, so you can pull it in on demand. PopMCP also absorbs Setmore's path inconsistencies — booking uses the singular appointment/create while the list is plural, and staff live at staffs — so you never have to think about them.
Change detection covers appointments being booked, rescheduled, canceled or relabeled — confirmed, no-show and so on — plus services being added or having their price or duration edited, and staff joining or leaving the booking calendar. There is also a threshold watch, Day fully booked, which fires when open slots for a staff member and service drop to none for a day. Note the rescheduled watch spots time changes made inside Setmore, even though no operation performs one.
No. PopMCP hosts it and gives you a Streamable HTTP MCP URL. There is nothing to deploy, no callback URL to register, and no infrastructure to keep running or patch.
Any client that supports a remote Streamable HTTP MCP server — Claude Desktop, Claude Web, ChatGPT custom connectors, Codex and the Codex CLI, OpenCode and Z.ai's ZCode, as well as editors such as Cursor, Windsurf and Zed. Your client signs in to PopMCP with OAuth; the provider credential never leaves the server.
Loading 11 tool definitions into every conversation burns context before the work starts. PopMCP loads a curated 10-tool set covering the everyday workflows and keeps the rest searchable, so your AI pulls a specialist tool only when a task needs it. You can switch a connection to the full catalog at any time.
A tool is something your AI calls — there are 11 here. A trigger is something PopMCP watches for you: 9 Setmore events that can start work on the PopMCP side. Triggers never enter your AI client's context, and none of them ask you to paste a callback URL into Setmore.
Launch a hosted MCP endpoint for Setmore, keep tool access under control, and start testing real workflow prompts right away.