Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
作者提供的说明(英文原文)
vSphere with Tanzu (VKS): Namespace and TanzuKubernetesCluster lifecycle. Requires vSphere 8.x+.
这三项永远不会合并成一个分数:意见、测量和人气是不同的东西。
我们还没有为它写通俗的介绍。下面是我们从注册中心读取到的事实。
选择你使用的 AI 应用,然后复制设置。
你需要
你用的是哪个应用?
在上方选择你的应用。我们会记住它,下次按钮会显示“安装到 …”。
打开 Claude Desktop → Settings → Developer → Edit Config,把下面的内容粘贴到 claude_desktop_config.json
{
"mcpServers": {
"vmware-vks": {
"command": "uvx",
"args": [
"vmware-vks"
]
}
}
}在终端中运行这条命令
claude mcp add vmware-vks -- uvx vmware-vks粘贴到项目中的 .cursor/mcp.json,或 ~/.cursor/mcp.json
{
"mcpServers": {
"vmware-vks": {
"command": "uvx",
"args": [
"vmware-vks"
]
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
粘贴到项目中的 .vscode/mcp.json
{
"servers": {
"vmware-vks": {
"type": "stdio",
"command": "uvx",
"args": [
"vmware-vks"
]
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
这个服务器在你的电脑上运行,而 ChatGPT 只能连接互联网上的服务器。请选择其他应用。
你的选择通过 Cookie 保存在这台设备上,无需账户。
这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。
它在你的电脑上运行;安装后,工具列表会显示在你的 AI 应用中。
我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月7日
注册名称已通过 GitHub 账户 zw008 验证,该账户拥有此仓库
我们还没有从 GitHub 读取这个仓库
我们还没有从 GitHub 读取这个仓库
它在你的电脑上运行,没有互联网端点
在你的电脑上运行,改用本地设置
它在你的电脑上运行;我们只能读取互联网端点的工具列表
与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。
它在 1 项适用的基础检查中通过了 1 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。
注册中心没有列出必需的密钥,不过有些服务器会在首次使用时要求你登录。
它在你的电脑上运行。你的 AI 应用会在需要时启动它,数据不会经过作者的服务器(除非它自己调用在线服务)。
GitHub 仓库最后更新于–,最新版本(1.8.8)于4个月前进入注册中心。
支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。你的电脑上还需要有 Python (uv)。
同一分类中有:Spec Driven Development, Remote Desktop Commander, Aiterm MCP
同一分类中其他作者的服务器,按星标数排序。
如何看卡片:★ GitHub 星标i三大支柱:评价 · 检查 · 使用情况i更新 = 最新版本发布到注册中心的时间i
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Persistent terminals and one launcher for Claude, Codex, Grok, Cursor, and Antigravity harnesses.
按原文从作者的仓库复制。PopNx MCP 没有审查或背书其内容。HTML、图片和脚本已被移除。链接会离开本站。
For a read-only check of this skill with your model and agent host, use the shared model-fit self-test in the marketplace root.
Author: Wei Zhou, VMware by Broadcom — wei-wz.zhou@broadcom.com
This is a community-driven project by a VMware engineer, not an official VMware product.
For official VMware developer tools see developer.broadcom.com.
English | 中文
MCP Skill + CLI for VMware vSphere Kubernetes Service (VKS) management — Supervisor clusters, vSphere Namespaces, and VKS Cluster lifecycle. 25 MCP tools.
3.0 renames the two kubeconfig tools: get_supervisor_kubeconfig → issue_supervisor_kubeconfig, get_tkc_kubeconfig → issue_tkc_kubeconfig. They issue a credential (a Supervisor bearer token) rather than read something, and a get_ name told agents otherwise. Parameters, annotations, safety and CLI commands (vmware-vks kubeconfig supervisor / kubeconfig get) are unchanged; callers of the old names must switch (saved vmware-pilot workflows are translated by Pilot ≥ 2.0.0). Deny rules in ~/.vmware/rules.yaml naming the old names keep working with vmware-policy ≥ 1.19.0. Details in RELEASE_NOTES.md.
2.0 renames the three VM Service tools: list_vm_snapshots → list_vm_service_snapshots, list_vm_groups → list_vm_service_groups, list_vm_network_interfaces → list_vm_service_network_interfaces. The reason is a name clash: in the family's 2.0, vmware-aiops and vmware-monitor call their vSphere VM snapshot tool list_vm_snapshots, while these list Kubernetes VM Service (vm-operator) objects. Trap: an agent prompt, script or saved workflow that still calls list_vm_snapshots with vmware-aiops or vmware-monitor also loaded now reaches the vSphere tool, not this one — update it. A VKS-scoped deny rule naming list_vm_snapshots now also matches the aiops/monitor tool (vmware-policy ≥ 1.18 matches both names; vmware-audit policy lists such rules). Parameters, safety gates and CLI commands are unchanged; the full table is in RELEASE_NOTES.md. If an install older than 2.0 shares that rules.yaml, give it vmware-policy ≥ 1.18.2 too: it matches each rule against both the old and the new name, so one file serves both.
Part of the VMware MCP Skills family. Each skill handles a distinct domain — install only what you need.
| Skill | Scope | Tools | Install |
|---|---|---|---|
| [vmware-aiops](https://github.com/vmware-skills/VMware-AIops) ⭐ entry point | VM lifecycle, deployment, guest ops, clusters | 49 | uv tool install vmware-aiops |
| [vmware-monitor](https://github.com/vmware-skills/VMware-Monitor) | Read-only monitoring, alarms, events, VM info | 27 | uv tool install vmware-monitor |
| [vmware-storage](https://github.com/vmware-skills/VMware-Storage) | Datastores, iSCSI, vSAN | 11 | uv tool install vmware-storage |
| [vmware-nsx](https://github.com/vmware-skills/VMware-NSX) | NSX networking: segments, gateways, NAT, IPAM | 33 | uv tool install vmware-nsx-mgmt |
| [vmware-nsx-security](https://github.com/vmware-skills/VMware-NSX-Security) | DFW microsegmentation, security groups, Traceflow | 21 | uv tool install vmware-nsx-security |
| [vmware-aria](https://github.com/vmware-skills/VMware-Aria) | Aria Ops metrics, alerts, capacity planning | 28 | uv tool install vmware-aria |
uv tool installRun vmware-vks check after setup to verify all requirements are met.
# Install
uv tool install vmware-vks
mkdir -p ~/.vmware-vks cp config.example.yaml ~/.vmware-vks/config.yaml
echo "VMWARE_VKS_VCENTER01_PASSWORD=your_password" > ~/.vmware-vks/.env chmod 600 ~/.vmware-vks/.env
vmware-vks check
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
This project uses the modern PEP 517 build system (hatchling), so there is no `setup.py` by design — that is expected, not a missing file. If you cloned the source and hit ERROR: File "setup.py" or "setup.cfg" not found ... editable mode currently requires a setuptools-based build, your pip is older than 21.3 and cannot do an *editable* (-e) install with a non-setuptools backend. Editable mode is a developer convenience, not needed to run the tool — do one of:
# From the source tree — a normal (non-editable) install builds a wheel:
pip install . # NOT pip install -e .
pip install --upgrade pip && pip install -e .
For a truly air-gapped host, build the wheels on a connected machine and copy them over — the target then needs no network:
# On a connected machine, collect this package + its dependencies as wheels:
pip wheel . -w dist # → dist/*.whl (or: uv build, for just this package)
pip install --no-index --find-links dist vmware-vks
vmware-vks checkvmware-vks tkc versions -n devvmware-vks namespace create dev --cluster domain-c1 --storage-policy --cpu 16000 --memory 32768 --apply (get the policy ID from vmware-vks supervisor storage-policies)vmware-vks tkc create dev-cluster -n dev --version v1.28.4+vmware.1 --control-plane 1 --workers 3 --vm-class best-effort-large --applyvmware-vks kubeconfig get dev-cluster -n dev -o ./kubeconfig — writes an owner-only file instead of printing the tokenvmware-vks tkc get dev-cluster -n devvmware-vks tkc scale dev-cluster -n dev --workers 6vmware-vks tkc get dev-cluster -n dev (watch phase)vmware-vks namespace listvmware-vks storage -n devvmware-vks namespace update dev --cpu 32000 --memory 65536| Tool | Description | Type |
|---|---|---|
check_vks_compatibility | vCenter version check + WCP status | Read |
get_supervisor_upgrade_risk | vCenter 9.1.0/9.1.1 pre-upgrade advisory scope; VUMDB schema remains unmeasured; links to the official checker | Read |
get_supervisor_status | Supervisor cluster status and K8s API endpoint | Read |
list_supervisor_storage_policies | vCenter storage policies (policy ID, name, description) | Read |
For an upgrade from vCenter 8.0 Update 3 or 9.0.0–9.0.2 to 9.1.0/9.1.1, run supervisor upgrade-risk before scheduling. Its report cannot inspect the VUMDB schema or establish upgrade clearance. If a Supervisor/VKS environment is in scope, follow the Broadcom checker and remediation instructions or VDT, then back up vCenter and Supervisor before upgrading.
| Tool | Description | Type |
|---|---|---|
list_namespaces | All vSphere Namespaces with status | Read |
get_namespace | Namespace detail (quotas, storage, roles) | Read |
create_namespace | Create Namespace; previews by default (confirm=True applies) | 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 |
| 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; previews the YAML plan by default (confirm=True applies) | Write |
scale_tkc_cluster | Scale worker node count | Write |
upgrade_tkc_cluster | Upgrade K8s version | Write |
delete_tkc_cluster | Delete with workload guard | Write |
| Tool | Description | Type |
|---|---|---|
issue_supervisor_kubeconfig | Supervisor kubeconfig — credential (bearer token); inline or owner-only file | Write |
issue_tkc_kubeconfig | TKC kubeconfig — credential (bearer token); inline or owner-only file | Write |
get_harbor_info | Embedded Harbor registry info (id, cluster, version, URL, health, storage used) | Read |
list_namespace_storage_usage | PVC list and capacity stats | Read |
VCF 9.1 TKC access: In one live 9.1 report, issue_tkc_kubeconfig put a Supervisor JWT into the guest kubeconfig and the TKC API rejected it with 401. Treat the generated file as unverified for guest access; test it against the guest API before use. See issue #27. Supervisor-scoped TKC reads are unaffected in that report.
| Tool | Description | Type |
|---|---|---|
list_vm_service_snapshots | VirtualMachineSnapshot objects in a vSphere Namespace | Read |
list_vm_service_groups | VirtualMachineGroup objects and their boot order in a Namespace | Read |
list_vm_service_network_interfaces | Network interfaces (multi-NIC) of one VM Service VirtualMachine | Read |
| Tool | Description | Type |
|---|---|---|
get_access_info | Which account the server uses and whether it holds each tool's vSphere privileges on the root folder. Kubernetes calls are authorized by the namespace's own permissions, which it does not check | Read |
User (Natural Language)
↓ AI Agent (Claude Code / Goose / Cursor) ↓ reads SKILL.md ↓ vmware-vks CLI ─── or ─── vmware-vks MCP Server (stdio) │ ├─ Layer 1: pyVmomi (/sdk) + vSphere Automation REST (/api) │ Supervisor status, storage policies, Namespace CRUD, VM classes, Harbor │ Two session stores: the SOAP session from SmartConnect, and a separate │ REST session id from POST /api/session (vmware-api-session-id header) │ └─ Layer 2: kubernetes client → Supervisor K8s API endpoint TKC CR apply / get / delete (cluster.x-k8s.io API version auto-detected: prefers v1 when Supervisor serves it, falls back to v1beta1 for vSphere 8.0) Kubeconfig built in-memory from the POST /wcp/login bearer token (a third credential, and no temp file on disk) ↓ vCenter Server 8.x+ (Workload Management enabled) ↓ Supervisor Cluster → vSphere Namespaces → TanzuKubernetesCluster
# Pre-flight diagnostics
vmware-vks check
#
只显示了开头部分;其余内容请在仓库中阅读