maintenance_windows_list
Lists maintenance windows — the suppression schedules that gate alert dispatch. Use when a user asks 'why didn't this page me' or 'is this device under maintenance right now' — a quiet alert may be inside a window rather than truly silent.
Two modes:
Global catalog (default): wraps GET /api/alerts/maintenance-windows. Returns every window with its schedule fields.
Per-legacy-alert: pass
alert_idto wrap GET /api/alerts/legacy/{id}/maintenance-windows, returning only the windows attached to that legacy alert handler.
Per CLAUDE.md, modern alerts (class=syslog_log/event_log/eve_log) attach windows through alert_routing_rules, not directly — the per-alert path is legacy-only by route constraint. If you need to inspect modern-alert suppression, look at the routing rule attached to the rule, not the alert.
Each row carries: id, label, recurrence_unit (day|week|month|dawom), schedule_hour, schedule_dow (0=Sun..6=Sat), schedule_day_of_month, schedule_month, duration_minutes, plus a human-readable description (e.g. 'Weekly on Tue at 14:00 UTC for 60 min') so the LLM doesn't reinterpret the cron-style fields.
Note: this tool does NOT compute whether a window is active right now — that depends on the server's local clock and the interpretation of dawom rules. The LLM should use the description + duration to reason about it. If you need a reliable yes/no, ask alertmond directly via its IPC (out of scope for mcpmond).
Permission: alerts. Examples: maintenance_windows_list({}) // global catalog maintenance_windows_list({alert_id: 17}) // legacy alert 17 only
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| alert_id | No | If set, switches to per-legacy-alert mode (alert_handlers.id). Modern alerts use routing rules instead. |