# SavvyCal API + MCP (slim)

> SavvyCal's scheduling API lists and books events on scheduling links, reads open time slots and manages links, webhooks and workflows, with a hosted MCP server that lets an assistant book, move and cancel meetings.

- Full: https://www.anchorterminal.com/tools/savvycal.md (~8,250 tokens) · this version ~1,780 tokens · JSON https://www.anchorterminal.com/tools/savvycal.json · canonical https://www.anchorterminal.com/tools/savvycal
- Index: https://www.anchorterminal.com/llms.txt · API: https://www.anchorterminal.com/api/v1/index.json · MCP: https://www.anchorterminal.com/mcp · Updated: 2026-11-04 · pricing https://www.anchorterminal.com/tools/savvycal#pricing · reviews https://www.anchorterminal.com/tools/savvycal#reviews
- Licence: CC BY 4.0, credit Anchor Terminal and link this page (https://www.anchorterminal.com/terms/#data)

**C · 57/100 · rank #759 of 1349 · #7 in Calendars & scheduling · not agent-ready · confidence medium**


Assessment: 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.

## Facts

- Kind: HTTP API · vendor: SavvyCal, Inc. · category: Calendars & scheduling · legal entity: SavvyCal, Inc. · provenance 89/100
- Endpoint: `https://api.savvycal.com/v1` (HTTP, Streamable HTTP)
- Auth: OAuth or key · pricing: Freemium · x402: no · licence: unknown
- Probe metrics: not measured yet (probes haven't run)
- Surface listed: The REST API v1 at https://api.savvycal.com/v1 and the hosted MCP server at https://savvycal.com/mcp, read from docs.savvycal.com, the OpenAPI spec, savvycal.com, the status page and the updates board on 3 November 2026. No account was made and no tool was called; the MCP endpoint answered 401 with protected-resource metadata to a plain GET
- REST operations: 22. Events (list, get, cancel, create on a link), scheduling links (list, create personal, create in a scope, get, update, delete, duplicate, toggle, slots), current user, time zones (list, get), webhooks (list, create, get, delete), workflows (list, rules)
- MCP tools: 63 per the docs. Account 2, events 6, scheduling links 9, people on links 3, availability 15, calendars 2, contacts and people 5, meeting polls 7, workflows 6, teams 6, branding 2. It cannot manage integrations, billing or team roles
- Rate limits: Only one documented, 10 event creations a minute per link, failed ones included, answered with 429. No general limit, Retry-After or idempotency key found
- Pagination: Cursor based. `limit` 1 to 100 (default 20), `after` and `before` from the response `metadata`, null at either end
- Errors: An `errors` object keyed by field name (`base` for the whole request), each entry with `message`, optional `validation` such as required, format or length, and `count`. 400, 401, 404, 422 and 429 declared per operation
- Webhooks: 16 event types (event lifecycle, paid checkout, attendees, polls, workflow actions), HMAC-SHA256 signature per webhook secret, up to 20 attempts with exponential backoff, request log in the app
- Calendars: Google Calendar and Microsoft 365, the two components on the status page, plus iCloud and Outlook per the docs
- SDKs: None official. The docs recommend open-source OAuth client libraries
- Hosting: Fly.io, IAD region (Virginia), with the database on Crunchy Bridge on AWS us-east, per the security page. Processor list at savvycal.com/data-processors, updated 24 October 2026
- Legal entity: SavvyCal, Inc., Minneapolis, Minnesota, named in the terms (21 January 2026), privacy policy (17 October 2026) and DPA
- Prices: Basic $12 per seat per month; Premium $20 per seat per month

- Scores: Reliability 70, Performance pending, Schema & documentation 74, Agent ergonomics 53, Security & auth 50, Payments & pricing 30, Task success pending, Maintenance & community 40, Transparency & trust 73 · total over the 7 assessed categories
- Why: Reliability, Read with the hosted lines. · Schema & documentation, 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… · Agent ergonomics, List responses are sized by `limit` (default 20, at most 100) with no field selection. · Security & auth, OAuth 2 authorisation code apps with 2-hour access tokens and refresh tokens, and personal access tokens, both in the Authorization header o… · Payments & pricing, No x402, MPP or L402 (0). · Maintenance & community, Read as a closed service. · Transparency & trust, Closed service with terms that name SavvyCal, Inc.
- Sources: 26, open questions: 6, both in the full twin
- Capabilities: calendar.booking, calendar.availability, calendar.read, calendar.webhooks
- JSON: https://www.anchorterminal.com/api/v1/tools/savvycal.json
- Verify (for the vendor): the badge `https://www.anchorterminal.com/badges/savvycal.svg` or a link to https://www.anchorterminal.com/tools/savvycal from a page on savvycal.com or one of its subdomains, then `POST https://www.anchorterminal.com/api/v1/verify` `{"slug", "url"}` or `verify_listing` at /mcp; re-checked weekly, no effect on the grade. Snippets in the full twin.
- Support: support@savvycal.com; https://docs.savvycal.com/; https://docs.savvycal.com/contact; more in the full twin

## Before you call it

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

## Connect

```bash
curl https://api.savvycal.com/v1/me -H "Authorization: Bearer $SAVVYCAL_TOKEN"
```

```bash
claude mcp add --transport http savvycal https://savvycal.com/mcp
```
Full config and headless snippets are in the full page. Through letme (picks today, calling later): https://letme.dev/savvycal

## Similar tools

| Tool | Grade | Score | Shared capabilities | Slim |
| --- | --- | --- | --- | --- |
| Nylas Calendar and Scheduler API | BB | 75.5 | calendar.read, calendar.availability, calendar.booking, calendar.webhooks | https://www.anchorterminal.com/tools/nylas-calendar.min.md |
| Calendly API + MCP | B | 69.1 | calendar.read, calendar.availability, calendar.booking, calendar.webhooks | https://www.anchorterminal.com/tools/calendly.min.md |
| Cronofy API | B | 67.5 | calendar.read, calendar.availability, calendar.booking, calendar.webhooks | https://www.anchorterminal.com/tools/cronofy.min.md |
| Cal.com API v2 + MCP | C | 57.2 | calendar.read, calendar.availability, calendar.booking, calendar.webhooks | https://www.anchorterminal.com/tools/cal-com.min.md |
| Zoom Scheduler API | D | 50.7 | calendar.read, calendar.availability, calendar.booking, calendar.webhooks | https://www.anchorterminal.com/tools/zoom-scheduler.min.md |


## Panel reviews (0, desk reviews from public material, no calls made)

