Documentation Index
Fetch the complete documentation index at: https://mintlify.com/dvlpjrs/guMCP/llms.txt
Use this file to discover all available pages before exploring further.
Overview
BaseAuthClient is an abstract base class that defines the interface for authentication clients in guMCP. It uses Python generics to work with any type of credentials object.
Source: src/auth/clients/BaseAuthClient.py:8
Class Definition
Methods
get_user_credentials
Retrieves user credentials for a specific service. Credentials returned are ready-to-use (e.g., access tokens are already refreshed). Source:src/auth/clients/BaseAuthClient.py:15
Name of the service (e.g., “gdrive”, “github”, “slack”)
Identifier for the user
Credentials object if found, None otherwise
get_oauth_config
Retrieves OAuth configuration for a specific service. Source:src/auth/clients/BaseAuthClient.py:30
Name of the service (e.g., “gdrive”, “github”, “slack”)
Dictionary containing OAuth configuration (client_id, client_secret, etc.)
This method is optional and raises
NotImplementedError by default.save_user_credentials
Saves user credentials after authentication or refresh. Source:src/auth/clients/BaseAuthClient.py:44
Name of the service (e.g., “gdrive”, “github”, “slack”)
Identifier for the user
Credentials object to save
This method is optional and raises
NotImplementedError by default.Type Variables
Generic type variable representing any type of credentials object
Implementation Notes
- All implementations must override
get_user_credentials()as it’s marked with@abc.abstractmethod get_oauth_config()andsave_user_credentials()are optional methods that should be implemented based on the client’s needs- The generic type
CredentialsTallows flexibility in credential storage formats across different implementations
See Also
- LocalAuthClient - File-based implementation
- GumloopAuthClient - Gumloop API implementation
- create_auth_client() - Factory function for creating auth clients