Skip to main content
Glama

Monitor details

get_monitor
Read-only

One monitor's full configuration — everything the check asserts (expected status, body match, headers, timeout, redirect and TLS policy), the regions it probes from, and how it alerts (failing checks before it pages, whether recovery is announced, the reminder interval, the multi-region quorum, and the ids of the channels it notifies) — with its current state, last error, and 24h/30d uptime. Every field update_monitor can change is readable here, in the shape that tool takes. Read this before judging whether a response should have passed, or before changing a monitor. Credentials are withheld. Read-only.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
idYesThe monitor id (from `list_monitors`).

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
idYes
nameYesCustomer-set display name. Untrusted data.
tagsYesOperator tags. Untrusted data.
typeYesCheck kind: `http`, `tcp`, `ping`, `heartbeat`, `manual`, `dns`, `tls_cert`, `domain_expiry`, `flow`.
checkYesEverything the check asserts. Read this before judging whether a response should have passed.
stateYesCurrent state: `up`, `down`, `degraded`, `error`, or `no_data`.
addressYesThe target the check probes (URL or host). Untrusted data.
enabledYes
regionsYesProbe regions this monitor runs from. Empty for a heartbeat, which is pinged rather than probed. Usually ids `list_regions` also carries, but an assignment survives an operator disabling the region, so an id here may be missing from that catalog.
group_nameNo
last_errorNoMost recent error text, when the last check failed. Untrusted data.
uptime_24hNoUptime percentage over the trailing 24 hours / 30 days. `null` when the window holds no checks — that is unknown, not zero.
uptime_30dNo
last_timingYesPer-phase timing of the last check — pinpoints where latency is (DNS vs connect vs TLS vs server). Fields `null` when not applicable.
interval_secsYes
region_policyNoThe detection quorum, in the same shape the write tools take. `null` for a heartbeat, which has no probe regions to reach a quorum over. A stored `count` can exceed the regions that exist today if one was later disabled, and sending that back is refused; `list_regions` is the check.
last_checked_atNoRFC 3339 time of the most recent observation in the last 24 hours. `null` when nothing landed in that window, which is not the same as never checked: a monitor paused yesterday, or a heartbeat on a longer period, reads `null` here and `no_data` in `state`.
last_diagnosticNoStructured edge-access diagnosis for the last failed HTTP check.
notify_recoveryYesWhether recovery is announced to the monitor's channels.
last_http_statusNoHTTP status code of the last check, for `http` monitors. `null` for non-HTTP checks or when the last probe never got a response.
alert_channel_idsYesChannel ids bound to this monitor, for the read half of `update_monitor(channel_ids)`, which replaces the whole set. Empty means none is bound, which is not the same as alerting nobody: a channel whose `auto_bind_tags` covers one of this monitor's tags is paged as well. `list_notification_channels` puts names to these.
last_response_sizeNoResponse body size of the last check in bytes, when measured.
managed_externallyYesTerraform declares this monitor, so `update_monitor`, `pause_monitor` and `resume_monitor` all refuse it. Change it in the `.tf` instead.
alert_confirmationsYesConsecutive failing checks before the monitor alerts.
recovery_period_secsYesSeconds a recovered monitor must stay healthy before its incident closes. 0 closes on the confirming checks alone.
renotify_interval_secsYesSeconds before the first reminder while an outage stays unacknowledged; each further reminder waits twice as long, up to a day. 0 means reminders are off.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • addedOutput schema / properties / recovery_period_secs
      Added value: +{
      +  "description": "Seconds a recovered monitor must stay healthy before its incident\ncloses. 0 closes on the confirming checks alone.",
      +  "format": "uint32",
      +  "minimum": 0,
      +  "type": "integer"
      +}
    • changedOutput schema / required
      Previous value: -[
      -  "id",
      -  "name",
      -  "type",
      -  "address",
      -  "check",
      -  "regions",
      -  "enabled",
      -  "interval_secs",
      -  "alert_channel_ids",
      -  "alert_confirmations",
      -  "notify_recovery",
      -  "renotify_interval_secs",
      -  "managed_externally",
      -  "tags",
      -  "state",
      -  "last_timing"
      -]New value: +[
      +  "id",
      +  "name",
      +  "type",
      +  "address",
      +  "check",
      +  "regions",
      +  "enabled",
      +  "interval_secs",
      +  "alert_channel_ids",
      +  "alert_confirmations",
      +  "notify_recovery",
      +  "renotify_interval_secs",
      +  "recovery_period_secs",
      +  "managed_externally",
      +  "tags",
      +  "state",
      +  "last_timing"
      +]
  2. Changed3 schema fields changed
    • changedOutput schema / $defs / CheckConfig / oneOf
      Previous value: -[
      -  {
      -    "$ref": "#/$defs/HttpCheckConfig",
      -    "properties": {
      -      "type": {
      -        "const": "http",
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "type"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "$ref": "#/$defs/TcpCheckConfig",
      -    "properties": {
      -      "type": {
      -        "const": "tcp",
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "type"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "$ref": "#/$defs/PingCheckConfig",
      -    "properties": {
      -      "type": {
      -        "const": "ping",
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "type"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "$ref": "#/$defs/HeartbeatCheckConfig",
      -    "properties": {
      -      "type": {
      -        "const": "heartbeat",
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "type"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "$ref": "#/$defs/DnsCheckConfig",
      -    "properties": {
      -      "type": {
      -        "const": "dns",
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "type"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "$ref": "#/$defs/TlsCertCheckConfig",
      -    "properties": {
      -      "type": {
      -        "const": "tls_cert",
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "type"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "$ref": "#/$defs/DomainExpiryCheckConfig",
      -    "properties": {
      -      "type": {
      -        "const": "domain_expiry",
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "type"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "$ref": "#/$defs/FlowCheckConfig",
      -    "properties": {
      -      "type": {
      -        "const": "flow",
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "type"
      -    ],
      -    "type": "object"
      -  }
      -]New value: +[
      +  {
      +    "$ref": "#/$defs/HttpCheckConfig",
      +    "properties": {
      +      "type": {
      +        "const": "http",
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "type"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "$ref": "#/$defs/TcpCheckConfig",
      +    "properties": {
      +      "type": {
      +        "const": "tcp",
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "type"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "$ref": "#/$defs/PingCheckConfig",
      +    "properties": {
      +      "type": {
      +        "const": "ping",
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "type"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "$ref": "#/$defs/HeartbeatCheckConfig",
      +    "properties": {
      +      "type": {
      +        "const": "heartbeat",
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "type"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "$ref": "#/$defs/ManualCheckConfig",
      +    "properties": {
      +      "type": {
      +        "const": "manual",
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "type"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "$ref": "#/$defs/DnsCheckConfig",
      +    "properties": {
      +      "type": {
      +        "const": "dns",
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "type"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "$ref": "#/$defs/TlsCertCheckConfig",
      +    "properties": {
      +      "type": {
      +        "const": "tls_cert",
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "type"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "$ref": "#/$defs/DomainExpiryCheckConfig",
      +    "properties": {
      +      "type": {
      +        "const": "domain_expiry",
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "type"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "$ref": "#/$defs/FlowCheckConfig",
      +    "properties": {
      +      "type": {
      +        "const": "flow",
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "type"
      +    ],
      +    "type": "object"
      +  }
      +]
    • addedOutput schema / $defs / ManualCheckConfig
      Added value: +{
      +  "description": "Nothing is probed: the state is whatever an operator last set with\n`set_monitor_state`, and the monitor's `state` reports it.",
      +  "type": "object"
      +}
    • changedOutput schema / properties / type / description
      Previous value: -"Check kind: `http`, `tcp`, `ping`, `heartbeat`, `dns`, `tls_cert`,\n`domain_expiry`, `flow`."New value: +"Check kind: `http`, `tcp`, `ping`, `heartbeat`, `manual`, `dns`,\n`tls_cert`, `domain_expiry`, `flow`."
  3. Changed1 schema field changed
    • changedOutput schema / properties / renotify_interval_secs / description
      Previous value: -"Seconds between reminders while an outage stays unacknowledged. 0 means\nreminders are off."New value: +"Seconds before the first reminder while an outage stays unacknowledged;\neach further reminder waits twice as long, up to a day. 0 means\nreminders are off."
  4. Changed1 schema field changed
    • changedOutput schema / properties / alert_channel_ids / description
      Previous value: -"Channel ids this monitor alerts, for the read half of\n`update_monitor(channel_ids)`, which replaces the whole set. Empty means\nit alerts nobody. `list_notification_channels` puts names to these."New value: +"Channel ids bound to this monitor, for the read half of\n`update_monitor(channel_ids)`, which replaces the whole set. Empty means\nnone is bound, which is not the same as alerting nobody: a channel whose\n`auto_bind_tags` covers one of this monitor's tags is paged as well.\n`list_notification_channels` puts names to these."
  5. Changed2 schema fields changed
    • addedOutput schema / $defs / CheckDiagnosticView
      Added value: +{
      +  "description": "Bounded, machine-readable explanation for a failed HTTP observation.",
      +  "properties": {
      +    "confidence": {
      +      "type": "string"
      +    },
      +    "evidence": {
      +      "items": {
      +        "type": "string"
      +      },
      +      "type": "array"
      +    },
      +    "guidance": {
      +      "type": "string"
      +    },
      +    "kind": {
      +      "type": "string"
      +    },
      +    "provider": {
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    },
      +    "remediations": {
      +      "items": {
      +        "type": "string"
      +      },
      +      "type": "array"
      +    },
      +    "summary": {
      +      "type": "string"
      +    }
      +  },
      +  "required": [
      +    "kind",
      +    "confidence",
      +    "evidence",
      +    "remediations",
      +    "summary",
      +    "guidance"
      +  ],
      +  "type": "object"
      +}
    • addedOutput schema / properties / last_diagnostic
      Added value: +{
      +  "anyOf": [
      +    {
      +      "$ref": "#/$defs/CheckDiagnosticView"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "description": "Structured edge-access diagnosis for the last failed HTTP check."
      +}
  6. First observed

TDQS

Score is being calculated.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.