# MCP Umbrella Chart - Central Configuration # Secrets are managed in secrets.enc.yaml (SOPS-encrypted) # Global configuration shared across all MCP servers global: namespace: mcp commonLabels: app.kubernetes.io/part-of: mcp-ecosystem managed-by: mcp-umbrella imagePullPolicy: IfNotPresent securityContext: runAsNonRoot: true runAsUser: 1000 fsGroup: 1000 # ============================================================================= # MCP Gateway Configuration # ============================================================================= mcp-gateway: enabled: true replicaCount: 1 service: type: LoadBalancer port: 3000 ingress: enabled: false className: "nginx" hosts: - host: mcp.caffeinetux.com paths: - path: / pathType: Prefix tls: - secretName: mcp-gateway-tls hosts: - mcp.caffeinetux.com gateway: auth: enabled: true # API keys loaded from Secret: mcp-gateway-api-keys existingSecret: mcp-gateway-api-keys logLevel: "info" timeout: 30000 servers: n8n-mcp: host: "n8n-mcp" port: 3001 playwright-mcp: host: "playwright-mcp" port: 3002 kubernetes-mcp: host: "kubernetes-mcp" port: 3003 github-mcp: host: "github-mcp" port: 3004 postgresql-mcp: host: "postgresql-mcp" port: 3005 sqlite-mcp: host: "sqlite-mcp" port: 3006 prometheus-mcp: host: "prometheus-mcp" port: 3007 slack-mcp: host: "slack-mcp" port: 3008 s3-mcp: host: "s3-mcp" port: 3009 filesystem-mcp: host: "filesystem-mcp" port: 3010 puppeteer-mcp: host: "puppeteer-mcp" port: 3011 fetch-mcp: host: "fetch-mcp" port: 3012 memory-mcp: host: "memory-mcp" port: 3013 gitea-mcp: host: "gitea-mcp" port: 3014 autoscaling: enabled: true minReplicas: 1 maxReplicas: 3 targetCPUUtilizationPercentage: 80 # ============================================================================= # n8n MCP Server Configuration # ============================================================================= n8n-mcp: enabled: true n8nMCP: n8n: url: "http://n8n.n8n.svc.cluster.local:5678" # API key loaded from Secret: n8n-mcp-api-key existingSecret: n8n-mcp-api-key mode: "full" logLevel: "info" # ============================================================================= # Playwright MCP Server Configuration # ============================================================================= playwright-mcp: enabled: true playwrightMCP: browsers: - chromium - firefox - webkit headless: true timeout: 30000 persistence: enabled: true size: 10Gi storageClassName: nfs-client resources: limits: cpu: 1000m memory: 2Gi requests: cpu: 200m memory: 512Mi # ============================================================================= # Kubernetes MCP Server Configuration # ============================================================================= kubernetes-mcp: enabled: true rbac: create: true rules: - apiGroups: [""] resources: ["pods", "services", "configmaps", "secrets"] verbs: ["get", "list", "watch", "create", "update", "delete"] - apiGroups: ["apps"] resources: ["deployments", "statefulsets", "daemonsets"] verbs: ["get", "list", "watch", "create", "update", "delete"] # ============================================================================= # GitHub MCP Server Configuration # ============================================================================= github-mcp: enabled: true github: # Token and owner loaded from Secret: github-mcp-token existingSecret: github-mcp-token # ============================================================================= # PostgreSQL MCP Server Configuration # ============================================================================= postgresql-mcp: enabled: false postgresql: host: "postgresql.default.svc.cluster.local" port: 5432 database: "postgres" user: "postgres" # ============================================================================= # SQLite MCP Server Configuration # ============================================================================= sqlite-mcp: enabled: true sqlite: databasePath: "/data/sqlite.db" persistence: enabled: true size: 1Gi # ============================================================================= # Prometheus MCP Server Configuration # ============================================================================= prometheus-mcp: enabled: false prometheus: url: "http://prometheus-server.prometheus.svc.cluster.local" # ============================================================================= # Slack MCP Server Configuration # ============================================================================= slack-mcp: enabled: false # ============================================================================= # S3 MCP Server Configuration # ============================================================================= s3-mcp: enabled: false s3: region: "us-east-1" # ============================================================================= # Filesystem MCP Server Configuration # ============================================================================= filesystem-mcp: enabled: true filesystem: rootPath: "/data" persistence: enabled: true size: 5Gi # ============================================================================= # Puppeteer MCP Server Configuration # ============================================================================= puppeteer-mcp: enabled: false puppeteer: headless: true timeout: 30000 persistence: enabled: true downloadSize: 5Gi screenshotSize: 5Gi resources: limits: cpu: 1000m memory: 2Gi requests: cpu: 500m memory: 1Gi # ============================================================================= # Fetch MCP Server Configuration # ============================================================================= fetch-mcp: enabled: true fetch: userAgent: "MCP-Fetch-Server/1.0" timeout: 30000 # ============================================================================= # Memory MCP Server Configuration # ============================================================================= memory-mcp: enabled: true storage: backend: "redis" redis: host: "redis.default.svc.cluster.local" port: 6379 db: 0 resources: limits: cpu: 200m memory: 512Mi requests: cpu: 100m memory: 256Mi # ============================================================================= # Gitea MCP Server Configuration # ============================================================================= gitea-mcp: enabled: true gitea: # Token, owner, and URL loaded from Secret: gitea-mcp-token existingSecret: gitea-mcp-token