# MCP Server Service Default Configuration # Model Context Protocol with tools, prompts, resources, sampling let mcp_server_schema = import "../schemas/mcp-server.ncl" in let monitoring_defaults = import "./common/monitoring-defaults.ncl" in let logging_defaults = import "./common/logging-defaults.ncl" in { mcp_server | mcp_server_schema.MCPServerConfig = { # Workspace Configuration workspace = { name = "default", path = "/var/lib/provisioning/mcp-server", enabled = true, multi_workspace = false, }, # HTTP Server Settings server = { host = "127.0.0.1", port = 3000, workers = 4, keep_alive = 75, max_connections = 100, request_timeout = 30000, graceful_shutdown = true, shutdown_timeout = 30, }, # MCP Protocol Configuration protocol = { version = "1.0", transport = { endpoint = "http://localhost:3000", timeout = 30000, }, }, # Tools Configuration tools = { enabled = true, max_concurrent = 5, timeout = 30000, validation = { enabled = true, strict_mode = false, }, cache = { enabled = true, ttl = 3600, }, }, # Prompts Configuration prompts = { enabled = true, max_templates = 100, cache = { enabled = true, ttl = 3600, }, versioning = { enabled = false, max_versions = 10, }, }, # Resources Configuration resources = { enabled = true, max_size = 104857600, cache = { enabled = true, max_size_mb = 512, ttl = 3600, }, validation = { enabled = true, max_depth = 10, }, }, # Sampling Configuration sampling = { enabled = false, max_tokens = 4096, temperature = 0.7, cache = { enabled = true, ttl = 3600, }, }, # Capabilities Declaration capabilities = { tools = { enabled = true, list_changed_callback = false, }, prompts = { enabled = true, list_changed_callback = false, }, resources = { enabled = true, list_changed_callback = false, subscribe = false, }, sampling = { enabled = false, }, }, # Orchestrator Integration orchestrator_integration = { enabled = false, }, # Control Center Integration control_center_integration = { enabled = false, enforce_rbac = true, }, # Monitoring Configuration monitoring = monitoring_defaults.monitoring, # Logging Configuration logging = logging_defaults.logging, # Performance Tuning performance = { pool_size = 10, buffer_size = 1024, compression = false, }, }, }