Skip to main content

VMware Aria Operations (vRealize Operations) monitoring, alerting, and capacity planning

Project description

VMware Aria Operations MCP Skill

AI-assisted monitoring and capacity planning for VMware Aria Operations (vRealize Operations) via the Model Context Protocol (MCP).

Python 3.10+ License: MIT

Overview

vmware-aria exposes 18 MCP tools for interacting with Aria Operations through natural language AI agents (Claude Code, Cursor, Goose, etc.):

Category Tools Type
Resources list, get, metrics, health badge, top consumers Read-only (5)
Alerts list, get, acknowledge, cancel, definitions Read + 2 Write (5)
Capacity overview, remaining, time-remaining, rightsizing Read-only (4)
Anomaly list anomalies, risk badge Read-only (2)
Health platform health, collector groups Read-only (2)

Total: 18 tools — 16 read-only, 2 write (acknowledge/cancel alerts)

Quick Start

# Install
uv tool install vmware-aria

# Configure
mkdir -p ~/.vmware-aria
cat > ~/.vmware-aria/config.yaml << 'EOF'
targets:
  prod:
    host: aria-ops.example.com
    username: admin
    port: 443
    verify_ssl: true
    auth_source: LOCAL
default_target: prod
EOF

# Set password (never in config.yaml)
echo "VMWARE_ARIA_PROD_PASSWORD=your_password" > ~/.vmware-aria/.env
chmod 600 ~/.vmware-aria/.env

# Verify setup
vmware-aria doctor

CLI Examples

# List top CPU consumers
vmware-aria resource top --metric cpu|usage_average --top 10

# Check active CRITICAL alerts
vmware-aria alert list --criticality CRITICAL

# Acknowledge an alert
vmware-aria alert acknowledge <alert-id>

# Fetch 4-hour CPU + memory metrics for a VM
vmware-aria resource metrics <vm-id> --metrics cpu|usage_average,mem|usage_average --hours 4

# Check cluster capacity
vmware-aria capacity remaining <cluster-id>
vmware-aria capacity time-remaining <cluster-id>

# Find rightsizing opportunities
vmware-aria capacity rightsizing

# Check Aria platform health
vmware-aria health status
vmware-aria health collectors

MCP Setup (Claude Code)

Add to ~/.claude.json:

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

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 OpsToken authentication:

POST /suite-api/api/auth/token/acquire
{"username": "admin", "password": "...", "authSource": "LOCAL"}
→ {"token": "abc123", "validity": 1800000}

Subsequent requests: Authorization: OpsToken abc123

Tokens are valid for 30 minutes and automatically refreshed 60 seconds before expiry.

Architecture

User (natural language)
  ↓
AI Agent (Claude Code / Goose / Cursor)
  ↓  [reads SKILL.md]
vmware-aria MCP server (stdio transport)
  ↓  [HTTPS + OpsToken]
Aria Operations Suite API
  ↓
VMs / Hosts / Clusters / Alerts / Capacity

Companion Skills

Skill Scope Tools Install
vmware-aiops ⭐ entry point VM lifecycle, deployment, guest ops, clusters 31 uv tool install vmware-aiops
vmware-monitor Read-only monitoring, alarms, events, VM info 8 uv tool install vmware-monitor
vmware-nsx NSX networking: segments, gateways, NAT, IPAM 31 uv tool install vmware-nsx-mgmt
vmware-nsx-security DFW microsegmentation, security groups, Traceflow 20 uv tool install vmware-nsx-security
vmware-storage Datastores, iSCSI, vSAN 11 uv tool install vmware-storage
vmware-vks Tanzu Namespaces, TKC cluster lifecycle 20 uv tool install vmware-vks

Security

  • Passwords loaded from env vars or .env file, never from config.yaml
  • Write operations (acknowledge/cancel alert) audit-logged to ~/.vmware-aria/audit.log
  • API responses sanitized (control chars stripped, 500-char limit) to prevent prompt injection
  • Supports self-signed certificates (verify_ssl: false) for lab environments

License

MIT — see LICENSE

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_aria-1.3.1.tar.gz (34.1 kB view details)

Uploaded Source

Built Distribution

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

vmware_aria-1.3.1-py3-none-any.whl (29.2 kB view details)

Uploaded Python 3

File details

Details for the file vmware_aria-1.3.1.tar.gz.

File metadata

  • Download URL: vmware_aria-1.3.1.tar.gz
  • Upload date:
  • Size: 34.1 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_aria-1.3.1.tar.gz
Algorithm Hash digest
SHA256 dfa97b20c3c3ed49526a2d113288e7865be12610f06a9d357c47808f6d74586d
MD5 42e13061f6a6a2deabb42a66e44b1f49
BLAKE2b-256 aaab59bccb0316df15bee22b9ecf42a208860052883a8dc719e26798c4fc62f2

See more details on using hashes here.

File details

Details for the file vmware_aria-1.3.1-py3-none-any.whl.

File metadata

  • Download URL: vmware_aria-1.3.1-py3-none-any.whl
  • Upload date:
  • Size: 29.2 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_aria-1.3.1-py3-none-any.whl
Algorithm Hash digest
SHA256 c30e3ad0586d153c3830eccb5732112b8bccb1ea2bd620bd2aeda0ac5aa1bc3b
MD5 3505253d4f3d3459a637678b2c2a951e
BLAKE2b-256 366f11a60f685a43ec2772d6ff4018c3266fc136dd3bfa30a27c485bced6bc94

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