
VMware Aria Operations
io.github.zw008由 GitHub 账号 zw008 发布v1.8.8更新于 Oct 24, 2026
VMware Aria Operations: metrics, alerts, capacity, anomaly detection — 18 MCP tools.
概览
面向 VMware Aria Operations(VCF Operations)的 MCP 服务器,让助手读取指标、告警、容量与健康状态,并执行少量受保护的写操作。
- 可以做什么
- 列出资源并读取其指标、健康徽章、资源占用前列、指标键、属性与关联关系
- 列出、查看并追查告警,读取告警定义与建议,确认或取消告警,添加备注
- 读取容量总览、剩余容量、预计耗尽时间与规格优化建议
- 列出异常与风险徽章,检查平台健康、收集器组、节点内存/交换/堆以及适配器采集状态
- 生成、列出、获取与删除报表,开始或结束资源维护
- 查询集群证书、密码账户、VCF 域、诊断发现与实时 PromQL,并可检索只读 API 索引
- 适用场景
- 适合让 AI 助手用自然语言回答 VMware Aria Operations 环境的问题:当前 CPU 或内存占用最高的对象、严重告警、容量耗尽预测、资源超配的虚拟机、异常或平台健康状况。也适合确认告警、将主机置入维护等日常运维操作。
- 运行要求
- 以 Python 包形式通过 uv 或 pip 安装在本地,作为 stdio 进程运行。需要能通过 HTTPS 访问 Aria Operations 主机,需要包含目标主机、用户名、端口与认证源的配置文件,账户密码通过环境变量或 .env 文件提供。使用私有 CA 时可能需要设置 SSL_CERT_FILE。
安装
在 SourceWeft 中
- 打开 控制台中的 VMware Aria Operations,将其添加到工作区。
- 为需要使用其工具的对话启用该服务。
Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。
其他 MCP 客户端
参照 仓库 中的启动说明。
README
VMware Aria Operations MCP Skill
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.
Note: In VCF 9.0 and later, VMware Aria Operations has been rebranded as VCF Operations. This skill works against both names — the
/suite-api/REST endpoints are unchanged.
Author: Wei Zhou, VMware by Broadcom — [email protected] This is a community-driven project by a VMware engineer, not an official VMware product. For official VMware developer tools see developer.broadcom.com.
AI-assisted monitoring and capacity planning for VMware Aria Operations (vRealize Operations) via the Model Context Protocol (MCP).
Upgrading to 2.0
2.0 renames 4 of its MCP tools so every name starts with a verb (e.g. findings_list → list_findings, fleet_certificate_list → list_fleet_certificates, fleet_domain_list → list_fleet_domains). The full old → new table is in
RELEASE_NOTES.md. Nothing else changes: same tools, parameters,
safety gates and CLI commands. If an agent prompt, script or ~/.vmware/rules.yaml names a tool, update it — though deny
rules written with the old names keep working with vmware-policy ≥ 1.18 (vmware-audit policy lists any rule the
renames widened), and vmware-pilot ≥ 1.13 translates old names in saved workflows.
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.
Overview
vmware-aria exposes 46 MCP tools for interacting with Aria Operations through natural language AI agents (Claude Code, Cursor, Goose, etc.):
Total: 46 tools — 36 read-only, 10 write
Quick Start
Offline / Air-Gapped Install (from source)
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:
For a truly air-gapped host, build the wheels on a connected machine and copy them over — the target then needs no network:
CLI Examples
MCP Setup (Claude Code)
After uv tool install vmware-aria, add to ~/.claude.json:
v1.5.15+ uses the single-command form
vmware-aria mcp. The legacyvmware-aria-mcpconsole script is still kept for backward compatibility. If you must useuvx --from vmware-aria vmware-aria mcp(no install) and hitinvalid peer certificate: UnknownIssuerbehind a corporate TLS proxy, setUV_NATIVE_TLS=trueor use the recommendedvmware-aria mcpform above.
Then use natural language:
- "Show me the top 10 CPU consumers right now"
- "List all CRITICAL alerts and acknowledge them"
- "How long until the prod cluster runs out of memory?"
- "Which VMs are over-provisioned? Show rightsizing recommendations"
- "Are there any anomalies on vm-web-01?"
Authentication
Aria Operations uses vRealizeOpsToken authentication:
Tokens have a 6-hour sliding validity (extended on each call, per the official spec); the client re-acquires automatically 60 seconds before expiry. The validity field is the expiry timestamp in epoch milliseconds, not a duration.
Architecture
Companion Skills
Security
- Passwords loaded from env vars or
.envfile, never fromconfig.yaml - Every MCP tool call and every CLI command that reaches Aria audit-logged to
~/.vmware/audit.db(via vmware-policy); CLI write operations (alert acknowledge/cancel, alert notes, alert definition management, report generate/delete, resource maintenance start/end) also append to~/.vmware-aria/audit.log - API responses sanitized (control chars stripped, 500-char limit) to prevent prompt injection
- MCP destructive writes (alert acknowledge/cancel, alert definition and report delete, maintenance start/end) take
confirm(defaultfalse): withoutconfirm=truethey return ablast_radiusof what would change and change nothing;confirm=trueis refused on a blocker (e.g. a resource already in maintenance) or an unreadable field. The oldconfirmedalias was removed in 2.4.2; a call that passes it is refused as an unknown argument - TLS verification is on by default; for a private CA set
SSL_CERT_FILEto a bundle with your CA (see setup guide).verify_ssl: falseis for isolated self-signed labs only
Official Broadcom References
- REST APIs: https://developer.broadcom.com/xapis — VCF Operations API (formerly Aria Operations suite-api)
- SDKs: https://developer.broadcom.com/sdks — VCF Python SDK
- CLI Tools: https://developer.broadcom.com/tools — PowerCLI 9.1 includes "VCF Operations (formerly vRealize Operations Manager)" cmdlets
Remote access (HTTPS) and limiting tools
By default vmware-aria mcp speaks stdio to one local client and offers every tool. Two options change that
(vmware-policy ≥ 1.21.0).
Serve over HTTPS so clients on other machines can connect. Every caller needs a bearer token:
Connect a client (Claude Code shown; any MCP client that supports streamable HTTP and custom headers works):
- The server will not start without a token, refuses Host/Origin values outside
--public-name, and checks before it binds that unauthenticated requests get 401. Use a certificate your clients trust for those names. - Behind a TLS-terminating reverse proxy on the same machine use
--transport http --host 127.0.0.1 --public-name mcp.example.comand pass theAuthorizationheader through. - Behind a load balancer or gateway on another machine, keep
--transport https(a self-signed certificate is fine), list in--public-namethe host name the balancer sends asHost, and have it forwardAuthorization. Its health probe can useGET /healthz, which needs no token and returns only{"status": "ok"}(vmware-policy ≥ 1.23.0). - Send
traceparentorX-Request-IDwith each request to have it stored on the audit row;vmware-audit log --correlation-id IDthen finds the calls behind one platform request. - The audit log records each caller as
token:<name>. Calls run side by side: each holds its own session to a target, up toVMWARE_MCP_POOL_SIZE(default 2) sessions per target. Each session is a login on the target; a call waits at most 300 s for a free one. - Everyone who can reach the endpoint acts with this server's account. Tokens identify callers; they grant nothing on the platform. Run one endpoint per privilege level.
- Several people or roles on one endpoint: run
vmware-audit roles enableonce, then give each token a role (vmware-audit token create NAME --role reader, or a role inroles.yamlnaming tools and targets; vmware-policy ≥ 1.24.0). A role limits what the token may call on this endpoint; it cannot grant more than the account has. See vmware-policy's README, "Roles for network callers".
Offer only read tools, plus the writes you choose:
Tools not offered do not appear in the client's tool list. A bad value or an unknown write tool stops the server (exit 2). This limits what clients are offered; it is not authorization, so the account itself should be least-privilege.
Details: skills/vmware-aria/references/setup-guide.md ("Serving MCP over HTTPS", "Limiting which tools are offered").
License
MIT — see LICENSE
来源:README.md,提交 a920f29
工具
0版本历史
1- v1.8.8最新Sep 16, 2026
评分
已满足适用检查项的 40%
该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。
- 近 30 天内可连通25 分
请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。
- 已声明认证方式10 分
请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。
- 已列出工具15 分
请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。
- 描述必需15 分
- 图标10 分
- 文档15 分
- 许可证10 分
请在仓库或注册中心条目中声明许可证。