VMware 管理工具

一个基于MCP协议的服务器,为AI代理提供直接访问VMware vSphere基础设施的能力,支持虚拟机生命周期、快照、数据存储等55种工具。

  • by 2501-ai
  • TypeScript
  • 本地部署
  • 3 星标
  • 更新于
在 GitHub 查看 2501-ai/vmware-mcp

使用说明

VMWare MCP

一 主控程序 服务器,使AI代理可以直接访问您的VMware vSphere基础架构。建在上面 govc,它暴露了 55种打字工具 涵盖VM生命周期、快照、数据存储、网络等,并随着时间的推移添加其他工具。

工具输出格式为 香椿 用于令牌高效的LLM消费,具有自动JSON回退功能。

可用工具

类别 工具
导航 about, ls, find, tree, events, tasks, logs, logs.ls
VM生命周期 vm.create, vm.clone, vm.instantclone, vm.destroy, vm.register, vm.unregister, vm.upgrade
虚拟机配置 vm.change, vm.customize, vm.info, vm.ip, vm.power, vm.migrate, vm.vnc, vm.question
VM磁盘 vm.disk.create, vm.disk.attach, vm.disk.change, vm.disk.promote
VM网络 vm.network.add, vm.network.change
VM选项和策略 vm.option.info, vm.option.ls, vm.policy.ls, vm.target.info, vm.target.cap.ls, vm.guest.tools
快照 snapshot.create, snapshot.remove, snapshot.export, snapshot.tree
数据存储 datastore.info, datastore.ls, datastore.cp, datastore.mv, datastore.tail, datastore.disk.info, datastore.cluster.info, datastore.cluster.change, datastore.maintenance.enter, datastore.maintenance.exit
会话 session.login, session.logout, session.ls, session.rm
虚拟存储区域网络 vsan.info
任务 task.cancel

加 3元工具: govc_search (对所有命令进行模糊搜索), govc_help (获取任何命令的帮助),以及 govc_run (任何政府指挥部的逃生口)。

首先,复制并填写您的凭据:

cp .env.docker.example .env.docker   # edit with your vCenter URL, username & password

快速入门--短暂

每个连接处都有一个新鲜的容器,完成后取出。

# Docker
docker run --rm -i --env-file .env.docker ghcr.io/2501-ai/vmware-mcp

# Claude Code
claude mcp add vmware-mcp -- docker run --rm -i --env-file .env.docker ghcr.io/2501-ai/vmware-mcp

快速入门——坚持不懈

容器作为长期服务运行。客户端通过以下方式连接 docker exec.

# Docker (once)
docker run -d --name vmware-mcp --restart unless-stopped \
  --env-file .env.docker -e MCP_KEEP_ALIVE=true ghcr.io/2501-ai/vmware-mcp

# Claude Code
claude mcp add vmware-mcp -- docker exec -i vmware-mcp vmware-mcp

运行后重新启动Claude代码 claude mcp add。工具显示为 mcp__vmware-mcp__*.检查状态 /mcp.

快速入门--来源

git clone https://github.com/2501-ai/vmware-mcp.git
cd vmware-mcp
bun install
cp .env.example .env  # fill in your credentials
bun run start          # run the MCP server over stdio

要交互式地探索和测试工具,您可以使用 MCP检查员 相反:

bun run ui

配置

变量 必填 描述
GOVC_URL ✅ vCenter/ESXi SDK URL(例如。 https://vcenter.example.com/sdk)
GOVC_USERNAME ✅ vSphere用户名
GOVC_PASSWORD ✅ vSphere密码
GOVC_INSECURE 设置 1 跳过TLS验证
GOVC_BIN 路径 govc 二进制(默认值: govc)
GOVC_TIMEOUT_MS 子进程超时(毫秒)(默认值: 120000)
MCP_KEEP_ALIVE 设置 true 对于持久容器模式(见上文)

SSH隧道

如果vCenter只能通过内部网络访问:

ssh [-J jump_user@jump_host] -L 8443:vcenter_host:443 user@internal_host -N

然后使用 GOVC_URL=https://localhost:8443/sdk 随着 GOVC_INSECURE=1.


发展

先决条件

脚本

脚本 描述
bun run start 运行MCP服务器(stdio)
bun run dev 跑步 --watch
bun run ui 启动MCP检查器(web UI)
bun run check 生物识别+tsc(CI门)
bun run docker:build 构建Docker镜像(原生arch)
bun run docker:build:ci 构建Docker镜像(linux/amd64)

添加命令

  1. 添加条目到 GOVC_COMMAND_INDEX 在 src/commands.ts.
  2. 添加 GovcToolDef 到 GOVC_TOOL_DEFS 用打字的旗帜。
  3. 发电机会自动给它接线。
  4. bun run check.

许可证

麻省理工学院