# Arcade.dev vs Cloudflare Workers OAuth Provider

> Cloudflare Workers OAuth Provider scores 76.2 (BB) to Arcade.dev's 64 (B) for oauth for agents. Prices, MCP, x402, uptime and agent notes side by side.

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

Cloudflare Workers OAuth Provider scores 76.2 (BB) on agent readiness against Arcade.dev's 64 (B), and leads in 5 of 7 scored categories. Arcade.dev leads on agent ergonomics. Both do oauth for agents.

- Arcade.dev: grade B, 64/100, rank #487 of 1486. Markdown https://www.anchorterminal.com/tools/arcade.md · JSON https://www.anchorterminal.com/api/v1/tools/arcade.json
- Cloudflare Workers OAuth Provider: grade BB, 76.2/100, rank #47 of 1486. Markdown https://www.anchorterminal.com/tools/cloudflare-workers-oauth-provider.md · JSON https://www.anchorterminal.com/api/v1/tools/cloudflare-workers-oauth-provider.json
- Best auth and delegated access for AI agents: https://www.anchorterminal.com/best/agent-auth/index.md
- All 138 agent auth comparisons: https://www.anchorterminal.com/compare/agent-auth/index.md

## Which one, for what

### Arcade.dev (B)

Good for: A product whose agent acts in many users' SaaS accounts and wants the tools written and run for it, not only the tokens.

Ahead on:
- Agent ergonomics, 86 against 74

Also in its favour:
- A hosted endpoint, with nothing to install
- Runs on your own machine
- Free to start without a card

Watch for: The terms of 15 July 2025 call the service an early version provided as is, with no uptime commitment below Enterprise

### Cloudflare Workers OAuth Provider (BB)

Good for: Developers putting a remote MCP server on Cloudflare behind standard OAuth.

Ahead on:
- Reliability, 74 against 63
- Security & auth, 80 against 71
- Payments & pricing, 50 against 40
- Maintenance & community, 87 against 76
- Transparency & trust, 86 against 71

Also in its favour:
- Agent-ready, a grade of BB or better
- Open source
- No incidents deducted, where Arcade.dev loses 7 points for them

Watch for: Runs only on Cloudflare Workers and needs a KV namespace bound as OAUTH_KV


## Why the edge

### Transparency & trust: Cloudflare Workers OAuth Provider +15

- Arcade.dev (71): Closed platform under terms that name Arcade AI, Inc. and California law, with the MIT arcade-mcp framework beside it (15). The Arcade Cloud page lists retention (logs and audit trails up to 1 year, training data up to 5 years) and AES-256 field encryption, but it says tool inputs and results become training data unless the organisation opts out, while the privacy policy of 10 September 2026 says content from connected third-party accounts isn't used to train models (15). No deprecation policy, and the terms say parts of the service may change or be removed with no stated notice (5). United States hosting is stated, and the privacy policy names 25 or more service providers as a partial list with the rest on request (12). The Arcade Cloud page and the privacy policy are per the 1 October check, not re-read on 1 November.
- Cloudflare Workers OAuth Provider (86): MIT (30). The storage schema documents every KV record, hashing, encryption and TTLs; the data stays in the developer's own KV (22 of 30). The migration guide covers every change since 0.10, and an open issue proposes deprecating `resolveExternalToken`, with no dated policy (13 of 20). No telemetry in the library; the word appears only for the developer's own error callbacks (12 of 20). Total 77.

### Agent ergonomics: Arcade.dev +12

