oauthSupabaseProvider when Supabase Auth is the authorization server. Supabase handles login, consent, client registration, and token issuance; mcp-use verifies the resulting access token.
Configure Supabase
In the Supabase Dashboard:- Enable the OAuth 2.1 server and Dynamic OAuth Apps.
- Configure a consent-screen route implemented by your application.
- Enable at least one user sign-in method.
- Copy the project ID and publishable key.
Configure the server
Pass eitherprojectId for hosted Supabase or supabaseUrl for local or self-hosted Supabase. Environment names belong to your application; the provider does not read them.
authenticated. Modern Supabase tokens use ES256 and are verified through the project JWKS. For a legacy HS256 project, pass its secret explicitly:
jwtSecret selects HS256 verification and must be at least 32 bytes. Without it, the provider selects ES256/JWKS verification.
Use mapped identity
Supabase maps the subject toid and can map email, name, fullName, username, avatarUrl, role, aal, amr, and sessionId. It maps the assurance level to top-level permission aal:<level>.
Use Row Level Security
Create the Supabase client per request with the verified access token:Runnable Supabase example
Start from the maintained server and consent UI.
Supabase MCP Authentication
Configure Supabase OAuth for MCP.
User Context
Use mapped Supabase identity and token metadata.