Version ArtifactHub License Slack X Reddit

A Helm chart for VictoriaMetrics MCP server

Prerequisites #

Before installing this chart, ensure your environment meets the following requirements:

  • Kubernetes cluster - A running Kubernetes cluster with sufficient resources
  • Helm - Helm package manager installed and configured

Additional requirements depend on your configuration:

  • Persistent storage - Required if you enable persistent volumes for data retention (enabled by default)
  • kubectl - Needed for cluster management and troubleshooting

For installation instructions, refer to the official documentation:

Chart Details #

This chart will do the following:

  • Rollout VictoriaMetrics MCP server.

How to install #

Access a Kubernetes cluster.

Setup chart repository (can be omitted for OCI repositories) #

Add a chart helm repository with follow commands:

      helm repo add vm https://victoriametrics.github.io/helm-charts/

helm repo update

    

List versions of vm/victoria-metrics-mcp chart available to installation:

      helm search repo vm/victoria-metrics-mcp -l

    

Install victoria-metrics-mcp chart #

Export default values of victoria-metrics-mcp chart to file values.yaml:

  • For HTTPS repository

          helm show values vm/victoria-metrics-mcp > values.yaml
    
        
  • For OCI repository

          helm show values oci://ghcr.io/victoriametrics/helm-charts/victoria-metrics-mcp > values.yaml
    
        

Change the values according to the need of the environment in values.yaml file.

Note

Consider setting .Values.nameOverride to a small value like vmm to avoid hitting resource name limits of 63 characters

Test the installation with command:

  • For HTTPS repository

          helm install vmm vm/victoria-metrics-mcp -f values.yaml -n NAMESPACE --debug
    
        
  • For OCI repository

          helm install vmm oci://ghcr.io/victoriametrics/helm-charts/victoria-metrics-mcp -f values.yaml -n NAMESPACE --debug
    
        

Install chart with command:

  • For HTTPS repository

          helm install vmm vm/victoria-metrics-mcp -f values.yaml -n NAMESPACE
    
        
  • For OCI repository

          helm install vmm oci://ghcr.io/victoriametrics/helm-charts/victoria-metrics-mcp -f values.yaml -n NAMESPACE
    
        

Get the pods lists by running this commands:

      kubectl get pods -A | grep 'vmm'

    

Get the application by running this command:

      helm list -f vmm -n NAMESPACE

    

See the history of versions of vmm application with command.

      helm history vmm -n NAMESPACE

    

How to uninstall #

Remove application with command.

      helm uninstall vmm -n NAMESPACE

    

Parameters #

The following tables lists the configurable parameters of the chart and their default values.

Change the values according to the need of the environment in victoria-metrics-mcp/values.yaml file.

KeyDescription
affinity: {}
(object)
env: []
(list)
fullnameOverride: ""
(string)
image.pullPolicy: IfNotPresent
(string)
image.registry: ghcr.io
(string)
image.repository: victoriametrics/mcp-victoriametrics
(string)
image.tag: ""
(string)
imagePullSecrets: []
(list)
ingress.annotations: {}
(object)
ingress.className: ""
(string)
ingress.enabled: false
(bool)
ingress.hosts[0].host: chart-example.local
(string)
ingress.hosts[0].paths[0].path: /
(string)
ingress.hosts[0].paths[0].pathType: ImplementationSpecific
(string)
ingress.tls: []
(list)
livenessProbe.httpGet.path: /health/liveness
(string)
livenessProbe.httpGet.port: http
(string)
livenessProbe.httpGet.scheme: HTTP
(string)
livenessProbe.initialDelaySeconds: 10
(int)
livenessProbe.periodSeconds: 10
(int)
livenessProbe.timeoutSeconds: 1
(int)
mcp.disable.resources: false
(bool)
mcp.disable.tools: []
(list)
mcp.heartbeatInterval: 30s
(string)
mcp.mode: http
(string)
mcp.passthroughHeaders: []
(list)
nameOverride: ""
(string)
nodeSelector: {}
(object)
podAnnotations: {}
(object)
podLabels: {}
(object)
podSecurityContext: {}
(object)
readinessProbe.httpGet.path: /health/readiness
(string)
readinessProbe.httpGet.port: http
(string)
readinessProbe.httpGet.scheme: HTTP
(string)
readinessProbe.initialDelaySeconds: 10
(int)
readinessProbe.periodSeconds: 10
(int)
readinessProbe.timeoutSeconds: 1
(int)
replicaCount: 1
(int)
resources: {}
(object)
route:
    annotations: {}
    enabled: false
    hostnames: []
    parentRefs:
        - name: gateway
          sectionName: http
    rules:
        - matches:
            - path:
                type: PathPrefix
                value: /
(object)

Expose the service via gateway-api HTTPRoute Requires Gateway API resources and suitable controller installed within the cluster (see: https://gateway-api.sigs.k8s.io/guides/)

scrape.enabled: false
(bool)
securityContext: {}
(object)
service.port: 8080
(int)
service.type: ClusterIP
(string)
serviceAccount.annotations: {}
(object)
serviceAccount.automount: true
(bool)
serviceAccount.create: true
(bool)
serviceAccount.name: ""
(string)
tolerations: []
(list)
vm.bearerToken: ""
(string)
vm.cloudAPIKey: ""
(string)
vm.entrypoint: ""
(string)
vm.headers: []
(list)
vm.type: single
(string)
volumeMounts: []
(list)
volumes: []
(list)