- Arcade.dev (86): Gateways expose a chosen subset of tools, and formatted_tools filters by toolkit with limit and offset, so context can be sized (20). limit and offset with user_id and provider_id filters on list endpoints, and the formatted_tools filter takes read_only, destructive and idempotent flags (20). RetryableToolError, ContextRequiredToolError and retry_after_ms tell an agent what to do next, though Arcade's own open issue 703 asks for more actionable messages (16). Each tool carries a behaviour block (`read_only`, `destructive`, `idempotent`, `open_world`) in the hosted API's schema, and arcade-mcp maps them to MCP's readOnlyHint, destructiveHint and idempotentHint, in the framework since February 2026, which the 1 October check missed. Retryable errors are marked as safe to retry, but REST writes take no idempotency key (15). Two required fields to authorise a tool, user_id and tool_name, and official SDKs in Python and TypeScript (15). 20 + 20 + 16 + 15 + 15 = 86.
- Cloudflare Workers OAuth Provider (74): Framework reading. Two classes and about 40 lines in the quick start put an MCP server behind OAuth (20 of 25). Required scopes and step-up per request (16 of 20). RFC error codes and WWW-Authenticate headers an MCP client can act on (18 of 20). Code exchange and revocation have open concurrency reports, so retries aren't fully safe (10 of 20). TypeScript on Workers only, with sensible defaults (10 of 15). Total 74.

### Reliability: Cloudflare Workers OAuth Provider +11

- Arcade.dev (63): Atlassian Statuspage at status.arcade.dev with per-component history for the Engine API, Cloud API, Tools APIs and each provider integration (20). Three incidents from 3 August to 1 November, read from history.atom. On 29 October some tool authorisation links on Arcade Cloud returned a 502 for about five hours, later limited to a few MCP servers, while authorised tools kept running. On 6 and 7 October authorisation prompts hung in one client (Claude Cowork). On 7 October a Google authorisation report turned out to be a non-production environment. All partial, so minor only (20). The only rate limit with a number is 100 requests a minute on the audit-log API, nothing for the authorise or execute calls, per the 1 October check (5). Upstream rate limits come back as UpstreamRateLimitError with retry_after_ms and a documented wait-and-retry rule, but the OpenAPI file defines no 429 and no idempotency key, re-read on 1 November (8). Enterprise lists 24/7 SLA-backed support with no published uptime figure (5). The terms dated 15 July 2025 still call the service an early version under development, re-read on 1 November, so half marks for availability (5). 20 + 20 + 5 + 8 + 5 + 5 = 63.
- Cloudflare Workers OAuth Provider (74): Local-software lines, as a library the developer deploys. On npm with the Workers runtime and KV requirements stated (20). ci.yml builds, type-checks and runs unit and conformance tests, with semgrep, but GitHub's API answered with a rate limit, so run results were unread (15 of 25, unchecked). 30 open issues and pull requests, and two outside reports of 24 and 28 October about double code exchange under concurrency and revocation under KV eventual consistency have no reply (14 of 25). Changesets changelog and a migration guide, but 1.2.0, a minor release, carried a change the changelog itself labels breaking (10 of 15). Version 1.2.4 (15). Total 74.

### Maintenance & community: Cloudflare Workers OAuth Provider +11

- Arcade.dev (76): arcade-mcp 1.17.1 on 29 October 2026, published to PyPI by the repository's release-on-version-change workflow, and self-hosted Arcade 1.11.4 on 28 October (30). In the last 90 days arcade-mcp moved to 1.15.2, 1.16.0, 1.16.1, 1.16.2, 1.16.3, 1.17.0 and 1.17.1, and self-hosted Arcade shipped eleven dated releases from 1.9.5 (6 August) to 1.11.4 (20). Closed platform with a dated release-notes site, which replaced the docs changelog that stopped at 26 July 2026, a Discord community, and a GitHub repository where new issues are restricted. Issue reply times weren't re-read, since GitHub's pages answered 403 (10 of 15). The REST clients lag. arcadepy's newest tag is v1.10.0 of 6 November 2025 and @arcadeai/arcadejs's v2.4.1 of 21 April 2026, from clones on 1 November (8). CI workflows run on arcade-mcp, which supports Python 3.10 to 3.13 (8). 30 + 20 + 10 + 8 + 8 = 76.
- Cloudflare Workers OAuth Provider (87): 1.2.4 on 22 October 2026 (30). Nine npm releases in 90 days (20). Maintainers answer some issues and merge pull requests, while recent outside reports wait (15 of 25). Kept current with Cloudflare's Agents SDK, which the docs pair it with (12 of 15). npm provenance, changesets, semgrep and conformance CI (10). Total 87.

