Skip to content

feat: Official Helm chart for gateway deployment #9

Description

@initcron

Summary

Create an official Helm chart for deploying Open MCP Gateway to Kubernetes clusters.

Parent Epic

Part of #1 - Production Kubernetes & Container Support

Helm Chart Structure

charts/mcp-gateway/
├── Chart.yaml
├── values.yaml
├── templates/
│   ├── deployment.yaml
│   ├── service.yaml
│   ├── configmap.yaml
│   ├── secret.yaml
│   ├── serviceaccount.yaml
│   ├── rbac.yaml
│   ├── ingress.yaml (optional)
│   ├── servicemonitor.yaml (optional)
│   └── networkpolicy.yaml (optional)
└── README.md

Default Values

# values.yaml
replicaCount: 1

image:
  repository: ghcr.io/agenticdevops/mcp-gateway
  tag: ""  # defaults to chart appVersion
  pullPolicy: IfNotPresent

service:
  type: ClusterIP
  port: 4444

ingress:
  enabled: false
  className: ""
  annotations: {}
  hosts:
    - host: mcp.example.com
      paths:
        - path: /
          pathType: Prefix
  tls: []

resources:
  requests:
    cpu: 100m
    memory: 128Mi
  limits:
    cpu: 500m
    memory: 512Mi

catalog:
  # Inline catalog or reference to ConfigMap
  inline: |
    servers: []
  # Or reference existing ConfigMap
  existingConfigMap: ""

gateway:
  host: "0.0.0.0"
  port: 4444
  idleTimeout: 300
  adminEnabled: true

serviceAccount:
  create: true
  name: ""
  annotations: {}

rbac:
  create: true
  # Permissions for k8s-job and k8s-service runtimes
  rules:
    - apiGroups: ["batch"]
      resources: ["jobs"]
      verbs: ["create", "delete", "get", "list", "watch"]
    - apiGroups: [""]
      resources: ["pods", "pods/log"]
      verbs: ["get", "list", "watch"]

metrics:
  enabled: true
  serviceMonitor:
    enabled: false
    interval: 30s

networkPolicy:
  enabled: false

Features

  • Basic deployment with ConfigMap catalog
  • ServiceAccount and RBAC for K8s runtimes
  • Ingress support (nginx, traefik, etc.)
  • TLS configuration
  • Resource limits and requests
  • Pod disruption budget
  • Horizontal pod autoscaler
  • ServiceMonitor for Prometheus Operator
  • NetworkPolicy for security
  • Multi-tenant deployment mode

Acceptance Criteria

  • helm install deploys working gateway
  • All configuration options documented
  • Works with Helm 3.x
  • Passes helm lint
  • Published to artifact hub or chart repo

Installation Example

helm repo add openmcp https://agenticdevops.github.io/openmcp/charts
helm install mcp-gateway openmcp/mcp-gateway \
  --set ingress.enabled=true \
  --set ingress.hosts[0].host=mcp.example.com

References

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions