Back to Fastmcp

google

docs/python-sdk/fastmcp-server-auth-providers-google.mdx

3.2.42.5 KB
Original Source

fastmcp.server.auth.providers.google

Google OAuth provider for FastMCP.

This module provides a complete Google OAuth integration that's ready to use with just a client ID and client secret. It handles all the complexity of Google's OAuth flow, token validation, and user management.

Example: ```python from fastmcp import FastMCP from fastmcp.server.auth.providers.google import GoogleProvider

# Simple Google OAuth protection
auth = GoogleProvider(
    client_id="your-google-client-id.apps.googleusercontent.com",
    client_secret="your-google-client-secret"
)

mcp = FastMCP("My Protected Server", auth=auth)
```

Classes

GoogleTokenVerifier <sup><a href="https://github.com/PrefectHQ/fastmcp/blob/main/src/fastmcp/server/auth/providers/google.py#L57" target="_blank"><Icon icon="github" style="width: 14px; height: 14px;" /></a></sup>

Token verifier for Google OAuth tokens.

Google OAuth tokens are opaque (not JWTs), so we verify them by calling Google's tokeninfo endpoint with the access token as a query parameter. This returns the OAuth app ID (aud), granted scopes, and expiry time. User profile data (name, picture, etc.) is fetched separately from the v2 userinfo endpoint when the token is valid.

Methods:

verify_token <sup><a href="https://github.com/PrefectHQ/fastmcp/blob/main/src/fastmcp/server/auth/providers/google.py#L92" target="_blank"><Icon icon="github" style="width: 14px; height: 14px;" /></a></sup>

python
verify_token(self, token: str) -> AccessToken | None

Verify a Google OAuth token using the tokeninfo endpoint.

Calls https://oauth2.googleapis.com/tokeninfo?access_token=TOKEN to validate the token and retrieve the OAuth app ID (aud), granted scopes, and expiry time. On success, fetches user profile data from the v2 userinfo endpoint to populate name, picture, and locale claims.

GoogleProvider <sup><a href="https://github.com/PrefectHQ/fastmcp/blob/main/src/fastmcp/server/auth/providers/google.py#L204" target="_blank"><Icon icon="github" style="width: 14px; height: 14px;" /></a></sup>

Complete Google OAuth provider for FastMCP.

This provider makes it trivial to add Google OAuth protection to any FastMCP server. Just provide your Google OAuth app credentials and a base URL, and you're ready to go.

Features:

  • Transparent OAuth proxy to Google
  • Automatic token validation via Google's tokeninfo API
  • User information extraction from Google APIs
  • Minimal configuration required