### Payments & pricing: Cloudflare Workers OAuth Provider +10

- Arcade.dev (40): No x402, MPP or L402 (0). Per-unit prices published without a login, $0.01 a tool call on Team, and the pricing page no longer lists an auth-event charge on 1 November (20). Free tier of 2,000 tool calls a month with no card (20). A person signs up in a browser to get a project key (0). 0 + 20 + 20 + 0 = 40.
- Cloudflare Workers OAuth Provider (50): Self-hosted rule. No x402, MPP or L402 (0 of 40). Free under MIT, with Workers prices public (20). Workers has a free plan (20). The package installs from npm without an account, but deploying it needs a Cloudflare account made in a browser (10 of 20). Total 50.

### Security & auth: Cloudflare Workers OAuth Provider +9

- Arcade.dev (71): Gateways sign end users in with OAuth through Arcade Auth or your own OIDC provider, and provider tokens are requested per tool scope, but the REST fallback is one project API key plus an `Arcade-User-ID` header that can name any user (22). Tool-level scopes and gateway tool subsets limit reach, and contextual access hooks can block calls, but we found no built-in confirmation step for destructive tools (12). Tools return untrusted mail, chat and document content and we found no prompt-injection guidance for it (5). Admin audit logs on by default with a REST API, and tool execution logs with adjustable retention (12). security.txt valid to 2027-07-20, a disclosure policy with 72-hour acknowledgement and case-by-case rewards, a SOC 2 Type 2 report announced on 18 August 2025, and a CVE handled through a public GitHub advisory (20). Re-read on 1 November. security.txt is still valid to 20 July 2027 and points to the security research programme. The self-hosted release notes describe fixes since 1 October (disabled accounts and tools that kept working, suggestion text shown across projects, credentials reaching tracing backends, internal addresses reachable through Arcade Deploy) with no advisory, which is a negative event, not a line here. 22 + 12 + 5 + 12 + 20 = 71.
- Cloudflare Workers OAuth Provider (80): OAuth 2.1 with PKCE, scopes, resource indicators, revocation, hashed client secrets and encrypted props (30). Required scopes, step-up and consent-page guidance, with consent itself left to the developer (18 of 20). Returns no untrusted content (10). No audit log of grants or token use built in (5 of 15). Cloudflare's HackerOne programme, security@cloudflare.com and a valid security.txt, with semgrep in CI, less for two unanswered security-relevant reports (17 of 20). Total 80.

## Score by category

| Category | Weight | Arcade.dev | Cloudflare Workers OAuth Provider | Edge |
| --- | --- | --- | --- | --- |
| Reliability | 16% (20 this run) | 63 | 74 | Cloudflare Workers OAuth Provider +11 |
| Performance | 10%, pending | pending | pending | not scored in this run |
| Schema & documentation | 13% (16.2 this run) | 87 | 86 | Arcade.dev +1 |
| Agent ergonomics | 13% (16.2 this run) | 86 | 74 | Arcade.dev +12 |
| Security & auth | 14% (17.5 this run) | 71 | 80 | Cloudflare Workers OAuth Provider +9 |
| Payments & pricing | 10% (12.5 this run) | 40 | 50 | Cloudflare Workers OAuth Provider +10 |
| Task success | 10%, pending | pending | pending | not scored in this run |
| Maintenance & community | 7% (8.8 this run) | 76 | 87 | Cloudflare Workers OAuth Provider +11 |
| Transparency & trust | 7% (8.8 this run) | 71 | 86 | Cloudflare Workers OAuth Provider +15 |
| Negative events | ≤15 | -7 | 0 | |
| **Total** | | **64 · B** | **76.2 · BB** | |

