Skip to main content
Glama

MCP Google Suite

by adexltd
MIT License
3
  • Linux
  • Apple
config.py2.25 kB
"""Configuration management for MCP Google Workspace.""" import json import os from typing import Optional from pydantic import BaseModel, Field # Default paths DEFAULT_GOOGLE_DIR = os.path.expanduser("~/.google") DEFAULT_SERVER_CREDS = os.path.join(DEFAULT_GOOGLE_DIR, "server-creds.json") DEFAULT_OAUTH_CREDS = os.path.join(DEFAULT_GOOGLE_DIR, "oauth.keys.json") class CredentialsConfig(BaseModel): """Credentials configuration settings.""" server_credentials: str = Field( default=DEFAULT_SERVER_CREDS, description="Path to the server credentials JSON file" ) oauth_credentials: str = Field( default=DEFAULT_OAUTH_CREDS, description="Path to the OAuth credentials JSON file" ) def ensure_credentials_dir(self) -> None: """Ensure the credentials directory exists.""" for cred_path in [self.server_credentials, self.oauth_credentials]: os.makedirs(os.path.dirname(os.path.expanduser(cred_path)), exist_ok=True) @property def expanded_server_credentials(self) -> str: """Get the expanded path for server credentials.""" return os.path.expanduser(self.server_credentials) @property def expanded_oauth_credentials(self) -> str: """Get the expanded path for OAuth credentials.""" return os.path.expanduser(self.oauth_credentials) class Config(BaseModel): """Main configuration settings.""" credentials: CredentialsConfig = Field(default_factory=CredentialsConfig) @classmethod def load(cls, config_path: Optional[str] = None) -> "Config": """Load configuration from JSON file.""" if config_path and os.path.exists(config_path): with open(config_path, "r") as f: file_config = json.load(f) return cls(**file_config) return cls() def save(self, config_path: str) -> None: """Save configuration to JSON file.""" os.makedirs(os.path.dirname(config_path), exist_ok=True) with open(config_path, "w") as f: json.dump(self.model_dump(), f, indent=2) def ensure_credentials_dir(self) -> None: """Ensure the credentials directory exists.""" self.credentials.ensure_credentials_dir()

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/adexltd/mcp-google-suite'

If you have feedback or need assistance with the MCP directory API, please join our Discord server