Skip to main content
Glama

System Information MCP Server

by dknell
config.py•2.14 kB
"""Server configuration with environment variable support.""" import os from dataclasses import dataclass from typing import Literal @dataclass class ServerConfig: """Server configuration with environment variable support.""" name: str = "system-info-server" version: str = "1.0.0" description: str = "System information MCP server" cache_ttl: int = int(os.getenv("SYSINFO_CACHE_TTL", "5")) max_processes: int = int(os.getenv("SYSINFO_MAX_PROCESSES", "100")) enable_temperatures: bool = ( os.getenv("SYSINFO_ENABLE_TEMP", "true").lower() == "true" ) log_level: str = os.getenv("SYSINFO_LOG_LEVEL", "INFO") # Transport configuration transport: Literal["stdio", "sse", "streamable-http"] = os.getenv("SYSINFO_TRANSPORT", "stdio") # type: ignore port: int = int(os.getenv("SYSINFO_PORT", "8001")) host: str = os.getenv("SYSINFO_HOST", "localhost") mount_path: str = os.getenv("SYSINFO_MOUNT_PATH", "/mcp") def __post_init__(self) -> None: """Validate configuration after initialization.""" if self.cache_ttl < 0: raise ValueError("cache_ttl must be non-negative") if self.max_processes <= 0: raise ValueError("max_processes must be positive") if self.log_level not in ["DEBUG", "INFO", "WARNING", "ERROR", "CRITICAL"]: raise ValueError(f"Invalid log_level: {self.log_level}") # Validate transport valid_transports = ["stdio", "sse", "streamable-http"] if self.transport not in valid_transports: raise ValueError(f"Invalid transport: {self.transport}. Must be one of {valid_transports}") # Validate port for HTTP transports if self.transport in ["sse", "streamable-http"]: if not (1 <= self.port <= 65535): raise ValueError("port must be between 1 and 65535") # Validate mount path if self.transport == "sse" and not self.mount_path.startswith("/"): raise ValueError("mount_path must start with '/'") # Global configuration instance config = ServerConfig()

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/dknell/mcp-system-info'

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