thruk-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| THRUK_API_KEY | Yes | X-Thruk-Auth-Key header | |
| THRUK_TIMEOUT | No | HTTP timeout in seconds | 30 |
| THRUK_BASE_URL | No | Thruk URL (no trailing slash) | http://localhost/thruk |
| THRUK_AUDIT_LOG | No | Emit one JSON audit line on stderr per write tool invocation | true |
| THRUK_AUTH_USER | No | Impersonation user (superuser key only) | |
| THRUK_READ_ONLY | No | Strip every write tool (ack, downtime, recheck, ...) | false |
| THRUK_VERIFY_SSL | No | Set false for self-signed certs | true |
| THRUK_ENABLED_TOOLS | No | Allowlist of tool names. CSV with fnmatch wildcards. Empty = all | |
| THRUK_MAX_CONCURRENT | No | Cap of concurrent in-flight HTTP requests. 0 = unlimited | 0 |
| THRUK_DEFAULT_BACKENDS | No | CSV of default backend names (federated Thruk) |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| thruk_top_noisy_hostsA | Return the top N hosts ranked by HOST ALERT count over a time window. |
| thruk_top_noisy_servicesB | Return the top N services ranked by SERVICE ALERT count over a time window. |
| thruk_flap_summaryB | Return hosts and services with the most state transitions (flapping) over a time window. |
| thruk_alert_heatmapC | Return alert counts grouped by time bucket over a window. |
| thruk_notification_heatmapB | Return notification counts grouped by time bucket over a window. |
| thruk_recurring_problemsA | Return hosts/services that generated repeated alerts over a time window. |
| thruk_reliability_reportB | Per host/service reliability metrics (MTTR / MTBF / incidents) from the log. |
| thruk_incident_timelineB | Ordered event chronology for a host / service / hostgroup (post-mortem "déroulé"). |
| thruk_state_atB | Reconstruct the parc state at a past instant from |
| thruk_state_diffB | List what changed between two past instants |
| thruk_list_hostsC | List monitored hosts. |
| thruk_get_hostB | Get a single host by name. |
| thruk_list_servicesC | List monitored services. |
| thruk_get_serviceA | Get a single service by host and description. |
| thruk_host_availabilityA | Compute availability (uptime / SLA %) for a host over a configurable time window. |
| thruk_service_availabilityB | Compute availability (uptime / SLA %) for a service over a configurable time window. |
| thruk_hostgroup_availabilityC | Compute availability (uptime / SLA %) for all hosts/services in a hostgroup. |
| thruk_hostgroup_availability_summaryA | Aggregated SLA rollup for a hostgroup — one summary line, not 380 rows. |
| thruk_list_hostgroupsC | List host groups. Default columns return name/alias and host/service counts only. |
| thruk_list_servicegroupsB | List service groups. Default columns return name/alias and counts only. |
| thruk_list_contactsB | List configured Nagios/Naemon contacts (notification targets). |
| thruk_get_contactB | Get a single Nagios/Naemon contact by name. |
| thruk_problemsB | List all current unhandled host/service problems (not acknowledged, not in downtime). |
| thruk_statsC | Aggregated host/service statistics. |
| thruk_totalsA | Compact host+service totals — 16 fields versus ~100 from |
| thruk_list_downtimesC | List scheduled downtimes. |
| thruk_list_commentsB | List comments (acknowledgements appear here too). |
| thruk_sitesA | List configured Thruk backends (sites). |
| thruk_get_downtimeB | Get a single downtime by id. |
| thruk_list_logsB | Query raw Livestatus log entries (/logs). |
| thruk_list_alertsC | List HOST/SERVICE ALERT entries from the log. |
| thruk_list_notificationsC | List notification entries from the log (class=3). |
| thruk_notification_summaryC | Count notifications grouped by a single dimension over a time window. |
| thruk_recent_eventsC | Return the most recent monitoring events from the last N hours (default 1 h). |
| thruk_queryA | Escape hatch: call any Thruk REST endpoint. |
| thruk_run_background_queryC | Run a potentially long Thruk REST request via the |
| thruk_schedule_downtimeC | Schedule a host or service downtime (times accept 'now', relative '+2h'/'+30m', or ISO 8601). |
| thruk_schedule_host_services_downtimeB | Schedule a downtime on ALL services of the given host (not the host object itself). |
| thruk_schedule_propagated_host_downtimeC | Schedule a downtime on a host and propagate to all child hosts. |
| thruk_schedule_hostgroup_downtimeC | Schedule a downtime on every host or service of a hostgroup. |
| thruk_schedule_servicegroup_downtimeC | Schedule a downtime on a servicegroup's services or owning hosts. |
| thruk_delete_downtimeC | Delete a host or service downtime by its id. |
| thruk_delete_active_downtimesA | Remove ALL currently active downtimes for a host (or one specific service). |
| thruk_delete_downtimes_by_filterB | Bulk-delete downtimes matching arbitrary filters. |
| thruk_acknowledgeC | Acknowledge a host or service problem. |
| thruk_bulk_acknowledgeB | Acknowledge every unhandled problem matching the given filters in one call. |
| thruk_add_commentC | Add a free-form operator comment on a host or service. |
| thruk_delete_commentB | Delete a host or service comment by its id. |
| thruk_remove_acknowledgementC | Remove an acknowledgement. |
| thruk_recheckC | Schedule an immediate (re)check for a host or service. |
| thruk_checksC | Enable or disable active checks for a host or service. |
| thruk_notificationsC | Enable or disable notifications for a host or service. |
| thruk_oldest_problemsB | Unhandled problems sorted by age (oldest first). |
| thruk_unacked_criticalA | CRITICAL services and DOWN hosts not acknowledged for more than N minutes. |
| thruk_stale_acksC | Acknowledgements older than N days (potentially forgotten ones). |
| thruk_problem_countsB | Flat aggregate of unhealthy-state counts across hosts and services. |
| thruk_concurrent_failuresB | Detect time windows where multiple hosts failed concurrently. |
| thruk_stale_checksC | Surface checks that stopped running (the dangerous "false green"). |
| thruk_worker_healthC | Distinguish a real outage from a mod-gearman supervision blind spot. |
| thruk_root_causeB | Collapse a DOWN/UNREACHABLE storm into its root cause(s) via parent topology. |
| thruk_unreachable_vs_downB | Split a host outage window into DOWN (cause) vs UNREACHABLE (consequence). |
| thruk_backend_healthC | Per-site supervision-backend health: latency, replication lag, blind spots. |
| thruk_get_perfdataB | Fetch and parse performance data for a single host or service. |
| thruk_perfdata_snapshotC | Parsed performance data for every service matching |
| thruk_perfdata_near_thresholdC | Metrics within |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| investigate_alert | Investigate a current alert on a host or service |
| schedule_maintenance | Schedule maintenance downtime for a target |
| diagnose_flapping | Diagnose a flapping service |
| daily_health_report | Morning health digest for the estate or a hostgroup |
| incident_triage | Prioritise and find the common cause during a major incident |
| capacity_review | Surface metrics approaching their warn/crit thresholds |
| sla_report | Availability / SLA report for a host, service or hostgroup |
| noise_review | Monitoring-noise hygiene review to reduce alert fatigue |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| Current unhandled problems | |
| Aggregated host/service stats |
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/k9fr4n/thruk-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server