# SavvyCal API + MCP vs Zoom Scheduler API

> SavvyCal scores 57 (C) to Zoom Scheduler's 50.7 (D) for calendar booking. Prices, MCP, x402, uptime and agent notes side by side.

- Canonical: https://www.anchorterminal.com/compare/savvycal-vs-zoom-scheduler
- Markdown: https://www.anchorterminal.com/compare/savvycal-vs-zoom-scheduler.md (~4,350 tokens)
- Site index for agents: https://www.anchorterminal.com/llms.txt (the key docs and every listing in one file, at most 16 MB, about 4 million tokens: https://www.anchorterminal.com/llms-full.txt)
- API: https://www.anchorterminal.com/api/v1/index.json
- MCP: https://www.anchorterminal.com/mcp (the whole catalogue as tools, no key)
- DNS: dig +short TXT <slug>.grade.anchorterminal.com (the grade as a DNS TXT record, for a sandbox with no HTTP where names still resolve; also top., best.<category>. and <a>.vs.<b>. under the zone, and the same under grade.letme.dev)
- Licence: CC BY 4.0, credit Anchor Terminal and link this page (https://www.anchorterminal.com/terms/#data)
- Updated: 2026-11-04

SavvyCal API + MCP scores 57 (C) on agent readiness against Zoom Scheduler API's 50.7 (D), and leads in 6 of 7 scored categories. Both do calendar booking.

- SavvyCal API + MCP: grade C, 57/100, rank #724 of 1349. Markdown https://www.anchorterminal.com/tools/savvycal.md · JSON https://www.anchorterminal.com/api/v1/tools/savvycal.json
- Zoom Scheduler API: grade D, 50.7/100, rank #932 of 1349. Markdown https://www.anchorterminal.com/tools/zoom-scheduler.md · JSON https://www.anchorterminal.com/api/v1/tools/zoom-scheduler.json
- Best calendar and scheduling APIs for AI agents: https://www.anchorterminal.com/best/scheduling/index.md
- All 89 scheduling comparisons: https://www.anchorterminal.com/compare/scheduling/index.md

## Which one, for what

### SavvyCal API + MCP (C)

Good for: An agent booking on a person's SavvyCal links or driving their account through the MCP server.

Ahead on:
- Reliability, 70 against 63
- Schema & documentation, 74 against 61
- Agent ergonomics, 53 against 43
- Payments & pricing, 30 against 25
- Maintenance & community, 40 against 28

Also in its favour:
- Free to start without a card

Watch for: No general rate limit documented. The spec names one 429, on creating events (10 a minute per link)

### Zoom Scheduler API (D)

Good for: An agent booking into a Zoom Scheduler user's or team's booking pages, with slot lookup, booking, cancellation and two webhooks.

Watch for: Zoom's API terms (section 3.7.9) forbid using the APIs to monitor availability or performance, or for benchmarking. This matters before any probe is run


## Why the edge

### Schema & documentation: SavvyCal API + MCP +13

- SavvyCal API + MCP (74): OpenAPI 3.0.0 at api.savvycal.com/v1/spec covers all 22 operations with 56 schemas; the MCP tools' schemas could not be read without signing in (23 of 25). llms.txt and a Markdown twin of every docs page (10). Only 8 of the 22 operations carry a description, and those state constraints (events must match an open slot, an invalid filter resets every filter) rather than when to choose another endpoint (10 of 20). Required flags on 14 of 43 parameters, 34 enum properties across the schemas, `limit` bounded 1 to 100, `until` at most 31 days after `from` (12 of 15). Example values on parameters and a documented error shape keyed by field, with 400, 401, 404, 422 and 429 declared per operation, but no full response examples (10 of 15). A /v1 path and a promise that changes are additive, with dated product updates on the feedback board but no API changelog (9 of 15). 23 + 10 + 10 + 12 + 10 + 9 = 74.
- Zoom Scheduler API (61): The reference states OpenAPI version 3.1.1, but no specification file is linked from the page, the API catalogue or llms.txt. A Markdown copy of the whole reference is published (10). llms.txt, Markdown copies of pages and an API catalogue at `/.well-known/api-catalog.json` (10). Most operations carry one line such as "Patches a scheduled event". The available times and booking operations say when to use them (8). Request bodies are typed, with 55 required marks, 38 enumerated fields and email, date and date-time formats. The Markdown copy and the static page omit query and path parameters (9). Every request body has an example and each operation lists its error statuses with a code name, some misspelt (11). The path is versioned v2 and the changelog has dated Scheduler entries (13). Total 61.

### Maintenance & community: SavvyCal API + MCP +12

- SavvyCal API + MCP (40): Read as a closed service. The newest dated change is the MCP integration of 27 October 2026 on the updates board (30). It is the only dated entry since 7 July, so fewer than three in 90 days (0 of 20). A public updates board, a feature request board and a support address with a stated 24-hour reply within US Central business hours (10 of 15). No official SDKs (0). No package to assess (0). 30 + 0 + 10 + 0 + 0 = 40.
- Zoom Scheduler API (28): The latest Scheduler changelog entry is 17 August 2026, 53 days before this check (20). Two dated entries in the last 90 days, 13 July and 17 August (0). A public changelog with a developer forum thread for each entry and a developer support page. Whether the forum answers was not checked (8). No official SDK covers Scheduler (0). No package to assess (0). Total 28.

### Agent ergonomics: SavvyCal API + MCP +10

- SavvyCal API + MCP (53): List responses are sized by `limit` (default 20, at most 100) with no field selection. The MCP server lists 63 tools with no documented toolset or read-only list, though a client can ask for the `mcp:read` scope alone (10 of 25). Cursor pagination with `after`, `before` and `limit`, and date and status filters on events (17 of 20). Errors name the field, the failed validation and a limit count, which an agent can act on, but a 429 carries no wait time (14 of 20). No idempotency key on booking or link creation, and the MCP annotations could not be read; the docs say the assistant confirms before cancelling, deleting or inviting (6 of 20). Creating an event needs five fields, and there is no official SDK in any language (6 of 15). 10 + 17 + 14 + 6 + 6 = 53.
- Zoom Scheduler API (43): No field selection was found, and a schedule object runs to several hundred lines of fields. Query parameters could not be read (8). List responses return `next_page_token`, and the changelog records filters by team, account scope and created or updated time. The parameter list itself was not readable (14). Errors carry a status and a short code name such as InvalidArgument, NotFound or Conflict, with a 409 on booking conflicts and little detail (12). No idempotency key or safe-retry guidance for `POST /scheduler/attendee` (3). Booking needs six fields. No official SDK covers Scheduler, and Zoom Rivet 0.3.0 has no Scheduler module (6). Total 43.

### Reliability: SavvyCal API + MCP +7

- SavvyCal API + MCP (70): Read with the hosted lines. Instatus page at savvycal.instatus.com with App, Microsoft 365, Google Calendar and Integrations components and a month-by-month history (20). No notices from June to November 2026 and 100 per cent App uptime each month, a clean record (30). The only limit with a number is in the OpenAPI spec, 10 event creations a minute per link, failed ones included; nothing covers the rest of the API (7 of 15). That 429 is declared with no Retry-After, backoff guidance or idempotency key, and webhooks are the only place retries are described (3 of 15). No SLA; the terms give the service as is (0). The v1 API is generally available and the MCP server, announced 27 October 2026, is not marked beta (10). 20 + 30 + 7 + 3 + 0 + 10 = 70.
- Zoom Scheduler API (63): Graded as a hosted API. Statuspage site at status.zoom.us (redirects to www.zoomstatus.com) with Zoom Scheduler as its own component and REST API and Webhooks under Zoom Developer Platform (20). The front page shows 25 September to 9 October 2026, with no incident naming Scheduler or the REST API. The developer documentation site was degraded for 1 hour 54 minutes on 3 October. The history page is drawn by script and the status API is closed by robots.txt, so 90 days could not be read (10). Every Scheduler operation is labelled Light, which is 4 a second and 6,000 a day on Free, 30 a second on Pro and 80 a second on Business and above, per account (15). The docs say to wait and retry on 429 and that the daily-limit response carries a header saying when to resume. No `Retry-After` is named and no idempotency key exists for booking writes (8). No SLA found, and the API terms say Zoom does not guarantee uptime (0). No beta label on the Scheduler API, and Zoom's lifecycle page treats an initial release as stable (10). Total 63.

### Payments & pricing: SavvyCal API + MCP +5

- SavvyCal API + MCP (30): No x402, MPP or L402 (0). Per-seat plan prices public, nothing per call (10). A Free plan with the API, webhooks and MCP server included and no card mentioned, though booking through a link needs Basic or Premium and there is no self-serve trial (20). A person signs up in a browser and approves the OAuth consent (0). 0 + 10 + 20 + 0 = 30.
- Zoom Scheduler API (25): No x402, MPP or L402 (0). Seat prices are public, $5.99 a user a month or $4.99 billed yearly, with nothing per call (10). Scheduler Basic is free with no card and a 14-day trial is advertised, but the pricing page lists API access under the paid plan and whether the free plan or the trial can call the API was not established (15). A person signs up and creates a Marketplace app in a browser (0). Total 25.

## Score by category

| Category | Weight | SavvyCal API + MCP | Zoom Scheduler API | Edge |
| --- | --- | --- | --- | --- |
| Reliability | 16% (20 this run) | 70 | 63 | SavvyCal API + MCP +7 |
| Performance | 10%, pending | pending | pending | not scored in this run |
| Schema & documentation | 13% (16.2 this run) | 74 | 61 | SavvyCal API + MCP +13 |
| Agent ergonomics | 13% (16.2 this run) | 53 | 43 | SavvyCal API + MCP +10 |
| Security & auth | 14% (17.5 this run) | 50 | 54 | Zoom Scheduler API +4 |
| Payments & pricing | 10% (12.5 this run) | 30 | 25 | SavvyCal API + MCP +5 |
| Task success | 10%, pending | pending | pending | not scored in this run |
| Maintenance & community | 7% (8.8 this run) | 40 | 28 | SavvyCal API + MCP +12 |
| Transparency & trust | 7% (8.8 this run) | 73 | 70 | SavvyCal API + MCP +3 |
| Negative events | ≤15 | 0 | 0 | |
| **Total** | | **57 · C** | **50.7 · D** | |

## Facts side by side

| Fact | SavvyCal API + MCP | Zoom Scheduler API |
| --- | --- | --- |
| Kind | HTTP API | HTTP API |
| Vendor | SavvyCal, Inc. | Zoom Communications, Inc. |
| Hosted endpoint | `https://api.savvycal.com/v1` | `https://api.zoom.us/v2` |
| Transports | HTTP, Streamable HTTP | HTTP |
| Auth | OAuth or key | OAuth |
| Pricing | Freemium | Paid |
| x402 | no | no |
| Licence | none | Proprietary service under the Zoom API Licence and Terms of Use |
| Tools exposed | 63 | none |
| Read-only variant documented | no | no |
| llms.txt | yes | yes |
| Last release | 2026-10-27 | 2026-08-17 |
| Terms last updated | 2026-01-21 | 2025-07-16 |
| Privacy policy last updated | 2026-10-17 | 2026-09-17 |
| Customer content may train models | not found in the text | not found in the text |
| Terms restrict automated access | yes | yes |
| Terms restrict benchmarking | yes | yes |
| Terms or service can change without notice | yes | yes |
| Arbitration or class-action waiver | yes | yes |

## How the scores have moved

### SavvyCal API + MCP

No score change since it was listed.

### Zoom Scheduler API

- no change on 28 October 2026: correction
- +0.1 on 27 October 2026: checklist

## Verdicts

**SavvyCal API + MCP.** A small REST API with a public OpenAPI spec, cursor pagination and signed webhooks, plus a hosted MCP server with 63 tools, OAuth 2.1 and read and write scopes, on every plan. No general rate limit, idempotency key, SDK or certification was found, and booking through a link needs a paid seat.

**Zoom Scheduler API.** Each of the 24 operations has its own granular OAuth scope, and Zoom Scheduler and the REST API are separate components on the status page. No operation moves a booking, no official SDK covers Scheduler, and Zoom's API terms forbid benchmarking or monitoring the service.

## Before you call either

### SavvyCal API + MCP

1. Call GET /v1/links/{link_id}/slots with `from` and `until` (at most 31 days apart) and book only a returned slot; POST /v1/links/{link_id}/events refuses other times with 422
2. Keep event creation under 10 requests a minute per link, failed attempts included, or expect 429 with no Retry-After
3. Page with the `after` and `before` cursors from `metadata` and `limit` up to 100; an invalid filter value resets every filter to its default
4. Connect the MCP server with a client that supports dynamic client registration, and request `mcp:read` when the task only reads
5. Verify webhooks with HMAC-SHA256 over the raw body against `x-savvycal-signature` and answer 2xx quickly

### Zoom Scheduler API

1. Call `GET /scheduler/schedules/{scheduleId}/available_times` and book only a spot whose status is `available`
2. Send `start_date_time` in ISO 8601 with the booker's IANA `time_zone` to `POST /scheduler/attendee`. Expect 409 on a conflict
3. To move a booking, cancel it with `PATCH /scheduler/events/{eventId}` and `status` set to `cancelled`, then book the new slot
4. List scheduled events before retrying a booking, because no idempotency key is documented
5. Request a new Server-to-Server OAuth token every hour. That grant issues no refresh token

## Questions

### Which is better for AI agents, SavvyCal API + MCP or Zoom Scheduler API?

SavvyCal API + MCP scores 57 (C) on agent readiness against Zoom Scheduler API's 50.7 (D), and leads in 6 of 7 scored categories.

### Do SavvyCal API + MCP and Zoom Scheduler API need an API key?

SavvyCal API + MCP takes an API key or an OAuth sign-in. Zoom Scheduler API uses an OAuth sign-in.

### Can an agent call SavvyCal API + MCP and Zoom Scheduler API without installing anything?

Yes. SavvyCal API + MCP has a hosted endpoint at https://api.savvycal.com/v1 and Zoom Scheduler API at https://api.zoom.us/v2.


## For agents

- This comparison as JSON: https://www.anchorterminal.com/compare/savvycal-vs-zoom-scheduler.json, and with the fewest tokens: https://www.anchorterminal.com/compare/savvycal-vs-zoom-scheduler.min.md
- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {"a": "savvycal", "b": "zoom-scheduler"}`. From a terminal: `anchor compare savvycal zoom-scheduler`
- Each listing in full: https://www.anchorterminal.com/api/v1/tools/savvycal.json and https://www.anchorterminal.com/api/v1/tools/zoom-scheduler.json

## Other comparisons with SavvyCal API + MCP or Zoom Scheduler API

- [Acuity Scheduling API vs SavvyCal API + MCP](https://www.anchorterminal.com/compare/acuity-scheduling-vs-savvycal.md)
- [Acuity Scheduling API vs Zoom Scheduler API](https://www.anchorterminal.com/compare/acuity-scheduling-vs-zoom-scheduler.md)
- [Agenda Hero vs SavvyCal API + MCP](https://www.anchorterminal.com/compare/agenda-hero-vs-savvycal.md)
- [Agenda Hero vs Zoom Scheduler API](https://www.anchorterminal.com/compare/agenda-hero-vs-zoom-scheduler.md)
- [Apiroc Unified Calendar API vs SavvyCal API + MCP](https://www.anchorterminal.com/compare/apiroc-vs-savvycal.md)
- [Apiroc Unified Calendar API vs Zoom Scheduler API](https://www.anchorterminal.com/compare/apiroc-vs-zoom-scheduler.md)
- [Aurinko Calendar API vs SavvyCal API + MCP](https://www.anchorterminal.com/compare/aurinko-calendar-vs-savvycal.md)
- [Aurinko Calendar API vs Zoom Scheduler API](https://www.anchorterminal.com/compare/aurinko-calendar-vs-zoom-scheduler.md)
- [Cal.com API v2 + MCP vs SavvyCal API + MCP](https://www.anchorterminal.com/compare/cal-com-vs-savvycal.md)
- [Cal.com API v2 + MCP vs Zoom Scheduler API](https://www.anchorterminal.com/compare/cal-com-vs-zoom-scheduler.md)
- [Calendly API + MCP vs SavvyCal API + MCP](https://www.anchorterminal.com/compare/calendly-vs-savvycal.md)
- [Calendly API + MCP vs Zoom Scheduler API](https://www.anchorterminal.com/compare/calendly-vs-zoom-scheduler.md)
- [Cozi Family Organizer vs SavvyCal API + MCP](https://www.anchorterminal.com/compare/cozi-vs-savvycal.md)
- [Cozi Family Organizer vs Zoom Scheduler API](https://www.anchorterminal.com/compare/cozi-vs-zoom-scheduler.md)
- [Cronofy API vs SavvyCal API + MCP](https://www.anchorterminal.com/compare/cronofy-vs-savvycal.md)
- [Cronofy API vs Zoom Scheduler API](https://www.anchorterminal.com/compare/cronofy-vs-zoom-scheduler.md)
- [Google Calendar API vs SavvyCal API + MCP](https://www.anchorterminal.com/compare/google-calendar-api-vs-savvycal.md)
- [Google Calendar API vs Zoom Scheduler API](https://www.anchorterminal.com/compare/google-calendar-api-vs-zoom-scheduler.md)
- [Microsoft Graph Calendar API vs SavvyCal API + MCP](https://www.anchorterminal.com/compare/microsoft-graph-calendar-vs-savvycal.md)
- [Microsoft Graph Calendar API vs Zoom Scheduler API](https://www.anchorterminal.com/compare/microsoft-graph-calendar-vs-zoom-scheduler.md)
- [Nylas Calendar and Scheduler API vs SavvyCal API + MCP](https://www.anchorterminal.com/compare/nylas-calendar-vs-savvycal.md)
- [Nylas Calendar and Scheduler API vs Zoom Scheduler API](https://www.anchorterminal.com/compare/nylas-calendar-vs-zoom-scheduler.md)
- [SavvyCal API + MCP vs YouCanBookMe API](https://www.anchorterminal.com/compare/savvycal-vs-youcanbookme.md)
- [YouCanBookMe API vs Zoom Scheduler API](https://www.anchorterminal.com/compare/youcanbookme-vs-zoom-scheduler.md)

---

Query this catalogue directly over MCP: https://www.anchorterminal.com/mcp (Streamable HTTP, no key). How: https://www.anchorterminal.com/agents/#mcp
