Skip to main content
Glama
magicsword-io

magicsword-mcp

Official

Triage a single MagicSword alert

triage_alert
Destructive

Fetch an alert by UUID to review severity, endpoint, MITRE mapping, triggering events, file context, and metadata, then optionally acknowledge or dismiss it for analyst triage.

Instructions

Fetches one alert directly by id and returns its severity, endpoint, MITRE mapping, triggering events, file context, and metadata for analyst review. Optionally acknowledges or dismisses it.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
ackNoIf true, mark the alert acknowledged. Requires alerts:write.
dismissNoIf true, dismiss the alert instead of acknowledging it. Requires alerts:write.
alert_idYesThe alert UUID (returned from find_alerts)
ack_commentNoComment to record on acknowledgement (only meaningful with ack: true)
dismiss_reasonNoReason to record when dismissing the alert

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.1

TDQS

A3.8/5.0
Behavior4/5

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

Annotations declare readOnlyHint=false and destructiveHint=true unconditionally, which would suggest an always-destructive write tool; the description usefully clarifies that the base operation is a fetch and that ack/dismiss are opt-in additions. It does not, however, state what dismissing actually does (reversibility, permanence) or that the operation is non-idempotent, which the annotations only imply.

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

Conciseness5/5

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

Two sentences with no filler; the primary read behavior and its return fields are front-loaded, and the optional mutation is mentioned last. Every clause carries information.

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

Completeness4/5

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

With no output schema, the description correctly carries the return-value burden by enumerating severity, endpoint, MITRE mapping, triggering events, file context and metadata. Parameter semantics and permissions are fully covered by the schema, so the only remaining gap is behavioral detail about the destructive dismiss path, which annotations partly cover.

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 description coverage is 100% and every parameter (alert_id, ack, dismiss, ack_comment, dismiss_reason) is documented in the schema, including the alerts:write permission requirement. The description only restates id-based lookup and the optional ack/dismiss pair, adding no syntax or constraint detail beyond the schema — the expected baseline of 3.

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

Purpose4/5

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

States a specific verb and resource ('Fetches one alert... returns its severity, endpoint, MITRE mapping...') and lists the payload, so the agent knows exactly what the tool does. 'Directly by id' implicitly separates it from the sibling find_alerts, but the sibling is never named, so differentiation is left to inference.

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

Usage Guidelines3/5

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

Usage is implied rather than stated: use this when you already hold an alert id ('directly by id') for analyst review, and the ack/dismiss flags are described as optional. There is no explicit guidance on when to acknowledge versus dismiss, nor a named alternative for the case where no id is known.

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