Skip to main content
Glama
settings.py1.6 kB
"""Application settings using pydantic-settings.""" from functools import lru_cache from pydantic import Field from pydantic_settings import BaseSettings, SettingsConfigDict class Settings(BaseSettings): """Application settings loaded from environment variables. Attributes: ree_api_token: REE API authentication token ree_api_base_url: Base URL for REE API request_timeout: HTTP request timeout in seconds max_retries: Maximum number of retry attempts for failed requests retry_backoff_factor: Backoff factor for exponential retry """ model_config = SettingsConfigDict( env_file=".env", env_file_encoding="utf-8", case_sensitive=False, extra="ignore", ) ree_api_token: str = Field( ..., description="REE API authentication token", ) ree_api_base_url: str = Field( default="https://api.esios.ree.es", description="Base URL for REE API", ) request_timeout: int = Field( default=30, description="HTTP request timeout in seconds", ge=1, le=300, ) max_retries: int = Field( default=3, description="Maximum retry attempts", ge=0, le=10, ) retry_backoff_factor: float = Field( default=0.5, description="Exponential backoff factor", ge=0.0, le=10.0, ) @lru_cache def get_settings() -> Settings: """Get cached settings instance. Returns: Singleton Settings instance. """ return Settings() # type: ignore[call-arg]

Latest Blog Posts

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/ESJavadex/ree-mcp'

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