Skip to main content

MCP Skill + CLI for managing vSphere with Tanzu (VKS) — Supervisor, Namespaces, and TanzuKubernetesCluster lifecycle

Project description

VMware VKS

English | 中文

MCP Skill + CLI for managing vSphere with Tanzu (VKS) — Supervisor clusters, vSphere Namespaces, and TanzuKubernetesCluster lifecycle.

Part of the VMware MCP Skills family:

Skill Scope Tools
vmware-monitor (read-only) Inventory, health, alarms, events 8
vmware-aiops (full ops) VM lifecycle, deployment, guest ops, plans 33
vmware-storage Datastores, iSCSI, vSAN 11
vmware-vks (this) Supervisor, Namespaces, TKC lifecycle 20

License: MIT

Prerequisites

  • vSphere 8.0+ — Workload Management (Supervisor) APIs require vSphere 8.x
  • Workload Management enabled — WCP must be enabled on at least one compute cluster
  • License — vSphere with Tanzu (Enterprise Plus or VMware Cloud Foundation)

Run vmware-vks check after setup to verify all requirements are met.

Quick Start

# Install
uv tool install vmware-vks

# Configure
mkdir -p ~/.vmware-vks
cp config.example.yaml ~/.vmware-vks/config.yaml
# Edit config.yaml with your vCenter host and username

echo "VMWARE_MY_VCENTER_PASSWORD=your_password" > ~/.vmware-vks/.env
chmod 600 ~/.vmware-vks/.env

# Verify
vmware-vks check

# Common operations
vmware-vks supervisor status domain-c1
vmware-vks namespace list
vmware-vks tkc list
vmware-vks tkc create my-cluster -n dev --version v1.28.4+vmware.1 --vm-class best-effort-large
vmware-vks tkc create my-cluster -n dev --apply

Tool Reference (20 tools)

Supervisor

Tool Description Type
check_vks_compatibility vCenter version check + WCP status Read
get_supervisor_status Supervisor cluster status and K8s API endpoint Read
list_supervisor_storage_policies Available storage policies for Namespaces Read

Namespace

Tool Description Type
list_namespaces All vSphere Namespaces with status Read
get_namespace Namespace detail (quotas, storage, roles) Read
create_namespace Create Namespace with dry-run preview Write
update_namespace Modify quotas and storage policy Write
delete_namespace Delete with TKC guard (rejects if clusters exist) Write
list_vm_classes Available VM classes for TKC sizing Read

TKC

Tool Description Type
list_tkc_clusters TanzuKubernetesCluster list with status Read
get_tkc_cluster Cluster detail (nodes, health, conditions) Read
get_tkc_available_versions Supported K8s versions on Supervisor Read
create_tkc_cluster Create TKC with YAML plan + dry-run default Write
scale_tkc_cluster Scale worker node count Write
upgrade_tkc_cluster Upgrade K8s version Write
delete_tkc_cluster Delete with workload guard Write

Access

Tool Description Type
get_supervisor_kubeconfig Supervisor kubeconfig YAML Read
get_tkc_kubeconfig TKC kubeconfig (stdout or file) Read
get_harbor_info Embedded Harbor registry info Read
list_namespace_storage_usage PVC list and capacity stats Read

CLI Reference

# Pre-flight diagnostics
vmware-vks check

# Supervisor
vmware-vks supervisor status <cluster-id>
vmware-vks supervisor storage-policies

# Namespace
vmware-vks namespace list
vmware-vks namespace get <name>
vmware-vks namespace create <name> --cluster <id> --storage-policy <policy>
vmware-vks namespace create <name> --cluster <id> --storage-policy <policy> --apply
vmware-vks namespace update <name> [--cpu <mhz>] [--memory <mib>]
vmware-vks namespace delete <name>
vmware-vks namespace vm-classes

# TKC
vmware-vks tkc list [-n <namespace>]
vmware-vks tkc get <name> -n <namespace>
vmware-vks tkc versions -n <namespace>
vmware-vks tkc create <name> -n <namespace> [--version <v>] [--vm-class <c>]
vmware-vks tkc create <name> -n <namespace> --apply
vmware-vks tkc scale <name> -n <namespace> --workers <n>
vmware-vks tkc upgrade <name> -n <namespace> --version <v>
vmware-vks tkc delete <name> -n <namespace>

# Kubeconfig
vmware-vks kubeconfig supervisor -n <namespace>
vmware-vks kubeconfig get <cluster-name> -n <namespace> [-o <path>]

# Harbor & Storage
vmware-vks harbor
vmware-vks storage -n <namespace>

MCP Server

# Run directly
vmware-vks-mcp

# Or via module
python -m mcp_server

Agent Configuration

Add to your AI agent's MCP config:

{
  "mcpServers": {
    "vmware-vks": {
      "command": "vmware-vks-mcp",
      "env": {
        "VMWARE_VKS_CONFIG": "~/.vmware-vks/config.yaml"
      }
    }
  }
}

Safety

Feature Description
Read-heavy 12/20 tools are read-only
Dry-run default create_namespace, create_tkc_cluster, delete_namespace, delete_tkc_cluster all default to dry_run=True
TKC guard delete_namespace rejects if TKC clusters exist inside
Workload guard delete_tkc_cluster rejects if Deployments/StatefulSets are running
Credential safety Passwords only from environment variables (.env file), never in config.yaml
Audit logging All write operations logged to ~/.vmware-vks/audit.log
stdio transport No network listener; MCP runs over stdio only

Version Compatibility

vSphere Support Notes
8.0+ Full Workload Management APIs available
7.x Not supported WCP API surface is different; use vSphere 8.x

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

vmware_vks-0.1.0.tar.gz (93.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

vmware_vks-0.1.0-py3-none-any.whl (25.5 kB view details)

Uploaded Python 3

File details

Details for the file vmware_vks-0.1.0.tar.gz.

File metadata

  • Download URL: vmware_vks-0.1.0.tar.gz
  • Upload date:
  • Size: 93.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.0 {"installer":{"name":"uv","version":"0.10.0","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for vmware_vks-0.1.0.tar.gz
Algorithm Hash digest
SHA256 d698bdf0dccac0b0062b130ffe9c3fb1d3f9f53b24ffd75e844b083fe19a835c
MD5 a7f1aa029b697d1d944f81a2106bd0a4
BLAKE2b-256 728a99d2d0d8c5eee8c3a6052960e985309766f1e86566ec12036e6c75f6c6c6

See more details on using hashes here.

File details

Details for the file vmware_vks-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: vmware_vks-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 25.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.0 {"installer":{"name":"uv","version":"0.10.0","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for vmware_vks-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b96181375f6334e9235b7c2901ba09f50d551d67330a423d4bd050248beb8a5c
MD5 d72a5f31346e04070aab414d25a1deda
BLAKE2b-256 60eb3e0f8dc240e21fa05fe3e54f0f02ea84c9e797d4881a20a5603acf891fd8

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page