MCP.OAuth2.Adapter.Default (fnord v0.8.71)

View Source

Default OAuth2 Authorization Code + PKCE adapter.

Reserves an ephemeral 127.0.0.1 port, composes the loopback redirect_uri, and delegates to MCP.OAuth2.Client.start_flow/1. Maps common provider rejections (e.g., HTTP 400 for redirect URIs) to actionable error tuples.

Security:

  • Avoids logging sensitive values.
  • Redirect URIs use 127.0.0.1 ephemeral port per RFC 8252 guidance.

Introduced: M3. Updated: M7 - Switched from OidccAdapter to pure OAuth2 Client

Summary

Functions

start_flow(oauth)

@spec start_flow(map()) ::
  {:ok, non_neg_integer(), String.t(), String.t(), String.t(), String.t()}
  | {:error, term()}

Callback implementation for MCP.OAuth2.Adapter.start_flow/1.