Skip to main content
Glama

investigate_alert

Read-onlyIdempotent

Resolve an Aria alert to its affected resource in one call: fetch the alert, correlate its resource UUID, confirm the resource name and kind, and suggest the next monitoring step.

Instructions

[READ] Resolve one alert to its affected resource in a single call — use this instead of chaining get_alert then get_resource by hand.

Does the whole alert-to-object correlation server-side: fetches the alert, reads its resourceId, fetches that resource, and confirms the resource name and kind before suggesting anything downstream.

Returns five always-present keys: alert (Aria's values verbatim, with its contributing symptoms named as in get_alert, including the object each is on and get_alert's GET /symptoms cost — check each symptom's definition_lookup and symptom_definitions_note), resource (or null), correlation (both UUIDs labelled, plus confirmed name, kind and a confirmed flag), next_step (which vmware-monitor tool to call next, or null; for a "not receiving data" alert, the list_resources call that names the objects that stopped reporting), and warnings (empty on success).

Gotchas: alert_id is the alert UUID from list_alerts, NOT the resource UUID — mixing them up is the most common error here; the correlation block labels each. An unresolvable resource degrades to a warning plus nulls rather than an error, so the alert is never lost. Never match the resource against vCenter inventory unless correlation.confirmed is true.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "alert_id": "<alert_id>"
    },
    "name": "investigate_alert"
  }
}

Input Schema

NameRequiredDescriptionDefault
targetNoAria target name from config; default when omitted.
alert_idYesThe alert UUID from list_alerts (not the resource UUID).

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed3 schema fields changedv1.10.0
    • addedInput schema / additionalProperties
      Added value: +false
    • addedInput schema / properties / alert_id / description
      Added value: +"The alert UUID from list_alerts (not the resource UUID)."
    • addedInput schema / properties / target / description
      Added value: +"Aria target name from config; default when omitted."
  2. Addedv1.8.9

TDQS

A4.6/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the read-only and idempotent annotations, the description discloses server-side correlation behavior, the five always-present return keys, failure degradation to warnings plus nulls, and the critical caveat about correlation.confirmed. These are substantial behavioral details not covered by annotations or an output schema.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is front-loaded with the core action and alternative, then moves through return shape, gotchas, and safety condition in a logical sequence. It is dense and slightly long, but for a correlation tool with no output schema most sentences carry useful operational detail.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema exists, yet the description fully explains the return contract: five always-present keys, nullable resource, confirmed flag, next_step, and warnings behavior. Combined with the gotchas, it gives enough context to call and interpret the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the schema already documents both parameters. The description reinforces the alert_id vs resource UUID distinction, but it largely repeats the schema description for alert_id and does not add meaning for target.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description starts with a specific verb and resource: resolve one alert to its affected resource in a single call. It explicitly distinguishes this tool from the sibling chain of get_alert then get_resource, so an agent can select it without opening the schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It explicitly says to use this instead of chaining get_alert then get_resource, and it names the downstream condition tied to next_step. The gotchas also specify when not to trust the result for vCenter inventory unless correlation.confirmed is true, which is a clear usage boundary.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.