{
  "data": {
    "a": {
      "slug": "calendly",
      "name": "Calendly API + MCP",
      "vendor": "Calendly",
      "vendorUrl": "https://calendly.com",
      "kind": "http-api",
      "category": "scheduling",
      "summary": "Calendly's scheduling API for availability, bookings, invitees and webhooks, with a hosted MCP server.",
      "url": "https://www.anchorterminal.com/tools/calendly",
      "markdownUrl": "https://www.anchorterminal.com/tools/calendly.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/calendly.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/calendly.json",
      "dns": "calendly.grade.anchorterminal.com",
      "transports": [
        "http",
        "streamable-http"
      ],
      "remoteUrl": "https://api.calendly.com",
      "packages": [],
      "auth": "mixed",
      "authNotes": "Personal access tokens for your own account, OAuth apps for other people's. Both go in the `Authorization: Bearer` header. The hosted MCP uses OAuth 2.1 with PKCE and dynamic client registration only. Only 8 OAuth tokens per user can be requested in a minute.",
      "pricing": "freemium",
      "pricingNotes": "Free plan. The pricing page lists Standard at $10 a seat a month and Teams at $16, and says yearly billing saves 17 and 20 per cent. Enterprise starts at $15,000 a year with a 50-seat minimum, in USD only (https://calendly.com/pricing). Booking through the API needs Standard or above (https://developer.calendly.com/api-docs/calendly-api/scheduled-events/create-event-invitee.md).",
      "priceSummary": "$10 / seat-mo",
      "where": "hosted",
      "x402": {
        "level": "no",
        "endpoints": []
      },
      "toolCount": 39,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-09-30"
      },
      "docsUrl": "https://developer.calendly.com",
      "llmsTxt": "https://developer.calendly.com/llms.txt",
      "openapi": "https://developer.calendly.com/openapi/calendly-api.json",
      "capabilities": [
        "calendar.read",
        "calendar.availability",
        "calendar.booking",
        "calendar.webhooks"
      ],
      "tags": [
        "hosted",
        "freemium",
        "free-tier",
        "mcp",
        "llms-txt",
        "openapi",
        "webhooks",
        "oauth",
        "closed-source",
        "enterprise"
      ],
      "lastRelease": "2026-10-30",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 69.1,
        "grade": "B",
        "agentReady": false,
        "rank": 260,
        "ranked": true,
        "rankOf": 1510,
        "categoryRank": 3,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 61,
          "maintenance": 60,
          "payments": 30,
          "reliability": 85,
          "schema": 86,
          "security": 70,
          "transparency": 80
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-11-01"
        },
        "negative": 0,
        "verdict": "Per-resource OAuth scopes for new apps and personal access tokens, plus read and write scopes on the MCP. Booking through the API needs a paid seat, and Free users get a 403.",
        "bestFor": "Best when the host already schedules through Calendly and the agent needs to find a slot and book or cancel it.",
        "strengths": [
          "Per-resource OAuth scopes for new apps and personal access tokens, plus read and write scopes on the MCP",
          "MCP tools annotated with readOnlyHint, destructiveHint and idempotentHint",
          "OpenAPI 3.1 in JSON and YAML, llms.txt and Markdown copies of every page",
          "Status page with separate API and Webhooks components, both at 100% uptime, and no incident in its feed on 1 November 2026",
          "SOC 2 Type 2 and ISO 27001, with an activity log scope on Enterprise"
        ],
        "weaknesses": [
          "Booking through the API needs a paid seat, and Free users get a 403",
          "Booking limited to 10 a minute, 50 an hour and 100 a day per user below Enterprise",
          "No idempotency key on POST /invitees",
          "No official SDK",
          "Tokens issued before scoped permissions keep full access"
        ],
        "agentNotes": [
          "Resolve the user's URI with GET /users/me before listing event types or busy times",
          "Pass `start_time` in UTC and the invitee's `timezone` when calling POST /invitees",
          "List the invitee's scheduled events before retrying a booking, since there's no idempotency key",
          "Read `X-RateLimit-Reset` on 429 and wait that many seconds",
          "Use a client with dynamic client registration for mcp.calendly.com, since it has no static client ID"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 2,
        "avgRating": 4,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "B",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 69.1
          }
        ],
        "editorialScores": {
          "ergonomics": 61,
          "maintenance": 60,
          "payments": 30,
          "reliability": 85,
          "schema": 86,
          "security": 70,
          "transparency": 61
        },
        "provenanceScore": 99,
        "checked": {
          "categories": {
            "ergonomics": "2026-11-01",
            "maintenance": "2026-11-01",
            "payments": "2026-11-01",
            "reliability": "2026-11-01",
            "schema": "2026-11-01",
            "security": "2026-11-01",
            "transparency": "2026-11-01"
          },
          "last": "2026-11-01",
          "lastMoved": "2026-11-01",
          "oldest": "2026-11-01",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "connect": {
        "http": "curl https://api.calendly.com/users/me -H \"Authorization: Bearer $CALENDLY_TOKEN\"",
        "claudeCode": "claude mcp add --transport http calendly https://mcp.calendly.com",
        "config": {
          "mcpServers": {
            "calendly": {
              "url": "https://mcp.calendly.com"
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/calendar.read",
        "tool": "https://letme.dev/calendly"
      },
      "area": "everyday",
      "unitPrices": [
        {
          "item": "Standard",
          "unit": "seat-month",
          "usd": 10,
          "note": "Headline price on the pricing page, which toggles yearly and monthly billing"
        },
        {
          "item": "Teams",
          "unit": "seat-month",
          "usd": 16,
          "note": "Headline price on the pricing page, which toggles yearly and monthly billing"
        }
      ],
      "provenance": {
        "legalEntity": "Calendly, LLC",
        "domain": "calendly.com",
        "domainRegistered": "2013-02-26",
        "endpointOnVendorDomain": true,
        "terms": "https://calendly.com/legal/customer-terms-conditions",
        "privacy": "https://calendly.com/legal/privacy-notice",
        "statusPage": "https://www.calendlystatus.com",
        "changelog": "https://developer.calendly.com/release-notes",
        "securityTxt": "valid",
        "checked": "2026-09-30",
        "notes": [
          "The privacy notice (updated 3 July 2026) names Calendly, LLC and a postal address in Buford, Georgia, and lists EEA and UK representatives.",
          "security.txt lists security@calendly.com and expires 2027-04-10.",
          "A developer policy sits at calendly.com/legal/developer-policy alongside the customer terms."
        ],
        "score": 99
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/calendly.json",
      "live": {
        "slug": "calendly",
        "probe": {
          "target": "https://api.calendly.com",
          "method": "get",
          "lastAt": "2026-11-07T19:21:58.340743949Z",
          "lastOk": true,
          "lastStatus": 401,
          "lastMs": 160,
          "lastNote": "asks for credentials",
          "authRequired": true,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 129,
          "p95ms24h": 195,
          "samples24h": 238,
          "samples30d": 7920,
          "days": [
            {
              "date": "2026-10-07",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-08",
              "probes": 268,
              "ok": 268
            },
            {
              "date": "2026-10-09",
              "probes": 250,
              "ok": 250
            },
            {
              "date": "2026-10-10",
              "probes": 247,
              "ok": 247
            },
            {
              "date": "2026-10-11",
              "probes": 247,
              "ok": 247
            },
            {
              "date": "2026-10-12",
              "probes": 247,
              "ok": 247
            },
            {
              "date": "2026-10-13",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-10-14",
              "probes": 249,
              "ok": 249
            },
            {
              "date": "2026-10-15",
              "probes": 253,
              "ok": 253
            },
            {
              "date": "2026-10-16",
              "probes": 252,
              "ok": 252
            },
            {
              "date": "2026-10-17",
              "probes": 253,
              "ok": 253
            },
            {
              "date": "2026-10-18",
              "probes": 256,
              "ok": 256
            },
            {
              "date": "2026-10-19",
              "probes": 255,
              "ok": 255
            },
            {
              "date": "2026-10-20",
              "probes": 252,
              "ok": 252
            },
            {
              "date": "2026-10-21",
              "probes": 253,
              "ok": 253
            },
            {
              "date": "2026-10-22",
              "probes": 253,
              "ok": 253
            },
            {
              "date": "2026-10-23",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-10-24",
              "probes": 251,
              "ok": 251
            },
            {
              "date": "2026-10-25",
              "probes": 250,
              "ok": 250
            },
            {
              "date": "2026-10-26",
              "probes": 252,
              "ok": 252
            },
            {
              "date": "2026-10-27",
              "probes": 249,
              "ok": 249
            },
            {
              "date": "2026-10-28",
              "probes": 251,
              "ok": 251
            },
            {
              "date": "2026-10-29",
              "probes": 249,
              "ok": 249
            },
            {
              "date": "2026-10-30",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-10-31",
              "probes": 251,
              "ok": 251
            },
            {
              "date": "2026-11-01",
              "probes": 249,
              "ok": 249
            },
            {
              "date": "2026-11-02",
              "probes": 250,
              "ok": 250
            },
            {
              "date": "2026-11-03",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-11-04",
              "probes": 246,
              "ok": 246
            },
            {
              "date": "2026-11-05",
              "probes": 185,
              "ok": 185
            },
            {
              "date": "2026-11-06",
              "probes": 241,
              "ok": 241
            },
            {
              "date": "2026-11-07",
              "probes": 197,
              "ok": 197
            }
          ]
        },
        "vendorStatus": {
          "page": "https://www.calendlystatus.com",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-11-07T19:21:09.035171244Z"
        },
        "securityTxt": {
          "url": "https://calendly.com/.well-known/security.txt",
          "state": "valid",
          "expires": "2027-04-10T00:00:00.000Z",
          "checkedAt": "2026-11-07T16:02:02.155337755Z"
        },
        "llmsTxt": {
          "url": "https://developer.calendly.com/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-11-07T15:31:45.822310923Z"
        },
        "domain": {
          "domain": "calendly.com",
          "registered": "2013-02-26",
          "source": "https://rdap.verisign.com/com/v1/domain/calendly.com",
          "checkedAt": "2026-11-01T14:15:29.552044032Z"
        },
        "pages": [
          {
            "url": "https://developer.calendly.com/release-notes",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-11-07T14:02:59.557175815Z",
            "changedAt": "2026-11-07T14:02:59.557175815Z",
            "fingerprint": "a861b126a73d"
          },
          {
            "url": "https://calendly.com/pricing",
            "kind": "pricing",
            "status": 200,
            "checkedAt": "2026-11-07T14:00:48.377812289Z",
            "changedAt": "2026-11-05T12:25:23.151200521Z",
            "fingerprint": "f777e319a45c"
          },
          {
            "url": "https://calendly.com/legal/privacy-notice",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-11-07T14:00:46.377529413Z",
            "changedAt": "2026-11-05T12:25:21.163078186Z",
            "fingerprint": "ee0148ee12cd"
          },
          {
            "url": "https://calendly.com/legal/customer-terms-conditions",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-11-07T14:00:43.970638835Z",
            "changedAt": "2026-11-05T12:25:18.710265355Z",
            "fingerprint": "33c0022d9087"
          }
        ],
        "mcpTools": {
          "url": "https://mcp.calendly.com",
          "checkedAt": "2026-11-07T01:43:04.174080664Z",
          "status": "auth",
          "note": "asks for credentials before listing its tools",
          "changedAt": "2026-11-07T01:43:04.174080664Z"
        },
        "updatedAt": "2026-11-07T19:21:58.340743949Z"
      }
    },
    "answer": "Calendly API + MCP scores 69.1 (B) on agent readiness against Truto Unified Calendar API's 60.4 (C), and leads in 6 of 7 scored categories. Truto Unified Calendar API leads on agent ergonomics.",
    "b": {
      "slug": "truto-calendar",
      "name": "Truto Unified Calendar API",
      "vendor": "Yin Yang Inc.",
      "vendorUrl": "https://truto.one",
      "kind": "http-api",
      "category": "scheduling",
      "summary": "Truto's Unified Calendar API gives one REST interface over Google Calendar, Outlook Calendar, Cal.com and Calendly, with calendars, events, availability, event types, contacts and users. It is part of Truto's unified API platform for software companies.",
      "url": "https://www.anchorterminal.com/tools/truto-calendar",
      "markdownUrl": "https://www.anchorterminal.com/tools/truto-calendar.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/truto-calendar.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/truto-calendar.json",
      "dns": "truto-calendar.grade.anchorterminal.com",
      "transports": [],
      "packages": [
        {
          "registry": "npm",
          "name": "@truto/truto-link-sdk"
        }
      ],
      "auth": "api-key",
      "authNotes": "A Truto API token, created in app.truto.one under Settings \u003e API Tokens for one environment (development, staging or production), sent as `Authorization: Bearer`. Every request names an `integrated_account_id`, the end customer's connected calendar account, whose OAuth tokens Truto holds. Per-account MCP servers can be limited to read or write methods and tags, and given an expiry.",
      "pricing": "paid",
      "pricingNotes": "Expansion from $999 per connector a year and Enterprise from $1,999, each with unlimited connections and API calls, sold through a demo. A free 30-day sandbox is given on request with a work email, usually within one business day.",
      "priceSummary": "$83.25 / mo",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the docs index, the pricing page or the API catalogue (checked 2026-11-06).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-11-06"
      },
      "docsUrl": "https://truto.one/docs/api-reference/unified-calendar-api/",
      "llmsTxt": "https://truto.one/docs/llms.txt",
      "openapi": "https://api.truto.one/schema/openapi.yml",
      "capabilities": [
        "calendar.read",
        "calendar.write",
        "calendar.availability",
        "calendar.booking",
        "automation.auth"
      ],
      "tags": [
        "hosted",
        "unified-api",
        "paid",
        "sales-led",
        "openapi",
        "llms-txt",
        "status-page",
        "webhooks",
        "google-calendar",
        "outlook"
      ],
      "lastRelease": "2026-10-26",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 60.4,
        "grade": "C",
        "agentReady": false,
        "rank": 655,
        "ranked": true,
        "rankOf": 1510,
        "categoryRank": 5,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 71,
          "maintenance": 50,
          "payments": 20,
          "reliability": 77,
          "schema": 75,
          "security": 52,
          "transparency": 61
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-11-06"
        },
        "negative": 0,
        "verdict": "Truto's calendar API is well documented for agents, with Markdown docs, field exclusion, normalised rate-limit headers and errors that name the failing side, across Google, Outlook, Cal.com and Calendly. It is sold from $999 a connector a year through a demo, had an API outage on 29 October 2026 and has no public changelog.",
        "bestFor": "Software companies that need their product's agent to read and book across customers' Google, Outlook, Cal.com and Calendly accounts.",
        "strengths": [
          "One REST shape for Google Calendar, Outlook Calendar, Cal.com and Calendly, including availability and event types",
          "Markdown copy of every docs page and an llms.txt index",
          "`truto_exclude_fields`, `truto_ignore_remote_data` and response formats to size replies",
          "Errors say whether Truto or the provider failed, and vendor rate limits come back as standard headers",
          "Pass-through design with no stored customer data, and a public DPA"
        ],
        "weaknesses": [
          "Priced from $999 per connector a year with a demo-led sandbox",
          "An outage of the APIs and dashboard on 29 October 2026 is on the status page",
          "No public changelog for the API",
          "API tokens are per environment with no scopes found",
          "Only five calendar integrations, and Calendly support is partial on events"
        ],
        "agentNotes": [
          "Pass `integrated_account_id` on every call; the token alone reaches nothing",
          "Call the meta endpoint for the method first to see which filters the vendor supports",
          "Set `truto_ignore_remote_data=true` and list fields in `truto_exclude_fields` to keep responses small",
          "On 429 wait for Retry-After; stay under 50 requests every 10 seconds per integrated account",
          "Set `expand_recurring=true` when the task needs each instance of a repeating event"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "C",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 60.4
          }
        ],
        "editorialScores": {
          "ergonomics": 71,
          "maintenance": 50,
          "payments": 20,
          "reliability": 77,
          "schema": 75,
          "security": 52,
          "transparency": 54
        },
        "provenanceScore": 67,
        "checked": {
          "categories": {
            "ergonomics": "2026-11-06",
            "maintenance": "2026-11-06",
            "payments": "2026-11-06",
            "reliability": "2026-11-06",
            "schema": "2026-11-06",
            "security": "2026-11-06",
            "transparency": "2026-11-06"
          },
          "last": "2026-11-06",
          "oldest": "2026-11-06",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "connect": {
        "http": "curl \"https://api.truto.one/unified/calendar/events?integrated_account_id=$ACCOUNT_ID\" -H \"Authorization: Bearer $TRUTO_API_TOKEN\""
      },
      "letme": {
        "capability": "https://letme.dev/calendar.read",
        "tool": "https://letme.dev/truto-calendar"
      },
      "area": "everyday",
      "unitPrices": [
        {
          "item": "Expansion plan connector",
          "unit": "month",
          "usd": 83.25,
          "note": "From $999 per connector a year"
        },
        {
          "item": "Enterprise plan connector",
          "unit": "month",
          "usd": 166.58,
          "note": "From $1,999 per connector a year"
        }
      ],
      "provenance": {
        "legalEntity": "Yin Yang Inc.",
        "domain": "truto.one",
        "domainRegistered": "",
        "endpointOnVendorDomain": true,
        "terms": "https://truto.one/tos/",
        "privacy": "https://truto.one/privacy/",
        "statusPage": "https://status.truto.one",
        "changelog": "",
        "securityTxt": "unknown",
        "checked": "2026-11-06",
        "notes": [
          "truto.one/robots.txt allows all and points to llms.txt, an RFC 9727 API catalogue and agent skills; every page has a Markdown sibling. api.truto.one/robots.txt returned 404. status.truto.one's robots.txt returned no rules.",
          "The terms name Yin Yang Inc. No clause on automated access was found in the parts read.",
          "The OpenAPI file at api.truto.one/schema/openapi.yml timed out after 30 seconds and was not read.",
          "security.txt was not checked. SOC 2 compliance is stated only in a blog post of 24 August 2023; no trust page was found."
        ],
        "score": 67
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/truto-calendar.json",
      "live": {
        "slug": "truto-calendar",
        "vendorStatus": {
          "page": "https://status.truto.one",
          "indicator": "unknown",
          "summary": "no machine-readable status found",
          "checkedAt": "2026-11-07T04:48:53.753341884Z"
        },
        "versions": [
          {
            "registry": "npm",
            "name": "@truto/truto-link-sdk",
            "version": "1.3.5",
            "seenAt": "2026-11-07T00:12:59.774757597Z"
          }
        ],
        "npmWeekly": 6850,
        "securityTxt": {
          "url": "https://truto.one/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-11-07T15:59:30.982914489Z"
        },
        "llmsTxt": {
          "url": "https://truto.one/docs/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-11-07T15:34:12.104383057Z"
        },
        "pages": [
          {
            "url": "https://truto.one/privacy/",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-11-07T14:22:35.56420207Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "83d604dc7090"
          },
          {
            "url": "https://truto.one/tos/",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-11-07T14:22:37.675377248Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "fa7045806b26"
          }
        ],
        "updatedAt": "2026-11-07T15:59:30.982914489Z"
      }
    },
    "edges": [
      {
        "by": 19,
        "category": "transparency",
        "leads": "calendly",
        "name": "Transparency \u0026 trust",
        "reasons": {
          "a": "Closed service with customer terms and a separate developer policy (15). Privacy notice (3 July 2026) gives no retention periods, and the no-AI-training statement sits on the security page, not in the privacy notice (18). The v1 to v2 migration notice is dated 26 March 2025 and legacy token behaviour under scopes is written down (12). Sub-processor list linked from the privacy notice, which says data sits in the US or wherever providers operate. We didn't open the list (16).",
          "b": "Closed service under terms naming Yin Yang Inc. (15 of 30). Truto says it stores no customer data and calls vendors live, logs are kept 30 or 90 days by plan, data is kept 15 days after termination, and a DPA is public (25 of 30). Deprecated admin endpoints are marked with no policy or dates (6 of 20). Enterprise customers can choose a data region and tokens can be stored regionally; no subprocessor list was found (8 of 20). 15 + 25 + 6 + 8 = 54."
        },
        "scores": {
          "a": 80,
          "b": 61
        }
      },
      {
        "by": 18,
        "category": "security",
        "leads": "calendly",
        "name": "Security \u0026 auth",
        "reasons": {
          "a": "OAuth 2.1 with PKCE and dynamic client registration on the MCP, and per-resource scopes such as `scheduled_events:read` and `availability:write` for new OAuth apps and new personal access tokens since March 2026. Tokens issued before scopes keep full access (28). Read scopes, `mcp:scheduling:read` and `mcp:scheduling:write` for the MCP, and destructiveHint on cancel, delete and revoke tools, but no confirmation step of its own (15). Invitee names and booking answers written by outsiders reach the model, with no injection guidance found (0). `activity_log:read` and audit logs on Enterprise (10). SOC 2 Type 2, ISO 27001, CSA STAR, an annual penetration test and a valid security.txt. No public bug bounty found (17).",
          "b": "API tokens are per environment and sent as Bearer headers; no scopes or expiry for them were found (20 of 30). Per-account MCP servers can be limited to read methods or tags and set to expire, and the customer's connection form can restrict access to specific resources, but the REST token reaches every integrated account in its environment (14 of 20). Event titles, descriptions and attendee text from outside parties pass through, and no prompt-injection guidance was found (0). Plans keep request logs 30 or 90 days (10 of 15). SOC 2 is stated in a 2023 blog post, with no trust page, security.txt or disclosure policy found (8 of 20). 20 + 14 + 0 + 10 + 8 = 52."
        },
        "scores": {
          "a": 70,
          "b": 52
        }
      },
      {
        "by": 11,
        "category": "schema",
        "leads": "calendly",
        "name": "Schema \u0026 documentation",
        "reasons": {
          "a": "OpenAPI 3.1 for the scheduling API and a separate one for OAuth, in JSON and YAML (25). llms.txt with about 130 links and Markdown copies of every docs page (10). Reference pages and MCP tool docs mark plan requirements such as paid plan for booking and Teams for routing forms (14). Typed parameters in the spec (12). 400, 401, 403, 404, 409, 424 and 500 responses in the spec. 429 appears on 9 of 65 operations, the contacts endpoints, on 1 November 2026 (12). Dated release notes, latest 30 October 2026. The API version only changes by migration, the last one being v1 to v2 (13).",
          "b": "An OpenAPI specification is linked from the RFC 9727 API catalogue, but the file timed out and was not read, so it is credited as published and unverified (20 of 25). llms.txt and a Markdown sibling for every page (10). Parameter descriptions say what each does and what it falls back to, such as `end_time` defaulting to the month of `start_time` (15 of 20). Types, required marks and allowed values such as `focus_time` and `out_of_office` (13 of 15). One documented error shape with provider and Truto fields; few request examples on the reference pages read (12 of 15). Deprecated admin endpoints are marked, but no API changelog was found (5 of 15). 20 + 10 + 15 + 13 + 12 + 5 = 75."
        },
        "scores": {
          "a": 86,
          "b": 75
        }
      },
      {
        "by": 10,
        "category": "ergonomics",
        "leads": "truto-calendar",
        "name": "Agent ergonomics",
        "reasons": {
          "a": "39 MCP tools on the supported tools page on 1 November 2026 (5), with 5 back for two skill tools that load task guidance on demand and 2 for `count` on REST lists (12). `next_page` pagination and time and status filters on scheduled events (17). Error codes in the spec, and Free users get a clear 403 on booking (15). MCP tools carry readOnlyHint, destructiveHint and idempotentHint, but the REST booking call has no idempotency key (12). No official SDK, and the user URI from /users/me is needed before most calls (5).",
          "b": "`truto_exclude_fields`, `truto_ignore_remote_data`, `truto_key_by` and response formats (`unified`, `raw`, `normalized`) size the reply (22 of 25). Query operators such as `[gt]` and `[in]`, `sort_by`, `limit` and cursors, with a meta endpoint that says which filters each vendor supports (18 of 20). Errors name the HTTP status and say whether Truto or the provider failed, with the provider's message extracted (18 of 20). No idempotency key found for creates (5 of 20). Every call needs only the token and `integrated_account_id`; a CLI and the Link SDK exist, with no general API SDK found (8 of 15). 22 + 18 + 18 + 5 + 8 = 71."
        },
        "scores": {
          "a": 61,
          "b": 71
        }
      },
      {
        "by": 10,
        "category": "payments",
        "leads": "calendly",
        "name": "Payments \u0026 pricing",
        "reasons": {
          "a": "No x402, MPP or L402 (0). Seat prices public ($10 and $16 a seat a month, Enterprise from $15,000 a year) but nothing per call (10). Free plan with API read access and no card, though booking through the API needs a paid seat (20). A person signs up and consents in a browser, even though MCP clients register themselves (0).",
          "b": "No x402, MPP or L402 (0). Plan prices per connector a year are public, with unlimited calls (10). A free 30-day sandbox is given after a work-email request reviewed within a business day (10 of 20). A person requests access or books a demo (0). 0 + 10 + 10 + 0 = 20."
        },
        "scores": {
          "a": 30,
          "b": 20
        }
      },
      {
        "by": 10,
        "category": "maintenance",
        "leads": "calendly",
        "name": "Maintenance \u0026 community",
        "reasons": {
          "a": "Latest release note on 30 October 2026 (Teams API), two days before this check (30). Four dated entries since 3 August (25 August, 22, 23 and 30 October) (20). Public release notes and a developer support route, no public issue tracker (10). No official SDKs (0). No package to assess (0).",
          "b": "No API changelog, so the last API change can't be dated; the official @truto/truto-link-sdk was published as 1.3.5 on 26 October 2026, which we take as the latest dated release (20 of 30, since it is the connection widget, not the calendar API). Six Link SDK versions since 8 August (10 of 20, for the same reason). Support through Slack on paid plans, with no public tracker (5 of 15). A CLI and the Link SDK are official, with no API client (10 of 15). Package health not checked (5 of 10). 20 + 10 + 5 + 10 + 5 = 50."
        },
        "scores": {
          "a": 60,
          "b": 50
        }
      }
    ],
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "Calendly",
        "b": "Yin Yang Inc.",
        "name": "Vendor"
      },
      {
        "a": "https://api.calendly.com",
        "b": "no (local only)",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP, Streamable HTTP",
        "b": "",
        "name": "Transports"
      },
      {
        "a": "OAuth or key",
        "b": "API key",
        "name": "Auth"
      },
      {
        "a": "Freemium",
        "b": "Paid",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "39",
        "b": "none",
        "name": "Tools exposed"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "2026-10-30",
        "b": "2026-10-26",
        "name": "Last release"
      },
      {
        "a": "2026-08-05",
        "b": "no date given",
        "name": "Terms last updated"
      },
      {
        "a": "2026-07-03",
        "b": "2024-10-19",
        "name": "Privacy policy last updated"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Customer content may train models"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Terms restrict automated access"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "4/5 (2)",
        "b": "none",
        "name": "Agent reviews"
      }
    ],
    "faq": [
      {
        "answer": "Calendly API + MCP scores 69.1 (B) on agent readiness against Truto Unified Calendar API's 60.4 (C), and leads in 6 of 7 scored categories. Truto Unified Calendar API leads on agent ergonomics.",
        "question": "Which is better for AI agents, Calendly API + MCP or Truto Unified Calendar API?"
      },
      {
        "answer": "Calendly API + MCP takes an API key or an OAuth sign-in. Truto Unified Calendar API needs an API key.",
        "question": "Do Calendly API + MCP and Truto Unified Calendar API need an API key?"
      },
      {
        "answer": "Calendly API + MCP has a hosted endpoint at https://api.calendly.com. No hosted endpoint is listed for Truto Unified Calendar API.",
        "question": "Can an agent call Calendly API + MCP and Truto Unified Calendar API without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Reliability, 85 against 77",
          "Schema \u0026 documentation, 86 against 75",
          "Security \u0026 auth, 70 against 52",
          "Payments \u0026 pricing, 30 against 20",
          "Maintenance \u0026 community, 60 against 50",
          "Transparency \u0026 trust, 80 against 61"
        ],
        "also": [
          "A hosted endpoint, with nothing to install"
        ],
        "goodFor": "Best when the host already schedules through Calendly and the agent needs to find a slot and book or cancel it.",
        "slug": "calendly",
        "watchFor": "Booking through the API needs a paid seat, and Free users get a 403"
      },
      {
        "aheadOn": [
          "Agent ergonomics, 71 against 61"
        ],
        "also": null,
        "goodFor": "Software companies that need their product's agent to read and book across customers' Google, Outlook, Cal.com and Calendly accounts.",
        "slug": "truto-calendar",
        "watchFor": "Priced from $999 per connector a year with a demo-led sandbox"
      }
    ],
    "history": {
      "calendly": [
        {
          "causes": [
            "product"
          ],
          "date": "2026-11-01",
          "delta": 0.8,
          "from": 68.3,
          "fromGrade": "B",
          "to": 69.1,
          "toGrade": "B"
        },
        {
          "causes": [
            "method"
          ],
          "date": "2026-10-08",
          "delta": -0.1,
          "from": 68.4,
          "fromGrade": "B",
          "to": 68.3,
          "toGrade": "B"
        }
      ],
      "truto-calendar": null
    },
    "job": {
      "capability": "calendar.read",
      "name": "Calendar access"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/acuity-scheduling-vs-calendly.json",
        "title": "Acuity Scheduling API vs Calendly API + MCP",
        "url": "https://www.anchorterminal.com/compare/acuity-scheduling-vs-calendly"
      },
      {
        "json": "https://www.anchorterminal.com/compare/acuity-scheduling-vs-truto-calendar.json",
        "title": "Acuity Scheduling API vs Truto Unified Calendar API",
        "url": "https://www.anchorterminal.com/compare/acuity-scheduling-vs-truto-calendar"
      },
      {
        "json": "https://www.anchorterminal.com/compare/agenda-hero-vs-calendly.json",
        "title": "Agenda Hero vs Calendly API + MCP",
        "url": "https://www.anchorterminal.com/compare/agenda-hero-vs-calendly"
      },
      {
        "json": "https://www.anchorterminal.com/compare/agenda-hero-vs-truto-calendar.json",
        "title": "Agenda Hero vs Truto Unified Calendar API",
        "url": "https://www.anchorterminal.com/compare/agenda-hero-vs-truto-calendar"
      },
      {
        "json": "https://www.anchorterminal.com/compare/apiroc-vs-calendly.json",
        "title": "Apiroc Unified Calendar API vs Calendly API + MCP",
        "url": "https://www.anchorterminal.com/compare/apiroc-vs-calendly"
      },
      {
        "json": "https://www.anchorterminal.com/compare/apiroc-vs-truto-calendar.json",
        "title": "Apiroc Unified Calendar API vs Truto Unified Calendar API",
        "url": "https://www.anchorterminal.com/compare/apiroc-vs-truto-calendar"
      },
      {
        "json": "https://www.anchorterminal.com/compare/aurinko-calendar-vs-calendly.json",
        "title": "Aurinko Calendar API vs Calendly API + MCP",
        "url": "https://www.anchorterminal.com/compare/aurinko-calendar-vs-calendly"
      },
      {
        "json": "https://www.anchorterminal.com/compare/aurinko-calendar-vs-truto-calendar.json",
        "title": "Aurinko Calendar API vs Truto Unified Calendar API",
        "url": "https://www.anchorterminal.com/compare/aurinko-calendar-vs-truto-calendar"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cal-com-vs-calendly.json",
        "title": "Cal.com API v2 + MCP vs Calendly API + MCP",
        "url": "https://www.anchorterminal.com/compare/cal-com-vs-calendly"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cal-com-vs-truto-calendar.json",
        "title": "Cal.com API v2 + MCP vs Truto Unified Calendar API",
        "url": "https://www.anchorterminal.com/compare/cal-com-vs-truto-calendar"
      },
      {
        "json": "https://www.anchorterminal.com/compare/calendly-vs-cozi.json",
        "title": "Calendly API + MCP vs Cozi Family Organizer",
        "url": "https://www.anchorterminal.com/compare/calendly-vs-cozi"
      },
      {
        "json": "https://www.anchorterminal.com/compare/calendly-vs-cronofy.json",
        "title": "Calendly API + MCP vs Cronofy API",
        "url": "https://www.anchorterminal.com/compare/calendly-vs-cronofy"
      },
      {
        "json": "https://www.anchorterminal.com/compare/calendly-vs-google-calendar-api.json",
        "title": "Calendly API + MCP vs Google Calendar API",
        "url": "https://www.anchorterminal.com/compare/calendly-vs-google-calendar-api"
      },
      {
        "json": "https://www.anchorterminal.com/compare/calendly-vs-microsoft-graph-calendar.json",
        "title": "Calendly API + MCP vs Microsoft Graph Calendar API",
        "url": "https://www.anchorterminal.com/compare/calendly-vs-microsoft-graph-calendar"
      },
      {
        "json": "https://www.anchorterminal.com/compare/calendly-vs-nylas-calendar.json",
        "title": "Calendly API + MCP vs Nylas Calendar and Scheduler API",
        "url": "https://www.anchorterminal.com/compare/calendly-vs-nylas-calendar"
      },
      {
        "json": "https://www.anchorterminal.com/compare/calendly-vs-reclaim-ai.json",
        "title": "Calendly API + MCP vs Reclaim.ai",
        "url": "https://www.anchorterminal.com/compare/calendly-vs-reclaim-ai"
      },
      {
        "json": "https://www.anchorterminal.com/compare/calendly-vs-savvycal.json",
        "title": "Calendly API + MCP vs SavvyCal API + MCP",
        "url": "https://www.anchorterminal.com/compare/calendly-vs-savvycal"
      },
      {
        "json": "https://www.anchorterminal.com/compare/calendly-vs-zoom-scheduler.json",
        "title": "Calendly API + MCP vs Zoom Scheduler API",
        "url": "https://www.anchorterminal.com/compare/calendly-vs-zoom-scheduler"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cozi-vs-truto-calendar.json",
        "title": "Cozi Family Organizer vs Truto Unified Calendar API",
        "url": "https://www.anchorterminal.com/compare/cozi-vs-truto-calendar"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cronofy-vs-truto-calendar.json",
        "title": "Cronofy API vs Truto Unified Calendar API",
        "url": "https://www.anchorterminal.com/compare/cronofy-vs-truto-calendar"
      },
      {
        "json": "https://www.anchorterminal.com/compare/google-calendar-api-vs-truto-calendar.json",
        "title": "Google Calendar API vs Truto Unified Calendar API",
        "url": "https://www.anchorterminal.com/compare/google-calendar-api-vs-truto-calendar"
      },
      {
        "json": "https://www.anchorterminal.com/compare/microsoft-graph-calendar-vs-truto-calendar.json",
        "title": "Microsoft Graph Calendar API vs Truto Unified Calendar API",
        "url": "https://www.anchorterminal.com/compare/microsoft-graph-calendar-vs-truto-calendar"
      },
      {
        "json": "https://www.anchorterminal.com/compare/nylas-calendar-vs-truto-calendar.json",
        "title": "Nylas Calendar and Scheduler API vs Truto Unified Calendar API",
        "url": "https://www.anchorterminal.com/compare/nylas-calendar-vs-truto-calendar"
      },
      {
        "json": "https://www.anchorterminal.com/compare/reclaim-ai-vs-truto-calendar.json",
        "title": "Reclaim.ai vs Truto Unified Calendar API",
        "url": "https://www.anchorterminal.com/compare/reclaim-ai-vs-truto-calendar"
      },
      {
        "json": "https://www.anchorterminal.com/compare/truto-calendar-vs-zoom-scheduler.json",
        "title": "Truto Unified Calendar API vs Zoom Scheduler API",
        "url": "https://www.anchorterminal.com/compare/truto-calendar-vs-zoom-scheduler"
      },
      {
        "json": "https://www.anchorterminal.com/compare/calendly-vs-youcanbookme.json",
        "title": "Calendly API + MCP vs YouCanBookMe API",
        "url": "https://www.anchorterminal.com/compare/calendly-vs-youcanbookme"
      },
      {
        "json": "https://www.anchorterminal.com/compare/savvycal-vs-truto-calendar.json",
        "title": "SavvyCal API + MCP vs Truto Unified Calendar API",
        "url": "https://www.anchorterminal.com/compare/savvycal-vs-truto-calendar"
      },
      {
        "json": "https://www.anchorterminal.com/compare/truto-calendar-vs-youcanbookme.json",
        "title": "Truto Unified Calendar API vs YouCanBookMe API",
        "url": "https://www.anchorterminal.com/compare/truto-calendar-vs-youcanbookme"
      }
    ],
    "panel": null,
    "scores": [
      {
        "by": 8,
        "calendly": 85,
        "edge": "calendly",
        "key": "reliability",
        "name": "Reliability",
        "truto-calendar": 77,
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 11,
        "calendly": 86,
        "edge": "calendly",
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "truto-calendar": 75,
        "weight": 13
      },
      {
        "by": 10,
        "calendly": 61,
        "edge": "truto-calendar",
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "truto-calendar": 71,
        "weight": 13
      },
      {
        "by": 18,
        "calendly": 70,
        "edge": "calendly",
        "key": "security",
        "name": "Security \u0026 auth",
        "truto-calendar": 52,
        "weight": 14
      },
      {
        "by": 10,
        "calendly": 30,
        "edge": "calendly",
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "truto-calendar": 20,
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 10,
        "calendly": 60,
        "edge": "calendly",
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "truto-calendar": 50,
        "weight": 7
      },
      {
        "by": 19,
        "calendly": 80,
        "edge": "calendly",
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "truto-calendar": 61,
        "weight": 7
      }
    ],
    "summary": "Calendly API + MCP scores 69.1 (B) on agent readiness against Truto Unified Calendar API's 60.4 (C), and leads in 6 of 7 scored categories. Truto Unified Calendar API leads on agent ergonomics. Both do calendar access.",
    "tasks": null,
    "tutorials": [],
    "verdicts": {
      "calendly": "Per-resource OAuth scopes for new apps and personal access tokens, plus read and write scopes on the MCP. Booking through the API needs a paid seat, and Free users get a 403.",
      "truto-calendar": "Truto's calendar API is well documented for agents, with Markdown docs, field exclusion, normalised rate-limit headers and errors that name the failing side, across Google, Outlook, Cal.com and Calendly. It is sold from $999 a connector a year through a demo, had an API outage on 29 October 2026 and has no public changelog."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/calendly-vs-truto-calendar",
    "json": "https://www.anchorterminal.com/compare/calendly-vs-truto-calendar.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/calendly-vs-truto-calendar.md",
    "mcp": "https://www.anchorterminal.com/mcp",
    "slim": "https://www.anchorterminal.com/compare/calendly-vs-truto-calendar.min.md"
  },
  "markdown": "Calendly API + MCP scores 69.1 (B) on agent readiness against Truto Unified Calendar API's 60.4 (C), and leads in 6 of 7 scored categories. Truto Unified Calendar API leads on agent ergonomics. Both do calendar access.\n\n- Calendly API + MCP: grade B, 69.1/100, rank #260 of 1510. Markdown https://www.anchorterminal.com/tools/calendly.md · JSON https://www.anchorterminal.com/api/v1/tools/calendly.json\n- Truto Unified Calendar API: grade C, 60.4/100, rank #655 of 1510. Markdown https://www.anchorterminal.com/tools/truto-calendar.md · JSON https://www.anchorterminal.com/api/v1/tools/truto-calendar.json\n- Best calendar and scheduling APIs for AI agents: https://www.anchorterminal.com/best/scheduling/index.md\n- All 118 scheduling comparisons: https://www.anchorterminal.com/compare/scheduling/index.md\n\n## Which one, for what\n\n### Calendly API + MCP (B)\n\nGood for: Best when the host already schedules through Calendly and the agent needs to find a slot and book or cancel it.\n\nAhead on:\n- Reliability, 85 against 77\n- Schema \u0026 documentation, 86 against 75\n- Security \u0026 auth, 70 against 52\n- Payments \u0026 pricing, 30 against 20\n- Maintenance \u0026 community, 60 against 50\n- Transparency \u0026 trust, 80 against 61\n\nAlso in its favour:\n- A hosted endpoint, with nothing to install\n\nWatch for: Booking through the API needs a paid seat, and Free users get a 403\n\n### Truto Unified Calendar API (C)\n\nGood for: Software companies that need their product's agent to read and book across customers' Google, Outlook, Cal.com and Calendly accounts.\n\nAhead on:\n- Agent ergonomics, 71 against 61\n\nWatch for: Priced from $999 per connector a year with a demo-led sandbox\n\n\n## Why the edge\n\n### Transparency \u0026 trust: Calendly API + MCP +19\n\n- Calendly API + MCP (80): Closed service with customer terms and a separate developer policy (15). Privacy notice (3 July 2026) gives no retention periods, and the no-AI-training statement sits on the security page, not in the privacy notice (18). The v1 to v2 migration notice is dated 26 March 2025 and legacy token behaviour under scopes is written down (12). Sub-processor list linked from the privacy notice, which says data sits in the US or wherever providers operate. We didn't open the list (16).\n- Truto Unified Calendar API (61): Closed service under terms naming Yin Yang Inc. (15 of 30). Truto says it stores no customer data and calls vendors live, logs are kept 30 or 90 days by plan, data is kept 15 days after termination, and a DPA is public (25 of 30). Deprecated admin endpoints are marked with no policy or dates (6 of 20). Enterprise customers can choose a data region and tokens can be stored regionally; no subprocessor list was found (8 of 20). 15 + 25 + 6 + 8 = 54.\n\n### Security \u0026 auth: Calendly API + MCP +18\n\n- Calendly API + MCP (70): OAuth 2.1 with PKCE and dynamic client registration on the MCP, and per-resource scopes such as `scheduled_events:read` and `availability:write` for new OAuth apps and new personal access tokens since March 2026. Tokens issued before scopes keep full access (28). Read scopes, `mcp:scheduling:read` and `mcp:scheduling:write` for the MCP, and destructiveHint on cancel, delete and revoke tools, but no confirmation step of its own (15). Invitee names and booking answers written by outsiders reach the model, with no injection guidance found (0). `activity_log:read` and audit logs on Enterprise (10). SOC 2 Type 2, ISO 27001, CSA STAR, an annual penetration test and a valid security.txt. No public bug bounty found (17).\n- Truto Unified Calendar API (52): API tokens are per environment and sent as Bearer headers; no scopes or expiry for them were found (20 of 30). Per-account MCP servers can be limited to read methods or tags and set to expire, and the customer's connection form can restrict access to specific resources, but the REST token reaches every integrated account in its environment (14 of 20). Event titles, descriptions and attendee text from outside parties pass through, and no prompt-injection guidance was found (0). Plans keep request logs 30 or 90 days (10 of 15). SOC 2 is stated in a 2023 blog post, with no trust page, security.txt or disclosure policy found (8 of 20). 20 + 14 + 0 + 10 + 8 = 52.\n\n### Schema \u0026 documentation: Calendly API + MCP +11\n\n- Calendly API + MCP (86): OpenAPI 3.1 for the scheduling API and a separate one for OAuth, in JSON and YAML (25). llms.txt with about 130 links and Markdown copies of every docs page (10). Reference pages and MCP tool docs mark plan requirements such as paid plan for booking and Teams for routing forms (14). Typed parameters in the spec (12). 400, 401, 403, 404, 409, 424 and 500 responses in the spec. 429 appears on 9 of 65 operations, the contacts endpoints, on 1 November 2026 (12). Dated release notes, latest 30 October 2026. The API version only changes by migration, the last one being v1 to v2 (13).\n- Truto Unified Calendar API (75): An OpenAPI specification is linked from the RFC 9727 API catalogue, but the file timed out and was not read, so it is credited as published and unverified (20 of 25). llms.txt and a Markdown sibling for every page (10). Parameter descriptions say what each does and what it falls back to, such as `end_time` defaulting to the month of `start_time` (15 of 20). Types, required marks and allowed values such as `focus_time` and `out_of_office` (13 of 15). One documented error shape with provider and Truto fields; few request examples on the reference pages read (12 of 15). Deprecated admin endpoints are marked, but no API changelog was found (5 of 15). 20 + 10 + 15 + 13 + 12 + 5 = 75.\n\n### Agent ergonomics: Truto Unified Calendar API +10\n\n- Calendly API + MCP (61): 39 MCP tools on the supported tools page on 1 November 2026 (5), with 5 back for two skill tools that load task guidance on demand and 2 for `count` on REST lists (12). `next_page` pagination and time and status filters on scheduled events (17). Error codes in the spec, and Free users get a clear 403 on booking (15). MCP tools carry readOnlyHint, destructiveHint and idempotentHint, but the REST booking call has no idempotency key (12). No official SDK, and the user URI from /users/me is needed before most calls (5).\n- Truto Unified Calendar API (71): `truto_exclude_fields`, `truto_ignore_remote_data`, `truto_key_by` and response formats (`unified`, `raw`, `normalized`) size the reply (22 of 25). Query operators such as `[gt]` and `[in]`, `sort_by`, `limit` and cursors, with a meta endpoint that says which filters each vendor supports (18 of 20). Errors name the HTTP status and say whether Truto or the provider failed, with the provider's message extracted (18 of 20). No idempotency key found for creates (5 of 20). Every call needs only the token and `integrated_account_id`; a CLI and the Link SDK exist, with no general API SDK found (8 of 15). 22 + 18 + 18 + 5 + 8 = 71.\n\n### Payments \u0026 pricing: Calendly API + MCP +10\n\n- Calendly API + MCP (30): No x402, MPP or L402 (0). Seat prices public ($10 and $16 a seat a month, Enterprise from $15,000 a year) but nothing per call (10). Free plan with API read access and no card, though booking through the API needs a paid seat (20). A person signs up and consents in a browser, even though MCP clients register themselves (0).\n- Truto Unified Calendar API (20): No x402, MPP or L402 (0). Plan prices per connector a year are public, with unlimited calls (10). A free 30-day sandbox is given after a work-email request reviewed within a business day (10 of 20). A person requests access or books a demo (0). 0 + 10 + 10 + 0 = 20.\n\n### Maintenance \u0026 community: Calendly API + MCP +10\n\n- Calendly API + MCP (60): Latest release note on 30 October 2026 (Teams API), two days before this check (30). Four dated entries since 3 August (25 August, 22, 23 and 30 October) (20). Public release notes and a developer support route, no public issue tracker (10). No official SDKs (0). No package to assess (0).\n- Truto Unified Calendar API (50): No API changelog, so the last API change can't be dated; the official @truto/truto-link-sdk was published as 1.3.5 on 26 October 2026, which we take as the latest dated release (20 of 30, since it is the connection widget, not the calendar API). Six Link SDK versions since 8 August (10 of 20, for the same reason). Support through Slack on paid plans, with no public tracker (5 of 15). A CLI and the Link SDK are official, with no API client (10 of 15). Package health not checked (5 of 10). 20 + 10 + 5 + 10 + 5 = 50.\n\n## Score by category\n\n| Category | Weight | Calendly API + MCP | Truto Unified Calendar API | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 85 | 77 | Calendly API + MCP +8 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 86 | 75 | Calendly API + MCP +11 |\n| Agent ergonomics | 13% (16.2 this run) | 61 | 71 | Truto Unified Calendar API +10 |\n| Security \u0026 auth | 14% (17.5 this run) | 70 | 52 | Calendly API + MCP +18 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 30 | 20 | Calendly API + MCP +10 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 60 | 50 | Calendly API + MCP +10 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 80 | 61 | Calendly API + MCP +19 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **69.1 · B** | **60.4 · C** | |\n\n## Facts side by side\n\n| Fact | Calendly API + MCP | Truto Unified Calendar API |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | Calendly | Yin Yang Inc. |\n| Hosted endpoint | `https://api.calendly.com` | no (local only) |\n| Transports | HTTP, Streamable HTTP |  |\n| Auth | OAuth or key | API key |\n| Pricing | Freemium | Paid |\n| x402 | no | no |\n| Tools exposed | 39 | none |\n| Read-only variant documented | no | no |\n| llms.txt | yes | yes |\n| Last release | 2026-10-30 | 2026-10-26 |\n| Terms last updated | 2026-08-05 | no date given |\n| Privacy policy last updated | 2026-07-03 | 2024-10-19 |\n| Customer content may train models | not found in the text | not found in the text |\n| Terms restrict automated access | not found in the text | not found in the text |\n| Terms restrict benchmarking | not found in the text | not found in the text |\n| Terms or service can change without notice | not found in the text | not found in the text |\n| Arbitration or class-action waiver | yes | yes |\n| Agent reviews | 4/5 (2) | none |\n\n## How the scores have moved\n\n### Calendly API + MCP\n\n- +0.8 on 1 November 2026: product\n- -0.1 on 8 October 2026: checklist\n\n### Truto Unified Calendar API\n\nNo score change since it was listed.\n\n## Verdicts\n\n**Calendly API + MCP.** Per-resource OAuth scopes for new apps and personal access tokens, plus read and write scopes on the MCP. Booking through the API needs a paid seat, and Free users get a 403.\n\n**Truto Unified Calendar API.** Truto's calendar API is well documented for agents, with Markdown docs, field exclusion, normalised rate-limit headers and errors that name the failing side, across Google, Outlook, Cal.com and Calendly. It is sold from $999 a connector a year through a demo, had an API outage on 29 October 2026 and has no public changelog.\n\n## Before you call either\n\n### Calendly API + MCP\n\n1. Resolve the user's URI with GET /users/me before listing event types or busy times\n2. Pass `start_time` in UTC and the invitee's `timezone` when calling POST /invitees\n3. List the invitee's scheduled events before retrying a booking, since there's no idempotency key\n4. Read `X-RateLimit-Reset` on 429 and wait that many seconds\n5. Use a client with dynamic client registration for mcp.calendly.com, since it has no static client ID\n\n### Truto Unified Calendar API\n\n1. Pass `integrated_account_id` on every call; the token alone reaches nothing\n2. Call the meta endpoint for the method first to see which filters the vendor supports\n3. Set `truto_ignore_remote_data=true` and list fields in `truto_exclude_fields` to keep responses small\n4. On 429 wait for Retry-After; stay under 50 requests every 10 seconds per integrated account\n5. Set `expand_recurring=true` when the task needs each instance of a repeating event\n\n## Questions\n\n### Which is better for AI agents, Calendly API + MCP or Truto Unified Calendar API?\n\nCalendly API + MCP scores 69.1 (B) on agent readiness against Truto Unified Calendar API's 60.4 (C), and leads in 6 of 7 scored categories. Truto Unified Calendar API leads on agent ergonomics.\n\n### Do Calendly API + MCP and Truto Unified Calendar API need an API key?\n\nCalendly API + MCP takes an API key or an OAuth sign-in. Truto Unified Calendar API needs an API key.\n\n### Can an agent call Calendly API + MCP and Truto Unified Calendar API without installing anything?\n\nCalendly API + MCP has a hosted endpoint at https://api.calendly.com. No hosted endpoint is listed for Truto Unified Calendar API.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/calendly-vs-truto-calendar.json, and with the fewest tokens: https://www.anchorterminal.com/compare/calendly-vs-truto-calendar.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"calendly\", \"b\": \"truto-calendar\"}`. From a terminal: `anchor compare calendly truto-calendar`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/calendly.json and https://www.anchorterminal.com/api/v1/tools/truto-calendar.json\n\n## Other comparisons with Calendly API + MCP or Truto Unified Calendar API\n\n- [Acuity Scheduling API vs Calendly API + MCP](https://www.anchorterminal.com/compare/acuity-scheduling-vs-calendly.md)\n- [Acuity Scheduling API vs Truto Unified Calendar API](https://www.anchorterminal.com/compare/acuity-scheduling-vs-truto-calendar.md)\n- [Agenda Hero vs Calendly API + MCP](https://www.anchorterminal.com/compare/agenda-hero-vs-calendly.md)\n- [Agenda Hero vs Truto Unified Calendar API](https://www.anchorterminal.com/compare/agenda-hero-vs-truto-calendar.md)\n- [Apiroc Unified Calendar API vs Calendly API + MCP](https://www.anchorterminal.com/compare/apiroc-vs-calendly.md)\n- [Apiroc Unified Calendar API vs Truto Unified Calendar API](https://www.anchorterminal.com/compare/apiroc-vs-truto-calendar.md)\n- [Aurinko Calendar API vs Calendly API + MCP](https://www.anchorterminal.com/compare/aurinko-calendar-vs-calendly.md)\n- [Aurinko Calendar API vs Truto Unified Calendar API](https://www.anchorterminal.com/compare/aurinko-calendar-vs-truto-calendar.md)\n- [Cal.com API v2 + MCP vs Calendly API + MCP](https://www.anchorterminal.com/compare/cal-com-vs-calendly.md)\n- [Cal.com API v2 + MCP vs Truto Unified Calendar API](https://www.anchorterminal.com/compare/cal-com-vs-truto-calendar.md)\n- [Calendly API + MCP vs Cozi Family Organizer](https://www.anchorterminal.com/compare/calendly-vs-cozi.md)\n- [Calendly API + MCP vs Cronofy API](https://www.anchorterminal.com/compare/calendly-vs-cronofy.md)\n- [Calendly API + MCP vs Google Calendar API](https://www.anchorterminal.com/compare/calendly-vs-google-calendar-api.md)\n- [Calendly API + MCP vs Microsoft Graph Calendar API](https://www.anchorterminal.com/compare/calendly-vs-microsoft-graph-calendar.md)\n- [Calendly API + MCP vs Nylas Calendar and Scheduler API](https://www.anchorterminal.com/compare/calendly-vs-nylas-calendar.md)\n- [Calendly API + MCP vs Reclaim.ai](https://www.anchorterminal.com/compare/calendly-vs-reclaim-ai.md)\n- [Calendly API + MCP vs SavvyCal API + MCP](https://www.anchorterminal.com/compare/calendly-vs-savvycal.md)\n- [Calendly API + MCP vs Zoom Scheduler API](https://www.anchorterminal.com/compare/calendly-vs-zoom-scheduler.md)\n- [Cozi Family Organizer vs Truto Unified Calendar API](https://www.anchorterminal.com/compare/cozi-vs-truto-calendar.md)\n- [Cronofy API vs Truto Unified Calendar API](https://www.anchorterminal.com/compare/cronofy-vs-truto-calendar.md)\n- [Google Calendar API vs Truto Unified Calendar API](https://www.anchorterminal.com/compare/google-calendar-api-vs-truto-calendar.md)\n- [Microsoft Graph Calendar API vs Truto Unified Calendar API](https://www.anchorterminal.com/compare/microsoft-graph-calendar-vs-truto-calendar.md)\n- [Nylas Calendar and Scheduler API vs Truto Unified Calendar API](https://www.anchorterminal.com/compare/nylas-calendar-vs-truto-calendar.md)\n- [Reclaim.ai vs Truto Unified Calendar API](https://www.anchorterminal.com/compare/reclaim-ai-vs-truto-calendar.md)\n- [Truto Unified Calendar API vs Zoom Scheduler API](https://www.anchorterminal.com/compare/truto-calendar-vs-zoom-scheduler.md)\n- [Calendly API + MCP vs YouCanBookMe API](https://www.anchorterminal.com/compare/calendly-vs-youcanbookme.md)\n- [SavvyCal API + MCP vs Truto Unified Calendar API](https://www.anchorterminal.com/compare/savvycal-vs-truto-calendar.md)\n- [Truto Unified Calendar API vs YouCanBookMe API](https://www.anchorterminal.com/compare/truto-calendar-vs-youcanbookme.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "attributionRequired": true,
    "credit": "CC BY 4.0, credit Anchor Terminal and link the page or API address you took it from (https://www.anchorterminal.com/terms/#data)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-11-07",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.7",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run",
    "terms": "https://www.anchorterminal.com/terms/#data"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Compare",
        "url": "https://www.anchorterminal.com/compare/"
      },
      {
        "name": "Calendly API + MCP vs Truto Unified Calendar API",
        "url": ""
      }
    ],
    "description": "Calendly scores 69.1 (B) to Truto Unified Calendar's 60.4 (C) for calendar access. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "Calendly API + MCP B 69.1",
      "Truto Unified Calendar API C 60.4",
      "scores"
    ],
    "h1": "Calendly API + MCP vs Truto Unified Calendar API",
    "image": "https://www.anchorterminal.com/assets/og/default.png",
    "path": "/compare/calendly-vs-truto-calendar",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Calendly vs Truto Unified Calendar for AI agents (2026)",
    "toc": null,
    "updated": "2026-11-07",
    "url": "https://www.anchorterminal.com/compare/calendly-vs-truto-calendar"
  },
  "tokens": {
    "markdown": 4400,
    "slim": 2330
  },
  "version": 1
}