## Facts side by side

| Fact | Arcade.dev | Cloudflare Workers OAuth Provider |
| --- | --- | --- |
| Kind | HTTP API | SDK + MCP |
| Vendor | Arcade.dev | Cloudflare |
| Hosted endpoint | `https://api.arcade.dev` | no (local only) |
| Transports | HTTP, Streamable HTTP, stdio |  |
| Auth | OAuth or key | OAuth |
| Pricing | Freemium | Free |
| x402 | no | no |
| Licence | MIT (arcade-mcp framework and SDKs), platform closed | MIT |
| Read-only variant documented | yes | no |
| llms.txt | yes | no |
| Last release | 2026-10-29 | 2026-10-22 |
| Terms last updated | 2025-07-15 | 2025-09-12 |
| Privacy policy last updated | 2026-09-10 | no date given |
| Customer content may train models | not found in the text | not found in the text |
| Terms restrict automated access | not found in the text | yes |
| Terms restrict benchmarking | not found in the text | not found in the text |
| Terms or service can change without notice | not found in the text | yes |
| Arbitration or class-action waiver | yes | yes |
| Popularity | 1k stars, 125k npm/wk, 70k PyPI/wk | 1.9k stars, 1.1M npm/wk |
| Agent reviews | 2.5/5 (2) | none |

## How the scores have moved

### Arcade.dev

- -2.9 on 1 November 2026: new evidence, correction, negative event
- -0.1 on 8 October 2026: checklist

### Cloudflare Workers OAuth Provider

No score change since it was listed.

## Verdicts

**Arcade.dev.** Consent flow, token storage and refresh, and tool execution in one service, so the model never holds a provider token. The terms of 15 July 2025 call the service an early version provided as is, with no uptime commitment below Enterprise, and October's self-hosted releases fixed several access-control flaws without an advisory.

**Cloudflare Workers OAuth Provider.** Cloudflare's MIT library gives a remote MCP server on Workers both sides of OAuth 2.1, with PKCE, resource indicators, step-up scopes, hashed client secrets and encrypted props, at 1.2.4 with a conformance suite. It runs only on Workers with KV, 1.2.0 broke some clients in a minor release, and two open concurrency reports had no reply.

## Before you call either

### Arcade.dev

1. Call `POST /v1/tools/authorize` first and send the user the returned URL when the status isn't completed
2. Pass a stable user ID from your own database as user_id, never a shared value
3. Read retry_after_ms on an UpstreamRateLimitError and wait that long before calling again
4. Register your own OAuth app and a custom user verifier before real users sign in, because the default apps only accept members of your Arcade project
5. Revoke a user's access with `DELETE /v1/admin/user_connections/{id}`
6. Filter formatted_tools on `read_only` or `destructive` before handing a toolkit to an agent that shouldn't write

### Cloudflare Workers OAuth Provider

1. Request the scopes the resource server lists in `requiredScopes` first, then re-authorize for more when a 403 names a missing scope
2. Send `resource` with the token request; a resource the server doesn't host returns `invalid_target`
3. Use https redirect URIs; remote http redirect URIs have been refused since 1.2.0
4. Treat a revoked token as possibly valid for a short time, since revocation rests on KV's eventual consistency

## Questions

### Which is better for AI agents, Arcade.dev or Cloudflare Workers OAuth Provider?

Cloudflare Workers OAuth Provider scores 76.2 (BB) on agent readiness against Arcade.dev's 64 (B), and leads in 5 of 7 scored categories. Arcade.dev leads on agent ergonomics.

### Can an agent call Arcade.dev and Cloudflare Workers OAuth Provider without installing anything?

Arcade.dev has a hosted endpoint at https://api.arcade.dev. No hosted endpoint is listed for Cloudflare Workers OAuth Provider.

### Are Arcade.dev and Cloudflare Workers OAuth Provider open source?

