36 lines
827 B
Python
36 lines
827 B
Python
"""Configuration settings for MCP Browser Sidecar."""
|
|
|
|
from pydantic_settings import BaseSettings
|
|
|
|
|
|
class Settings(BaseSettings):
|
|
"""Application settings loaded from environment variables."""
|
|
|
|
# Session limits
|
|
max_sessions: int = 3
|
|
idle_timeout_seconds: int = 300 # 5 minutes
|
|
max_session_lifetime_seconds: int = 1800 # 30 minutes
|
|
max_actions_per_session: int = 50
|
|
|
|
# Playwright settings
|
|
browser_headless: bool = True
|
|
default_timeout_ms: int = 30000
|
|
navigation_timeout_ms: int = 60000
|
|
|
|
# Cleanup interval
|
|
cleanup_interval_seconds: int = 60
|
|
|
|
# Logging
|
|
log_level: str = "INFO"
|
|
log_json: bool = True
|
|
|
|
# Screenshots directory
|
|
screenshots_dir: str = "/screenshots"
|
|
|
|
class Config:
|
|
env_prefix = ""
|
|
case_sensitive = False
|
|
|
|
|
|
settings = Settings()
|