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.
11 tools in the full catalog: 7 read and 4 write. 10 load by default, and the rest are found with tool search.
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••••••••••••3f7aWhen a client signs in, tick Setmore on the PopMCP consent screen only if it should book, relabel or cancel. Canceling an appointment happens as soon as the AI calls it. Keep reporting teammates on read-only; every other operation stays searchable.
Drop the PopMCP URL into Claude, ChatGPT, Claude Code, Codex or any other supported client. It signs in through PopMCP with OAuth, so your Setmore credential never leaves the server.
app.popmcp.com/mcpAsk for something harmless before the agent changes anything. Writes run as soon as it calls them, so confirm it reads the right account first.
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 Customize → 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, Claude Code, 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.
Connect Setmore in PopMCP first, then run claude mcp add --transport http popmcp https://app.popmcp.com/mcp in a terminal. Inside Claude Code, run /mcp and sign in to PopMCP in the browser window it opens, ticking Setmore on the consent screen. The Setmore tools are then available in that session, and no Setmore credential is stored on your machine.
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. Every tool stays searchable, and on Scale the owner can load the full catalog for a teammate's connection.
A tool is something your AI calls, and 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.