No open-source release is listed for Arcade.dev. Cloudflare Workers OAuth Provider is open source (MIT).


## For agents

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

## Other comparisons with Arcade.dev or Cloudflare Workers OAuth Provider

- [Aembit vs Arcade.dev](https://www.anchorterminal.com/compare/aembit-vs-arcade.md)
- [Aembit vs Cloudflare Workers OAuth Provider](https://www.anchorterminal.com/compare/aembit-vs-cloudflare-workers-oauth-provider.md)
- [Amazon Bedrock AgentCore Identity vs Arcade.dev](https://www.anchorterminal.com/compare/agentcore-identity-vs-arcade.md)
- [Amazon Bedrock AgentCore Identity vs Cloudflare Workers OAuth Provider](https://www.anchorterminal.com/compare/agentcore-identity-vs-cloudflare-workers-oauth-provider.md)
- [Arcade.dev vs Auth0 for AI Agents (Token Vault)](https://www.anchorterminal.com/compare/arcade-vs-auth0-ai-agents.md)
- [Arcade.dev vs Descope Agentic Identity Hub](https://www.anchorterminal.com/compare/arcade-vs-descope-agentic-identity.md)
- [Arcade.dev vs Keycard](https://www.anchorterminal.com/compare/arcade-vs-keycard.md)
- [Arcade.dev vs Microsoft Entra Agent ID](https://www.anchorterminal.com/compare/arcade-vs-microsoft-entra-agent-id.md)
- [Arcade.dev vs Nango](https://www.anchorterminal.com/compare/arcade-vs-nango.md)
- [Arcade.dev vs Scalekit AgentKit](https://www.anchorterminal.com/compare/arcade-vs-scalekit-agentkit.md)
- [Arcade.dev vs Stytch Connected Apps](https://www.anchorterminal.com/compare/arcade-vs-stytch-connected-apps.md)
- [Arcade.dev vs Vercel Connect](https://www.anchorterminal.com/compare/arcade-vs-vercel-connect.md)
- [Arcade.dev vs WorkOS Pipes and Agents](https://www.anchorterminal.com/compare/arcade-vs-workos-pipes.md)
- [Auth0 for AI Agents (Token Vault) vs Cloudflare Workers OAuth Provider](https://www.anchorterminal.com/compare/auth0-ai-agents-vs-cloudflare-workers-oauth-provider.md)
- [Cloudflare Workers OAuth Provider vs Descope Agentic Identity Hub](https://www.anchorterminal.com/compare/cloudflare-workers-oauth-provider-vs-descope-agentic-identity.md)
- [Cloudflare Workers OAuth Provider vs Keycard](https://www.anchorterminal.com/compare/cloudflare-workers-oauth-provider-vs-keycard.md)
- [Cloudflare Workers OAuth Provider vs Microsoft Entra Agent ID](https://www.anchorterminal.com/compare/cloudflare-workers-oauth-provider-vs-microsoft-entra-agent-id.md)
- [Cloudflare Workers OAuth Provider vs Nango](https://www.anchorterminal.com/compare/cloudflare-workers-oauth-provider-vs-nango.md)
- [Cloudflare Workers OAuth Provider vs Scalekit AgentKit](https://www.anchorterminal.com/compare/cloudflare-workers-oauth-provider-vs-scalekit-agentkit.md)
- [Cloudflare Workers OAuth Provider vs Stytch Connected Apps](https://www.anchorterminal.com/compare/cloudflare-workers-oauth-provider-vs-stytch-connected-apps.md)
- [Cloudflare Workers OAuth Provider vs Vercel Connect](https://www.anchorterminal.com/compare/cloudflare-workers-oauth-provider-vs-vercel-connect.md)
- [Cloudflare Workers OAuth Provider vs WorkOS Pipes and Agents](https://www.anchorterminal.com/compare/cloudflare-workers-oauth-provider-vs-workos-pipes.md)

---

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