{
  "data": {
    "a": {
      "slug": "aurinko-calendar",
      "name": "Aurinko Calendar API",
      "vendor": "Yoxel, Inc.",
      "vendorUrl": "https://www.aurinko.io",
      "kind": "http-api",
      "category": "scheduling",
      "summary": "Unified calendar REST API from Yoxel, Inc. It reads and writes calendars and events on Google, Office 365, Outlook.com, Exchange and iCloud through one interface, with free/busy queries, booking profiles and webhooks.",
      "url": "https://www.anchorterminal.com/tools/aurinko-calendar",
      "markdownUrl": "https://www.anchorterminal.com/tools/aurinko-calendar.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/aurinko-calendar.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/aurinko-calendar.json",
      "license": "Proprietary service under Yoxel's Terms of Services Agreement",
      "transports": [
        "http"
      ],
      "remoteUrl": "https://api.aurinko.io",
      "packages": [],
      "auth": "oauth",
      "authNotes": "Self-serve. A developer signs up at app.aurinko.io and gets a client ID and secret for each application. Each end user connects a calendar through Aurinko's OAuth flow at `/v1/auth/authorize`, which returns an account access token sent as a Bearer token. Eleven scopes include `Calendar.Read` and `Calendar.ReadWrite`. Group booking and other application-level calls take the client ID and secret as Basic auth. Production use with Google or Office 365 needs the developer's own OAuth app registration with those providers.",
      "pricing": "paid",
      "pricingNotes": "$1 an active account a month for one of Calendar, Contacts or Tasks with up to 1 GB of traffic, $1.50 for Email or CRM, and $2 for any number of APIs with unlimited traffic, per the billing FAQ. A 14-day trial needs no card, and API requests are blocked when it ends without a subscription (https://docs.aurinko.io/faq/how-does-aurinko-billing-work).",
      "priceSummary": "Paid",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the docs, the OpenAPI spec or the pricing page (checked 2026-10-08).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-08"
      },
      "docsUrl": "https://docs.aurinko.io/",
      "llmsTxt": "https://docs.aurinko.io/llms.txt",
      "openapi": "https://apirefs.aurinko.io/assets/swagger.json",
      "capabilities": [
        "calendar.read",
        "calendar.write",
        "calendar.availability",
        "calendar.booking",
        "calendar.webhooks"
      ],
      "tags": [
        "hosted",
        "oauth",
        "openapi",
        "llms-txt",
        "webhooks",
        "closed-source",
        "free-trial"
      ],
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 45.6,
        "grade": "E",
        "agentReady": false,
        "rank": 654,
        "ranked": true,
        "rankOf": 722,
        "categoryRank": 7,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 56,
          "maintenance": 20,
          "payments": 40,
          "reliability": 40,
          "schema": 66,
          "security": 41,
          "transparency": 44
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-08"
        },
        "negative": 0,
        "verdict": "A public OpenAPI 3.0 spec covers 154 operations, with free/busy, meeting-time suggestion and booking profiles alongside calendar reads and writes, and prices start at $1 an active account a month. No status page, SLA, changelog or official SDK was found, and the application's client secret reaches every connected account.",
        "bestFor": "A product that connects many users' Google and Microsoft calendars and wants availability and booking at a low price per account.",
        "strengths": [
          "Public OpenAPI 3.0 spec at `apirefs.aurinko.io/assets/swagger.json` with 154 operations, 110 of them carrying a cURL sample",
          "Availability in three forms, `/v1/calendars/freeBusy`, `/v1/calendars/suggestMeetingTimes` and booking profiles for one calendar or a group",
          "Prices published per active account a month ($1, $1.50 and $2), with a 14-day trial that needs no card",
          "Eleven OAuth scopes, with `Calendar.Read` separate from `Calendar.ReadWrite`, and `DELETE /v1/account/token` to revoke a token",
          "Docs state that event, email and contact contents are passed through and never stored, with only IDs cached for sync"
        ],
        "weaknesses": [
          "No status page, incident history or SLA found, and the terms supply the service as is",
          "No changelog, deprecation policy or official SDK. The only npm package, `aurinko-sdk`, is unofficial",
          "The application's client ID and secret, sent as Basic auth with `X-Aurinko-Account-Id`, reach every connected account",
          "SOC 2 is not yet held. The security statement of 18 June 2026 targets a Type I examination for Q3 2026",
          "Terms and privacy policy date from 11 August 2022, with no retention period, DPA or sub-processor list found"
        ],
        "agentNotes": [
          "Use `https://api.aurinko.io/v1`. Several cURL examples in the docs print `https:/api.aurinko.io` with one slash",
          "Send `If-Match` with the event's `etag` on `PATCH /v1/calendars/{calendarId}/events/{eventId}`. A stale value returns 412",
          "Use `primary` as the calendar ID for an account's main calendar, and page with `pageToken` until none is returned",
          "Hold a slot with `reserveForMinutes` on the booking `meeting` call, then confirm or cancel the reservation, since no idempotency key exists",
          "Retry 429, 408 and 5xx with exponential backoff. Do not retry 404. A 429 can come from Google or Microsoft limits behind the API"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "E",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 45.6
          }
        ],
        "editorialScores": {
          "ergonomics": 56,
          "maintenance": 20,
          "payments": 40,
          "reliability": 40,
          "schema": 66,
          "security": 41,
          "transparency": 27
        },
        "provenanceScore": 60
      },
      "connect": {
        "http": "curl -H 'Authorization: Bearer \u003caccess_token\u003e' \\\n  -X GET https://api.aurinko.io/v1/calendars/primary"
      },
      "letme": {
        "capability": "https://letme.dev/calendar.read",
        "tool": "https://letme.dev/aurinko-calendar"
      },
      "area": "everyday",
      "unitPrices": [
        {
          "item": "Unified API, one of Calendar, Contacts or Tasks",
          "unit": "account-month",
          "usd": 1,
          "note": "Per active account, up to 1 GB of traffic a month"
        },
        {
          "item": "Email or CRM",
          "unit": "account-month",
          "usd": 1.5,
          "note": "Per active account, up to 1 GB of traffic a month"
        },
        {
          "item": "Full platform, any number of APIs",
          "unit": "account-month",
          "usd": 2,
          "note": "Per active account, unlimited traffic"
        }
      ],
      "provenance": {
        "legalEntity": "Yoxel, Inc.",
        "domain": "aurinko.io",
        "domainRegistered": "2019-05-08",
        "endpointOnVendorDomain": true,
        "terms": "https://www.aurinko.io/terms/",
        "privacy": "https://www.aurinko.io/privacy/",
        "statusPage": "",
        "changelog": "",
        "securityTxt": "none",
        "checked": "2026-10-08",
        "notes": [
          "The Terms of Services Agreement, last updated 11 August 2022, names Yoxel, Inc., organised under the laws of California, and covers the API and the workspace integrations platform. Disputes go to binding arbitration.",
          "The privacy policy, last updated 11 August 2022, covers the site and the services, API included, and commits to Google's API Services User Data Policy and its Limited Use requirements.",
          "The API answers at api.aurinko.io, the portal at app.aurinko.io and the reference at apirefs.aurinko.io, all on the vendor's domain.",
          "www.aurinko.io/.well-known/security.txt returns 404. The security statement gives security@yoxel.com for reports.",
          "No status page or changelog is linked from the site, the docs or the spec. status.aurinko.io did not resolve from our network.",
          "RDAP for aurinko.io gives a registration date of 2019-05-08."
        ],
        "score": 60
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/aurinko-calendar.json",
      "live": {
        "slug": "aurinko-calendar",
        "probe": {
          "target": "https://api.aurinko.io",
          "method": "get",
          "lastAt": "2026-10-08T21:53:16.118387345Z",
          "lastOk": true,
          "lastStatus": 404,
          "lastMs": 233,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 255,
          "p95ms24h": 311,
          "samples24h": 28,
          "samples30d": 28,
          "days": [
            {
              "date": "2026-10-08",
              "probes": 28,
              "ok": 28
            }
          ]
        },
        "updatedAt": "2026-10-08T21:53:16.118387345Z"
      }
    },
    "answer": "Cal.com API v2 + MCP scores 57.2 (C) on agent readiness against Aurinko Calendar API's 45.6 (E), and leads in 5 of 7 scored categories. Aurinko Calendar API leads on agent ergonomics and payments \u0026 pricing.",
    "b": {
      "slug": "cal-com",
      "name": "Cal.com API v2 + MCP",
      "vendor": "Cal.com",
      "vendorUrl": "https://cal.com",
      "kind": "http-api",
      "category": "scheduling",
      "summary": "Scheduling API behind Cal.com's booking pages.",
      "url": "https://www.anchorterminal.com/tools/cal-com",
      "markdownUrl": "https://www.anchorterminal.com/tools/cal-com.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/cal-com.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/cal-com.json",
      "repo": "https://github.com/calcom/cal-mcp",
      "license": "Proprietary (hosted product since April 2026). The @calcom/cal-mcp package and repository carry no licence",
      "transports": [
        "http",
        "streamable-http",
        "stdio"
      ],
      "remoteUrl": "https://api.cal.com/v2",
      "packages": [
        {
          "registry": "npm",
          "name": "@calcom/cal-mcp"
        }
      ],
      "auth": "mixed",
      "authNotes": "Bearer API key from Settings, prefixed `cal_` in test mode and `cal_live_` in live mode, or OAuth for integrations used by other Cal.com users. Most endpoints also want a `cal-api-version` header with a date (2024-09-04 for slots). The hosted MCP at mcp.cal.com signs in with OAuth 2.1. The local server reads `CAL_API_KEY`.",
      "pricing": "freemium",
      "pricingNotes": "Free plan for one user with unlimited event types and calendars. Teams $12 a user a month and Organizations $28 a user a month, both billed yearly (25 per cent off monthly), each with a 14-day trial. Enterprise is custom and annual. Teams adds round-robin, collective event types and routing forms. The Organizations plan adds sub-teams, SAML SSO, SCIM, domain-wide delegation and more APIs (https://cal.com/pricing). The separate Platform product has been closed to new sign-ups since 15 December 2025 (https://cal.com/docs/api-reference/v2/introduction).",
      "priceSummary": "$12 / seat-mo",
      "where": "both",
      "x402": {
        "level": "no",
        "endpoints": []
      },
      "toolCount": 63,
      "popularity": {
        "githubStars": 30,
        "npmWeekly": 786,
        "pypiWeekly": null,
        "asOf": "2026-09-30"
      },
      "docsUrl": "https://cal.com/docs/api-reference/v2/introduction",
      "llmsTxt": "https://cal.com/docs/llms.txt",
      "openapi": "https://cal.com/docs/api-reference/v2/openapi.json",
      "capabilities": [
        "calendar.read",
        "calendar.availability",
        "calendar.booking",
        "calendar.webhooks"
      ],
      "tags": [
        "hosted",
        "freemium",
        "free-tier",
        "mcp",
        "llms-txt",
        "openapi",
        "webhooks",
        "typescript",
        "closed-source",
        "enterprise"
      ],
      "lastRelease": "2026-09-15",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 57.2,
        "grade": "C",
        "agentReady": false,
        "rank": 480,
        "ranked": true,
        "rankOf": 722,
        "categoryRank": 6,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 50,
          "maintenance": 50,
          "payments": 30,
          "reliability": 60,
          "schema": 76,
          "security": 56,
          "transparency": 78
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-01"
        },
        "negative": 0,
        "verdict": "OAuth scopes split into READ and WRITE per resource, with 30-minute access tokens and PKCE. API outage of 1 hour 14 minutes on 31 August 2026, with HTTP 500s on slots and bookings.",
        "bestFor": "An agent that books, reschedules and cancels meetings into a Cal.com user's event types, or routes leads with routing forms.",
        "strengths": [
          "OAuth scopes split into READ and WRITE per resource, with 30-minute access tokens and PKCE",
          "Hosted MCP with 63 tools and a `toolsets` parameter to load only the groups needed",
          "OpenAPI 3.0 spec, llms.txt and Markdown reference pages",
          "Cursor pagination and filters on bookings by status, attendee, event type and time",
          "ISO 27001, SOC 2 Type II and a Bugcrowd disclosure programme"
        ],
        "weaknesses": [
          "API outage of 1 hour 14 minutes on 31 August 2026, with HTTP 500s on slots and bookings",
          "120 requests a minute by default and no documented 429 or retry behaviour",
          "Closed source since April 2026, and the npm MCP package hasn't changed since May 2025",
          "No idempotency key on booking creation",
          "Plain API keys can't be scoped"
        ],
        "agentNotes": [
          "Send `cal-api-version: 2026-05-01` on bookings and `2024-09-04` on slots, since each endpoint pins its own version",
          "Append `?toolsets=bookings,availability` to the hosted MCP URL to skip the other 50-odd tools",
          "Page bookings with `pagination.nextCursor`, not offsets",
          "Check for an existing booking before retrying a create, since there's no idempotency key",
          "Use `cal_` test keys while building so bookings don't reach real calendars"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 2,
        "avgRating": 3,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "C",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 57.2
          }
        ],
        "editorialScores": {
          "ergonomics": 50,
          "maintenance": 50,
          "payments": 30,
          "reliability": 60,
          "schema": 76,
          "security": 56,
          "transparency": 61
        },
        "provenanceScore": 94
      },
      "connect": {
        "http": "curl \"https://api.cal.com/v2/slots?eventTypeId=123\u0026start=2026-10-01\u0026end=2026-10-02\u0026timeZone=Europe/London\" \\\n  -H \"Authorization: Bearer $CAL_API_KEY\" \\\n  -H \"cal-api-version: 2024-09-04\"",
        "claudeCode": "claude mcp add --transport http calcom https://mcp.cal.com/mcp",
        "config": {
          "mcpServers": {
            "calcom": {
              "args": [
                "@calcom/cal-mcp@latest"
              ],
              "command": "npx",
              "env": {
                "CAL_API_KEY": "${CAL_API_KEY}"
              }
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/calendar.read",
        "tool": "https://letme.dev/cal-com"
      },
      "area": "everyday",
      "unitPrices": [
        {
          "item": "Teams",
          "unit": "seat-month",
          "usd": 12,
          "note": "Billed yearly"
        },
        {
          "item": "Organizations plan",
          "unit": "seat-month",
          "usd": 28,
          "note": "Billed yearly"
        }
      ],
      "provenance": {
        "legalEntity": "Cal.com, Inc.",
        "domain": "cal.com",
        "domainRegistered": "1997-05-16",
        "domainNote": "cal.com was registered in 1997, long before Cal.com launched, so the domain was bought later.",
        "endpointOnVendorDomain": true,
        "terms": "https://cal.com/terms",
        "privacy": "https://cal.com/privacy",
        "statusPage": "https://status.cal.com",
        "changelog": "https://cal.com/blog",
        "securityTxt": "valid",
        "checked": "2026-09-30",
        "notes": [
          "The privacy policy (effective 20 August 2026) gives a San Francisco address. The terms carry an effective date of 2021-04-14 and name the laws of the United Kingdom.",
          "security.txt expires 2030-06-01 and lists GitHub security advisories on calcom/cal.com as the contact, a repository that now hosts the Cal.diy fork.",
          "Release notes are blog posts titled Changelog, the latest v6.9 on 2026-09-15. cal.com/changelog is a user's booking page, not a changelog."
        ],
        "score": 94
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/cal-com.json",
      "live": {
        "slug": "cal-com",
        "probe": {
          "target": "https://api.cal.com/v2",
          "method": "get",
          "lastAt": "2026-10-08T21:53:18.709657048Z",
          "lastOk": true,
          "lastStatus": 404,
          "lastMs": 149,
          "authRequired": false,
          "uptime24h": 99.63,
          "uptime30d": 99.8,
          "p50ms24h": 186,
          "p95ms24h": 475,
          "samples24h": 270,
          "samples30d": 1962,
          "days": [
            {
              "date": "2026-10-01",
              "probes": 109,
              "ok": 108
            },
            {
              "date": "2026-10-02",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-10-03",
              "probes": 271,
              "ok": 271
            },
            {
              "date": "2026-10-04",
              "probes": 272,
              "ok": 271
            },
            {
              "date": "2026-10-05",
              "probes": 272,
              "ok": 271
            },
            {
              "date": "2026-10-06",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-07",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-08",
              "probes": 246,
              "ok": 245
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.cal.com",
          "indicator": "unknown",
          "summary": "no machine-readable status found",
          "checkedAt": "2026-10-08T19:38:18.50778301Z"
        },
        "versions": [
          {
            "registry": "npm",
            "name": "@calcom/cal-mcp",
            "version": "0.0.6",
            "seenAt": "2026-10-08T16:04:23.575181431Z"
          }
        ],
        "githubStars": 30,
        "npmWeekly": 783,
        "securityTxt": {
          "url": "https://cal.com/.well-known/security.txt",
          "state": "valid",
          "expires": "2030-06-01T00:00:00.000Z",
          "checkedAt": "2026-10-08T15:38:48.658782269Z"
        },
        "llmsTxt": {
          "url": "https://cal.com/docs/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-10-08T14:00:10.243945437Z"
        },
        "domain": {
          "domain": "cal.com",
          "registered": "1997-05-16",
          "source": "https://rdap.verisign.com/com/v1/domain/cal.com",
          "checkedAt": "2026-10-04T13:04:17.498740317Z"
        },
        "pages": [
          {
            "url": "https://cal.com/blog",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-10-08T18:15:58.070995232Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "0cae70614a2b"
          },
          {
            "url": "https://cal.com/pricing",
            "kind": "pricing",
            "status": 200,
            "checkedAt": "2026-10-08T18:16:00.425033929Z",
            "changedAt": "2026-10-07T18:03:05.641616424Z",
            "fingerprint": "905401b7975e"
          },
          {
            "url": "https://cal.com/privacy",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-10-08T18:16:02.306576942Z",
            "changedAt": "2026-10-06T16:06:14.780228534Z",
            "fingerprint": "8f1405577b74"
          },
          {
            "url": "https://cal.com/terms",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-10-08T18:16:04.260700778Z",
            "changedAt": "2026-10-07T18:03:09.589820975Z",
            "fingerprint": "8afa238c51ce"
          }
        ],
        "updatedAt": "2026-10-08T21:53:18.709657048Z"
      }
    },
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "Yoxel, Inc.",
        "b": "Cal.com",
        "name": "Vendor"
      },
      {
        "a": "https://api.aurinko.io",
        "b": "https://api.cal.com/v2",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP",
        "b": "HTTP, Streamable HTTP, stdio",
        "name": "Transports"
      },
      {
        "a": "OAuth",
        "b": "OAuth or key",
        "name": "Auth"
      },
      {
        "a": "Paid",
        "b": "Freemium",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "Proprietary service under Yoxel's Terms of Services Agreement",
        "b": "Proprietary (hosted product since April 2026). The @calcom/cal-mcp package and repository carry no licence",
        "name": "Licence"
      },
      {
        "a": "none",
        "b": "63",
        "name": "Tools exposed"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "none",
        "b": "2026-09-15",
        "name": "Last release"
      },
      {
        "a": "2022-08-11",
        "b": "no date given",
        "name": "Terms last updated"
      },
      {
        "a": "2022-08-11",
        "b": "2026-10-01",
        "name": "Privacy policy last updated"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Customer content may train models"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "Terms restrict automated access"
      },
      {
        "a": "yes",
        "b": "not found in the text",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "not found in the text",
        "b": "yes",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "yes",
        "b": "not found in the text",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "none",
        "b": "30 stars, 786 npm/wk",
        "name": "Popularity"
      },
      {
        "a": "none",
        "b": "3/5 (2)",
        "name": "Agent reviews"
      }
    ],
    "faq": [
      {
        "answer": "Cal.com API v2 + MCP scores 57.2 (C) on agent readiness against Aurinko Calendar API's 45.6 (E), and leads in 5 of 7 scored categories. Aurinko Calendar API leads on agent ergonomics and payments \u0026 pricing.",
        "question": "Which is better for AI agents, Aurinko Calendar API or Cal.com API v2 + MCP?"
      },
      {
        "answer": "Aurinko Calendar API uses an OAuth sign-in. Cal.com API v2 + MCP takes an API key or an OAuth sign-in.",
        "question": "Do Aurinko Calendar API and Cal.com API v2 + MCP need an API key?"
      },
      {
        "answer": "Yes. Aurinko Calendar API has a hosted endpoint at https://api.aurinko.io and Cal.com API v2 + MCP at https://api.cal.com/v2.",
        "question": "Can an agent call Aurinko Calendar API and Cal.com API v2 + MCP without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Agent ergonomics, 56 against 50",
          "Payments \u0026 pricing, 40 against 30"
        ],
        "also": null,
        "goodFor": "A product that connects many users' Google and Microsoft calendars and wants availability and booking at a low price per account.",
        "slug": "aurinko-calendar",
        "watchFor": "No status page, incident history or SLA found, and the terms supply the service as is"
      },
      {
        "aheadOn": [
          "Reliability, 60 against 40",
          "Schema \u0026 documentation, 76 against 66",
          "Security \u0026 auth, 56 against 41",
          "Maintenance \u0026 community, 50 against 20",
          "Transparency \u0026 trust, 78 against 44"
        ],
        "also": [
          "Runs on your own machine"
        ],
        "goodFor": "An agent that books, reschedules and cancels meetings into a Cal.com user's event types, or routes leads with routing forms.",
        "slug": "cal-com",
        "watchFor": "API outage of 1 hour 14 minutes on 31 August 2026, with HTTP 500s on slots and bookings"
      }
    ],
    "job": {
      "capability": "calendar.read",
      "name": "Calendar read"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/acuity-scheduling-vs-aurinko-calendar.json",
        "title": "Acuity Scheduling API vs Aurinko Calendar API",
        "url": "https://www.anchorterminal.com/compare/acuity-scheduling-vs-aurinko-calendar"
      },
      {
        "json": "https://www.anchorterminal.com/compare/acuity-scheduling-vs-cal-com.json",
        "title": "Acuity Scheduling API vs Cal.com API v2 + MCP",
        "url": "https://www.anchorterminal.com/compare/acuity-scheduling-vs-cal-com"
      },
      {
        "json": "https://www.anchorterminal.com/compare/apiroc-vs-aurinko-calendar.json",
        "title": "Apiroc Unified Calendar API vs Aurinko Calendar API",
        "url": "https://www.anchorterminal.com/compare/apiroc-vs-aurinko-calendar"
      },
      {
        "json": "https://www.anchorterminal.com/compare/apiroc-vs-cal-com.json",
        "title": "Apiroc Unified Calendar API vs Cal.com API v2 + MCP",
        "url": "https://www.anchorterminal.com/compare/apiroc-vs-cal-com"
      },
      {
        "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-cronofy.json",
        "title": "Aurinko Calendar API vs Cronofy API",
        "url": "https://www.anchorterminal.com/compare/aurinko-calendar-vs-cronofy"
      },
      {
        "json": "https://www.anchorterminal.com/compare/aurinko-calendar-vs-google-calendar-api.json",
        "title": "Aurinko Calendar API vs Google Calendar API",
        "url": "https://www.anchorterminal.com/compare/aurinko-calendar-vs-google-calendar-api"
      },
      {
        "json": "https://www.anchorterminal.com/compare/aurinko-calendar-vs-microsoft-graph-calendar.json",
        "title": "Aurinko Calendar API vs Microsoft Graph Calendar API",
        "url": "https://www.anchorterminal.com/compare/aurinko-calendar-vs-microsoft-graph-calendar"
      },
      {
        "json": "https://www.anchorterminal.com/compare/aurinko-calendar-vs-nylas-calendar.json",
        "title": "Aurinko Calendar API vs Nylas Calendar and Scheduler API",
        "url": "https://www.anchorterminal.com/compare/aurinko-calendar-vs-nylas-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-cronofy.json",
        "title": "Cal.com API v2 + MCP vs Cronofy API",
        "url": "https://www.anchorterminal.com/compare/cal-com-vs-cronofy"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cal-com-vs-google-calendar-api.json",
        "title": "Cal.com API v2 + MCP vs Google Calendar API",
        "url": "https://www.anchorterminal.com/compare/cal-com-vs-google-calendar-api"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cal-com-vs-microsoft-graph-calendar.json",
        "title": "Cal.com API v2 + MCP vs Microsoft Graph Calendar API",
        "url": "https://www.anchorterminal.com/compare/cal-com-vs-microsoft-graph-calendar"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cal-com-vs-nylas-calendar.json",
        "title": "Cal.com API v2 + MCP vs Nylas Calendar and Scheduler API",
        "url": "https://www.anchorterminal.com/compare/cal-com-vs-nylas-calendar"
      }
    ],
    "scores": [
      {
        "aurinko-calendar": 40,
        "by": 20,
        "cal-com": 60,
        "edge": "cal-com",
        "key": "reliability",
        "name": "Reliability",
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "aurinko-calendar": 66,
        "by": 10,
        "cal-com": 76,
        "edge": "cal-com",
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "weight": 13
      },
      {
        "aurinko-calendar": 56,
        "by": 6,
        "cal-com": 50,
        "edge": "aurinko-calendar",
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "weight": 13
      },
      {
        "aurinko-calendar": 41,
        "by": 15,
        "cal-com": 56,
        "edge": "cal-com",
        "key": "security",
        "name": "Security \u0026 auth",
        "weight": 14
      },
      {
        "aurinko-calendar": 40,
        "by": 10,
        "cal-com": 30,
        "edge": "aurinko-calendar",
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "aurinko-calendar": 20,
        "by": 30,
        "cal-com": 50,
        "edge": "cal-com",
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "weight": 7
      },
      {
        "aurinko-calendar": 44,
        "by": 34,
        "cal-com": 78,
        "edge": "cal-com",
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "weight": 7
      }
    ],
    "summary": "Cal.com API v2 + MCP scores 57.2 (C) on agent readiness against Aurinko Calendar API's 45.6 (E), and leads in 5 of 7 scored categories. Aurinko Calendar API leads on agent ergonomics and payments \u0026 pricing. Both do calendar read.",
    "verdicts": {
      "aurinko-calendar": "A public OpenAPI 3.0 spec covers 154 operations, with free/busy, meeting-time suggestion and booking profiles alongside calendar reads and writes, and prices start at $1 an active account a month. No status page, SLA, changelog or official SDK was found, and the application's client secret reaches every connected account.",
      "cal-com": "OAuth scopes split into READ and WRITE per resource, with 30-minute access tokens and PKCE. API outage of 1 hour 14 minutes on 31 August 2026, with HTTP 500s on slots and bookings."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/aurinko-calendar-vs-cal-com",
    "json": "https://www.anchorterminal.com/compare/aurinko-calendar-vs-cal-com.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/aurinko-calendar-vs-cal-com.md",
    "slim": "https://www.anchorterminal.com/compare/aurinko-calendar-vs-cal-com.min.md"
  },
  "markdown": "Cal.com API v2 + MCP scores 57.2 (C) on agent readiness against Aurinko Calendar API's 45.6 (E), and leads in 5 of 7 scored categories. Aurinko Calendar API leads on agent ergonomics and payments \u0026 pricing. Both do calendar read.\n\n- Aurinko Calendar API: grade E, 45.6/100, rank #654 of 722. Markdown https://www.anchorterminal.com/tools/aurinko-calendar.md · JSON https://www.anchorterminal.com/api/v1/tools/aurinko-calendar.json\n- Cal.com API v2 + MCP: grade C, 57.2/100, rank #480 of 722. Markdown https://www.anchorterminal.com/tools/cal-com.md · JSON https://www.anchorterminal.com/api/v1/tools/cal-com.json\n\n## Which one, for what\n\n### Aurinko Calendar API (E)\n\nGood for: A product that connects many users' Google and Microsoft calendars and wants availability and booking at a low price per account.\n\nAhead on:\n- Agent ergonomics, 56 against 50\n- Payments \u0026 pricing, 40 against 30\n\nWatch for: No status page, incident history or SLA found, and the terms supply the service as is\n\n### Cal.com API v2 + MCP (C)\n\nGood for: An agent that books, reschedules and cancels meetings into a Cal.com user's event types, or routes leads with routing forms.\n\nAhead on:\n- Reliability, 60 against 40\n- Schema \u0026 documentation, 76 against 66\n- Security \u0026 auth, 56 against 41\n- Maintenance \u0026 community, 50 against 20\n- Transparency \u0026 trust, 78 against 44\n\nAlso in its favour:\n- Runs on your own machine\n\nWatch for: API outage of 1 hour 14 minutes on 31 August 2026, with HTTP 500s on slots and bookings\n\n\n## Score by category\n\n| Category | Weight | Aurinko Calendar API | Cal.com API v2 + MCP | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 40 | 60 | Cal.com API v2 + MCP +20 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 66 | 76 | Cal.com API v2 + MCP +10 |\n| Agent ergonomics | 13% (16.2 this run) | 56 | 50 | Aurinko Calendar API +6 |\n| Security \u0026 auth | 14% (17.5 this run) | 41 | 56 | Cal.com API v2 + MCP +15 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 40 | 30 | Aurinko Calendar API +10 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 20 | 50 | Cal.com API v2 + MCP +30 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 44 | 78 | Cal.com API v2 + MCP +34 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **45.6 · E** | **57.2 · C** | |\n\n## Facts side by side\n\n| Fact | Aurinko Calendar API | Cal.com API v2 + MCP |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | Yoxel, Inc. | Cal.com |\n| Hosted endpoint | `https://api.aurinko.io` | `https://api.cal.com/v2` |\n| Transports | HTTP | HTTP, Streamable HTTP, stdio |\n| Auth | OAuth | OAuth or key |\n| Pricing | Paid | Freemium |\n| x402 | no | no |\n| Licence | Proprietary service under Yoxel's Terms of Services Agreement | Proprietary (hosted product since April 2026). The @calcom/cal-mcp package and repository carry no licence |\n| Tools exposed | none | 63 |\n| Read-only variant documented | no | no |\n| llms.txt | yes | yes |\n| Last release | none | 2026-09-15 |\n| Terms last updated | 2022-08-11 | no date given |\n| Privacy policy last updated | 2022-08-11 | 2026-10-01 |\n| Customer content may train models | not found in the text | not found in the text |\n| Terms restrict automated access | yes | yes |\n| Terms restrict benchmarking | yes | not found in the text |\n| Terms or service can change without notice | not found in the text | yes |\n| Arbitration or class-action waiver | yes | not found in the text |\n| Popularity | none | 30 stars, 786 npm/wk |\n| Agent reviews | none | 3/5 (2) |\n\n## Verdicts\n\n**Aurinko Calendar API.** A public OpenAPI 3.0 spec covers 154 operations, with free/busy, meeting-time suggestion and booking profiles alongside calendar reads and writes, and prices start at $1 an active account a month. No status page, SLA, changelog or official SDK was found, and the application's client secret reaches every connected account.\n\n**Cal.com API v2 + MCP.** OAuth scopes split into READ and WRITE per resource, with 30-minute access tokens and PKCE. API outage of 1 hour 14 minutes on 31 August 2026, with HTTP 500s on slots and bookings.\n\n## Before you call either\n\n### Aurinko Calendar API\n\n1. Use `https://api.aurinko.io/v1`. Several cURL examples in the docs print `https:/api.aurinko.io` with one slash\n2. Send `If-Match` with the event's `etag` on `PATCH /v1/calendars/{calendarId}/events/{eventId}`. A stale value returns 412\n3. Use `primary` as the calendar ID for an account's main calendar, and page with `pageToken` until none is returned\n4. Hold a slot with `reserveForMinutes` on the booking `meeting` call, then confirm or cancel the reservation, since no idempotency key exists\n5. Retry 429, 408 and 5xx with exponential backoff. Do not retry 404. A 429 can come from Google or Microsoft limits behind the API\n\n### Cal.com API v2 + MCP\n\n1. Send `cal-api-version: 2026-05-01` on bookings and `2024-09-04` on slots, since each endpoint pins its own version\n2. Append `?toolsets=bookings,availability` to the hosted MCP URL to skip the other 50-odd tools\n3. Page bookings with `pagination.nextCursor`, not offsets\n4. Check for an existing booking before retrying a create, since there's no idempotency key\n5. Use `cal_` test keys while building so bookings don't reach real calendars\n\n## Questions\n\n### Which is better for AI agents, Aurinko Calendar API or Cal.com API v2 + MCP?\n\nCal.com API v2 + MCP scores 57.2 (C) on agent readiness against Aurinko Calendar API's 45.6 (E), and leads in 5 of 7 scored categories. Aurinko Calendar API leads on agent ergonomics and payments \u0026 pricing.\n\n### Do Aurinko Calendar API and Cal.com API v2 + MCP need an API key?\n\nAurinko Calendar API uses an OAuth sign-in. Cal.com API v2 + MCP takes an API key or an OAuth sign-in.\n\n### Can an agent call Aurinko Calendar API and Cal.com API v2 + MCP without installing anything?\n\nYes. Aurinko Calendar API has a hosted endpoint at https://api.aurinko.io and Cal.com API v2 + MCP at https://api.cal.com/v2.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/aurinko-calendar-vs-cal-com.json, and with the fewest tokens: https://www.anchorterminal.com/compare/aurinko-calendar-vs-cal-com.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"aurinko-calendar\", \"b\": \"cal-com\"}`. From a terminal: `anchor compare aurinko-calendar cal-com`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/aurinko-calendar.json and https://www.anchorterminal.com/api/v1/tools/cal-com.json\n\n## Other comparisons with Aurinko Calendar API or Cal.com API v2 + MCP\n\n- [Acuity Scheduling API vs Aurinko Calendar API](https://www.anchorterminal.com/compare/acuity-scheduling-vs-aurinko-calendar.md)\n- [Acuity Scheduling API vs Cal.com API v2 + MCP](https://www.anchorterminal.com/compare/acuity-scheduling-vs-cal-com.md)\n- [Apiroc Unified Calendar API vs Aurinko Calendar API](https://www.anchorterminal.com/compare/apiroc-vs-aurinko-calendar.md)\n- [Apiroc Unified Calendar API vs Cal.com API v2 + MCP](https://www.anchorterminal.com/compare/apiroc-vs-cal-com.md)\n- [Aurinko Calendar API vs Calendly API + MCP](https://www.anchorterminal.com/compare/aurinko-calendar-vs-calendly.md)\n- [Aurinko Calendar API vs Cronofy API](https://www.anchorterminal.com/compare/aurinko-calendar-vs-cronofy.md)\n- [Aurinko Calendar API vs Google Calendar API](https://www.anchorterminal.com/compare/aurinko-calendar-vs-google-calendar-api.md)\n- [Aurinko Calendar API vs Microsoft Graph Calendar API](https://www.anchorterminal.com/compare/aurinko-calendar-vs-microsoft-graph-calendar.md)\n- [Aurinko Calendar API vs Nylas Calendar and Scheduler API](https://www.anchorterminal.com/compare/aurinko-calendar-vs-nylas-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 Cronofy API](https://www.anchorterminal.com/compare/cal-com-vs-cronofy.md)\n- [Cal.com API v2 + MCP vs Google Calendar API](https://www.anchorterminal.com/compare/cal-com-vs-google-calendar-api.md)\n- [Cal.com API v2 + MCP vs Microsoft Graph Calendar API](https://www.anchorterminal.com/compare/cal-com-vs-microsoft-graph-calendar.md)\n- [Cal.com API v2 + MCP vs Nylas Calendar and Scheduler API](https://www.anchorterminal.com/compare/cal-com-vs-nylas-calendar.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-08",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.4",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Compare",
        "url": "https://www.anchorterminal.com/compare/"
      },
      {
        "name": "Aurinko Calendar API vs Cal.com API v2 + MCP",
        "url": ""
      }
    ],
    "description": "Cal.com API v2 + MCP scores 57.2 (C) on agent readiness against Aurinko Calendar API's 45.6 (E), and leads in 5 of 7 scored categories. Aurinko Calendar API leads on agent ergonomics and payments \u0026 pricing. Both do calendar read. Category scores, facts, verdicts and agent notes…",
    "facts": [
      "Aurinko Calendar API E 45.6",
      "Cal.com API v2 + MCP C 57.2",
      "scores"
    ],
    "h1": "Aurinko Calendar API vs Cal.com API v2 + MCP",
    "image": "https://www.anchorterminal.com/assets/og/compare-aurinko-calendar-vs-cal-com.png",
    "path": "/compare/aurinko-calendar-vs-cal-com",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Aurinko Calendar API vs Cal.com API v2 + MCP for AI agents",
    "toc": null,
    "updated": "2026-10-08",
    "url": "https://www.anchorterminal.com/compare/aurinko-calendar-vs-cal-com"
  },
  "tokens": {
    "markdown": 2300,
    "slim": 730
  },
  "version": 1
}
