{
  "markdown": "<!-- mcp-name: io.github.vmware-skills/vmware-aria -->\n# VMware Aria Operations MCP Skill\n\n> **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.\n\n> **Author**: Wei Zhou, VMware by Broadcom — wei-wz.zhou@broadcom.com\n> This is a community-driven project by a VMware engineer, not an official VMware product.\n> For official VMware developer tools see [developer.broadcom.com](https://developer.broadcom.com).\n\nAI-assisted monitoring and capacity planning for VMware Aria Operations (vRealize Operations) via the Model Context Protocol (MCP).\n\n[![Python 3.10+](https://img.shields.io/badge/python-3.10+-blue.svg)](https://www.python.org/downloads/)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n\n## Overview\n\n`vmware-aria` exposes 33 MCP tools for interacting with Aria Operations through natural language AI agents (Claude Code, Cursor, Goose, etc.):\n\n| Category | Tools | Type |\n|----------|-------|------|\n| **Resources** | list, get, metrics, health badge, top consumers | Read-only (5) |\n| **Alerts** | list, get, investigate (alert→resource), acknowledge, cancel, definitions | Read + 2 Write (6) |\n| **Alert Definitions** | symptom definitions, create, enable/disable, delete | Read + 3 Write (4) |\n| **Capacity** | overview, remaining, time-remaining, rightsizing | Read-only (4) |\n| **Reports** | definitions, generate, list, get, delete | Read + 2 Write (5) |\n| **Anomaly** | list anomalies, risk badge | Read-only (2) |\n| **Health** | platform health, collector groups | Read-only (2) |\n\n**Total**: 28 tools — 21 read-only, 7 write\n\n## Quick Start\n\n```bash\n# Install\nuv tool install vmware-aria\n\n# Configure\nmkdir -p ~/.vmware-aria\ncat > ~/.vmware-aria/config.yaml << 'EOF'\ntargets:\n  prod:\n    host: aria-ops.example.com\n    username: admin\n    port: 443\n    verify_ssl: true\n    auth_source: LOCAL\ndefault_target: prod\nEOF\n\n# Set password (never in config.yaml)\necho \"VMWARE_ARIA_PROD_PASSWORD=your_password\" > ~/.vmware-aria/.env\nchmod 600 ~/.vmware-aria/.env\n\n# Verify setup\nvmware-aria doctor\n```\n\n### Offline / Air-Gapped Install (from source)\n\nThis project uses the modern PEP 517 build system (hatchling), so there is **no\n`setup.py`** by design — that is expected, not a missing file. If you cloned the\nsource and hit `ERROR: File \"setup.py\" or \"setup.cfg\" not found ... editable mode\ncurrently requires a setuptools-based build`, your `pip` is older than 21.3 and\ncannot do an *editable* (`-e`) install with a non-setuptools backend. Editable\nmode is a developer convenience, not needed to run the tool — do one of:\n\n```bash\n# From the source tree — a normal (non-editable) install builds a wheel:\npip install .              # NOT  pip install -e .\n\n# ...or upgrade pip first, and editable works too:\npip install --upgrade pip && pip install -e .\n```\n\nFor a **truly air-gapped host**, build the wheels on a connected machine and copy\nthem over — the target then needs no network:\n\n```bash\n# On a connected machine, collect this package + its dependencies as wheels:\npip wheel . -w dist        # → dist/*.whl   (or: uv build, for just this package)\n\n# Copy dist/ to the air-gapped host, then install offline:\npip install --no-index --find-links dist vmware-aria\n```\n\n## CLI Examples\n\n```bash\n# List top CPU consumers\nvmware-aria resource top --metric cpu|usage_average --top 10\n\n# Check active CRITICAL alerts\nvmware-aria alert list --criticality CRITICAL\n\n# Acknowledge an alert\nvmware-aria alert acknowledge <alert-id>\n\n# Fetch 4-hour CPU + memory metrics for a VM\nvmware-aria resource metrics <vm-id> --metrics cpu|usage_average,mem|usage_average --hours 4\n\n# Check cluster capacity\nvmware-aria capacity remaining <cluster-id>\nvmware-aria capacity time-remaining <cluster-id>\n\n# Find rightsizing opportunities\nvmware-aria capacity rightsizing\n\n# Check Aria platform health\nvmware-aria health status\nvmware-aria health collectors\n```\n\n## MCP Setup (Claude Code)\n\nAfter `uv tool install vmware-aria`, add to `~/.claude.json`:\n\n```json\n{\n  \"mcpServers\": {\n    \"vmware-aria\": {\n      \"command\": \"vmware-aria\",\n      \"args\": [\"mcp\"],\n      \"env\": {\n        \"VMWARE_ARIA_CONFIG\": \"~/.vmware-aria/config.yaml\"\n      }\n    }\n  }\n}\n```\n\n> **v1.5.15+** uses the single-command form `vmware-aria mcp`. The legacy\n> `vmware-aria-mcp` console script is still kept for backward compatibility.\n> If you must use `uvx --from vmware-aria vmware-aria mcp` (no install) and hit\n> `invalid peer certificate: UnknownIssuer` behind a corporate TLS proxy, set\n> `UV_NATIVE_TLS=true` or use the recommended `vmware-aria mcp` form above.\n\nThen use natural language:\n- *\"Show me the top 10 CPU consumers right now\"*\n- *\"List all CRITICAL alerts and acknowledge them\"*\n- *\"How long until the prod cluster runs out of memory?\"*\n- *\"Which VMs are over-provisioned? Show rightsizing recommendations\"*\n- *\"Are there any anomalies on vm-web-01?\"*\n\n## Authentication\n\nAria Operations uses **vRealizeOpsToken** authentication:\n\n```\nPOST /suite-api/api/auth/token/acquire\n{\"username\": \"admin\", \"password\": \"...\", \"authSource\": \"LOCAL\"}\n→ {\"token\": \"abc123\", \"validity\": 1765182896000}  # validity = expiry epoch ms\n\nSubsequent requests: Authorization: vRealizeOpsToken abc123\n```\n\nTokens 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.\n\n## Architecture\n\n```\nUser (natural language)\n  ↓\nAI Agent (Claude Code / Goose / Cursor)\n  ↓  [reads SKILL.md]\nvmware-aria MCP server (stdio transport)\n  ↓  [HTTPS + vRealizeOpsToken]\nAria Operations Suite API\n  ↓\nVMs / Hosts / Clusters / Alerts / Capacity\n```\n\n### Companion Skills\n\n| Skill | Scope | Tools | Install |\n|-------|-------|:-----:|---------|\n| **[vmware-aiops](https://github.com/vmware-skills/VMware-AIops)** ⭐ entry point | VM lifecycle, deployment, guest ops, clusters | 49 | `uv tool install vmware-aiops` |\n| **[vmware-monitor](https://github.com/vmware-skills/VMware-Monitor)** | Read-only monitoring, alarms, events, VM info | 27 | `uv tool install vmware-monitor` |\n| **[vmware-nsx](https://github.com/vmware-skills/VMware-NSX)** | NSX networking: segments, gateways, NAT, IPAM | 33 | `uv tool install vmware-nsx-mgmt` |\n| **[vmware-nsx-security](https://github.com/vmware-skills/VMware-NSX-Security)** | DFW microsegmentation, security groups, Traceflow | 21 | `uv tool install vmware-nsx-security` |\n| **[vmware-avi](https://github.com/vmware-skills/VMware-AVI)** | AVI / NSX ALB load balancing, AKO K8s operations | 28 | `uv tool install vmware-avi` |\n| **[vmware-storage](https://github.com/vmware-skills/VMware-Storage)** | Datastores, iSCSI, vSAN | 11 | `uv tool install vmware-storage` |\n| **[vmware-vks](https://github.com/vmware-skills/VMware-VKS)** | Tanzu Namespaces, TKC cluster lifecycle | 20 | `uv tool install vmware-vks` |\n| **[vmware-harden](https://github.com/vmware-skills/VMware-Harden)** | Compliance baselines, drift detection | 6 | `uv tool install vmware-harden` |\n\n## Security\n\n- Passwords loaded from env vars or `.env` file, never from `config.yaml`\n- Write operations (alert acknowledge/cancel, alert definition management, report generate/delete) audit-logged to `~/.vmware/audit.db` (MCP, via vmware-policy) and `~/.vmware-aria/audit.log` (CLI)\n- API responses sanitized (control chars stripped, 500-char limit) to prevent prompt injection\n- Supports self-signed certificates (`verify_ssl: false`) for lab environments\n\n#### Official Broadcom References\n\n- **REST APIs**: <https://developer.broadcom.com/xapis> — VCF Operations API (formerly Aria Operations suite-api)\n- **SDKs**: <https://developer.broadcom.com/sdks> — VCF Python SDK\n- **CLI Tools**: <https://developer.broadcom.com/tools> — PowerCLI 9.1 includes \"VCF Operations (formerly vRealize Operations Manager)\" cmdlets\n\n## License\n\nMIT — see [LICENSE](LICENSE)\n",
  "bytes": 8071,
  "sha": "e84a0470e9bc79bb2635ae7145e3e70853ab5081d9e4b093c34ee41e6a000671",
  "repo_slug": "vmware-skills/vmware-aria",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_io_github_vmware_skills_vmware_aria_7d63a23e/readme"
}