"""Configuration settings for the news collector."""
import os
from typing import Dict, Any
from pydantic_settings import BaseSettings
from pydantic import Field
class Settings(BaseSettings):
"""Application settings."""
# Database
database_url: str = Field(
default="postgresql://username:password@localhost:5432/news_collector",
env="DATABASE_URL"
)
# Server
log_level: str = Field(default="INFO", env="LOG_LEVEL")
max_requests_per_minute: int = Field(default=100, env="MAX_REQUESTS_PER_MINUTE")
# MCP Server
mcp_server_host: str = Field(default="localhost", env="MCP_SERVER_HOST")
mcp_server_port: int = Field(default=8000, env="MCP_SERVER_PORT")
class Config:
env_file = ".env"
env_file_encoding = "utf-8"
def get_settings() -> Settings:
"""Get application settings."""
return Settings()