Skip to main content
Glama
stufently

Zabbix MCP Server

zabbix_alert_why

Read-onlyIdempotent

Diagnose why a Zabbix notification was missing or delivered by tracing suppression, delivery attempts, trigger actions, media types, severity filters, and active periods.

Instructions

Explain whether an event produced a notification, and what stood in the way.

Walks the whole chain: suppression, delivery attempts and their errors, trigger actions, media types, and each recipient's media severity filter and active period. Any one of those links can drop a notification without recording an error anywhere.

Use when the user asks why an alert did or did not arrive, or why a notification was missing. For the problem itself call zabbix_problem; to turn a pasted notification into identifiers call zabbix_resolve first.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
eventYesevent identifier

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.4.5

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint and destructiveHint=false, so the safety profile is covered. The description adds real context beyond that: it explains this is a diagnostic walk of the full notification chain and warns that any single link can silently drop a notification without recording an error, which sets expectations about why the answer may be inconclusive.

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?

Front-loaded with a one-line purpose, then the investigative scope, then routing guidance. Every sentence carries distinct information — none of it restates the name or the schema.

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?

No output schema exists, so the description has to carry some of that burden, and it does by listing the chain elements it inspects, which implies the structure of the answer. It stops short of describing the response shape or what an inconclusive result looks like, leaving a minor gap.

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?

Only one parameter, 'event', with 100% schema description coverage including an example value. The description adds no syntax, format, or identifier-source detail beyond the schema, so the baseline of 3 is appropriate.

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?

States a specific verb and resource — explaining whether an event produced a notification and what blocked it — and then enumerates the exact chain it walks (suppression, delivery attempts, trigger actions, media types, per-recipient filters). It explicitly differentiates itself from siblings by naming zabbix_problem for the underlying issue and zabbix_resolve for identifier extraction.

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?

Gives an explicit trigger condition: 'Use when the user asks why an alert did or did not arrive, or why a notification was missing.' It also states when NOT to use it, routing to zabbix_problem for the problem itself and zabbix_resolve to convert a pasted notification into identifiers.

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