roundup · oauth + mcp 2026

OAuth-enabled MCP providers.

Comparison + setup guide for the major OAuth-gated providers that ship MCP servers (official or community): Google, GitHub, Slack, Stripe, Notion, Linear, Discord. Shape of OAuth flow, scope model, token storage, integration effort — and where wmcp.sh fits as a centralized OAuth proxy.

MCP supports OAuth 2.1 (RFC 6749 / 9700) with PKCE and Dynamic Client Registration (RFC 7591). Most providers below implement standard OAuth 2.0 + PKCE.

All claims are based on each provider's public documentation as of 2026-05-28. Scopes, flows, and token TTLs change frequently — always check the vendor's docs before implementing. We are not affiliated with the providers listed.

Seven providers worth knowing.

comms · large scope set

Google (Gmail / Calendar / Drive)

OAuth 2.0 with PKCE; very fine-grained scopes per Google API surface. MCP servers (community + emerging vendor support) typically run as hosted or local with per-user token storage. Refresh tokens supported.

devops

GitHub

OAuth 2.0 + GitHub Apps (preferred for scoped fine-grained access). Official MCP server ships with both PAT and OAuth flows; community variants exist. Per-installation scope model is well-suited to agents.

comms

Slack

OAuth 2.0 with bot tokens + user tokens. Granular scope model (channels:read, chat:write, im:history). Official + community MCP servers available. Workspace-level tokens vs per-user differ in capability.

payments

Stripe

Stripe Connect uses OAuth for platform-on-merchant access; direct API uses restricted API keys (not OAuth) for first-party use. Official MCP server exists. Match the auth pattern to your agent's role (platform vs merchant).

workspace · large scope

Notion

OAuth 2.0; per-integration scope is bound to specific pages/databases the user shares with the integration — a useful safety property for agents. Community + emerging vendor MCP servers.

issues · clean flow

Linear

OAuth 2.0 with PKCE; relatively small, sensible scope set (read/write across issues, projects, cycles). Vendor-published MCP server. Often cited as the cleanest OAuth onboarding among comms-class tools.

comms · bot model

Discord

OAuth 2.0 for user tokens; separate bot-token model for server-side automation. Community MCP servers in both flavors. Choose based on whether the agent acts as a user or as a bot account.

meta · oauth proxy

wmcp.sh OAuth proxy

One endpoint (wmcp.sh/mcp/<provider>) that handles RFC 7591 DCR + PKCE upstream against any of the providers above, so an agent that can connect to one MCP server but can't drive arbitrary OAuth flows still works.

OAuth shape per provider.

Provider Flow Scope granularity Token storage (typical) Integration effort
Google OAuth 2.0 + PKCE Very fine Per-user, refresh-token Moderate (scope review, consent screen)
GitHub OAuth 2.0 / GitHub App Fine (Apps even finer) Per-user or per-installation Low (App model is clean)
Slack OAuth 2.0 Fine (bot vs user) Per-workspace + per-user Low–moderate
Stripe Connect OAuth / API keys Restricted-key roles Per-account Low for direct; moderate for Connect
Notion OAuth 2.0 Page/DB-bound Per-integration Low
Linear OAuth 2.0 + PKCE Small + clean Per-user Low
Discord OAuth 2.0 / bot tokens Moderate Per-user / per-bot Low (bot) / Moderate (user)
wmcp.sh proxy RFC 7591 DCR + PKCE Passed through Server-side vault Lowest — single endpoint for many upstreams

Cells reflect typical/default usage per each provider's documentation. Specific scopes, token TTLs, and refresh policies change — check the vendor's docs before implementing.

The five-step pattern.

Almost every OAuth-MCP integration follows the same shape. Use this as your template.

# 1. Register your client with the provider (or use RFC 7591 DCR)
#    → get client_id / client_secret OR rely on dynamic registration.

# 2. Decide token storage:
#    a) Local (Claude Desktop / Cursor stores per-user)
#    b) Server-side vault (Composio / Arcade / wmcp.sh proxy)
#    c) Per-call short-lived (your backend mints)

# 3. Run the OAuth flow with PKCE:
#    GET /authorize → user consents → callback → exchange code for token.

# 4. Connect the MCP client to the provider's MCP endpoint:
curl -H "Authorization: Bearer $TOKEN" 'https://<provider>/mcp'

# 5. Or — let wmcp.sh handle steps 1-3:
curl 'https://wmcp.sh/mcp/<provider>'
#    wmcp.sh runs DCR + PKCE upstream and injects bearer on every tool call.

One endpoint, many upstreams.

The shape: an agent (Claude.ai connector, Cursor remote MCP, web agent) connects once to wmcp.sh/mcp/<provider> using standard OAuth 2.1 + PKCE + Dynamic Client Registration. wmcp.sh handles the dance with the upstream provider, stores the refresh token server-side, and forwards every tool call with the right bearer. The agent doesn't have to know provider-specific OAuth shapes.

why it helps

For agents that can't drive arbitrary OAuth

Claude.ai connectors and other hosted clients can only connect to one MCP server at a time — they can't run the OAuth dance against twelve different providers. wmcp.sh consolidates.

why it helps

For dev teams that want one vault

Instead of building per-provider token storage in your app, use wmcp.sh's vault. Tokens never touch your servers; calls go agent → wmcp.sh → upstream.

Common questions.

Why does OAuth matter for MCP?
Most useful tool surfaces are gated by OAuth. The MCP spec supports OAuth 2.1 with PKCE and Dynamic Client Registration, so clients and servers negotiate auth without bespoke flows per provider.
Owner-side vs shopper-side OAuth?
Owner-side: end user authorizes their own SaaS. Shopper-side: agent acts on a public surface the user doesn't own. Owner-side needs OAuth per user; shopper-side often doesn't.
Where do tokens live?
Local (client device), managed vault (server-side proxy), or per-call (short-lived). Each has tradeoffs. wmcp.sh implements the managed-vault pattern.
How does wmcp.sh's OAuth proxy work?
Agent connects to wmcp.sh/mcp/<provider> via DCR + PKCE. wmcp.sh runs the upstream OAuth flow, stores refresh tokens, injects bearers on every call. Agent doesn't see provider-specific OAuth.
Which providers have official MCP with OAuth?
A growing list — Linear, GitHub, Slack, and several others with vendor-published servers, plus community MCP for Google, Notion, Discord, Stripe, etc. Check each vendor's docs and /directory.
Need this picked / built for you?

We'll set up your OAuth-MCP stack.

Provider OAuth registration + token vault + MCP at mcp.yourbrand.com + verified badge. From $499 one-time setup; Managed Retainer $999/mo; Enterprise $4,999+/mo.

See /managed → Submit (free)