"""Configuration module for QML MCP Server."""
from pydantic import BaseModel, Field
from pydantic_settings import BaseSettings
class QuantumConfig(BaseModel):
"""Quantum computation configuration."""
max_shots: int = Field(
default=100000,
ge=1,
le=1000000,
description="Maximum number of shots allowed per circuit execution"
)
max_qubits: int = Field(
default=10,
ge=1,
le=50,
description="Maximum number of qubits allowed in a circuit"
)
default_shots: int = Field(
default=1024,
ge=1,
description="Default number of shots for circuit execution"
)
class ServerConfig(BaseSettings):
"""MCP Server configuration."""
model_config = {"env_prefix": "QML_MCP_", "env_nested_delimiter": "_"}
quantum: QuantumConfig = Field(default_factory=QuantumConfig)
log_level: str = Field(default="INFO", description="Logging level")
enable_detailed_errors: bool = Field(
default=True,
description="Include detailed error traces in responses"
)
# Global configuration instance
config = ServerConfig()