MCP clients authenticate through OAuth 2.1 with PKCE. WhatsApp Use publishes protected-resource metadata for the WhatsApp MCP server.
Metadata
| Resource | Metadata |
|---|
/mcp/whatsapp | /.well-known/oauth-protected-resource/mcp/whatsapp |
The authorization server metadata is available at:
/.well-known/oauth-authorization-server
Authorization flow
Discover metadata
The MCP client reads protected-resource metadata for /mcp/whatsapp.
Register or identify the client
Clients can use dynamic client registration at POST /oauth/register.
Open authorization URL
The client starts GET /oauth/authorize with PKCE and the target resource.
Sign in
WhatsApp Use authenticates the user and selects an allowed organization connection.
Exchange code
The client exchanges the authorization code at POST /oauth/token.
Use access token
The client calls /mcp/whatsapp with the OAuth bearer token.
Grant binding
Each grant binds:
- User and organization.
- MCP resource.
- Scopes.
- Client ID and client name.
- Connection ID.
Scopes
The WhatsApp MCP resource requires whatsapp:read for read tools. Write tools require the grant to include whatsapp:write.
Do not paste dashboard API keys into MCP clients. MCP uses OAuth tokens, and the backend rejects API-key authentication for MCP.