WatchFor monitoring
WatchFor is an uptime & infrastructure monitoring platform with 25 check
types, 18 on-demand diagnostics from its own probe fleet, and multi-location
confirmed alerting (Down = verified from
several regions; one failed check = Degraded, not an outage).
Setup
Preferred: connect the MCP server — https://watchfor.io/api/mcp
(Streamable HTTP). OAuth-capable clients authenticate with no manual
key (browser consent flow). Otherwise pass an org API key:
Authorization: Bearer wf_live_… (created in dashboard → Settings → API
keys; read or read+write scope).
REST alternative: https://watchfor.io/api/v1 — same auth, OpenAPI 3.1 at
https://watchfor.io/openapi.json. Try without any account:
https://watchfor.io/api/v1/sandbox (read-only sample data).
Core workflows
Is everything up?
get_summary (MCP) or GET /api/v1/summary — monitor counts by status,
active incidents, health score. One call answers the question.
Diagnose what's broken
get_summary → if incidents are active:
list_incidents with status=firing — each incident includes the exact
rule that fired (metric, operator, threshold) and its duration.
get_monitor_checks with success=false for the affected monitor — the
failing probes with per-location detail.
- Report: affected monitor, rule, duration, likely cause, next step.
Investigate something that is not monitored yet
Monitors tell you what has been happening; diagnostics tell you what is true
right now, from a specific place. Use them when the question is "has DNS
propagated?", "what does the server return from Germany?", "is the port open
from Singapore?".
list_diagnostics — the 18 checks, what each answers, and the allowance
left on the plan.
run_diagnostic with a slug (dns-lookup, dns-propagation, tls-grade,
http-headers, ping, traceroute, port-checker, email-health, …),
a target and an optional location.
- Or
diagnose_target — DNS, propagation, TLS, headers and ping from up to
three regions in one call, returned as a single verdict with findings.
A check that fails or times out comes back successful HTTP with
success:false — that is the answer, not an error. Runs share the plan
allowance with the dashboard's Toolbox, so pace them: the response carries
what is left.
Create a monitor
- ALWAYS call
get_monitor_types first — it lists every type's target
format, config fields and the EXACT alert-metric strings.
list_locations for location ids.
create_monitor (write scope) — interval is seconds, validated against
the plan minimum.
- Suggest alert rules using metric strings from step 1; create with
create_alert_rule after the user confirms.
Silence planned downtime
create_maintenance_window — alerts suppressed and uptime excluded for
the window; checks keep running.
Rules
- Validation errors name the allowed values — correct the request and
retry; do not guess enum values.
delete_monitor is irreversible (removes rules + incident history):
confirm with the user first.
- Back off on HTTP 429 using
Retry-After.
- Do not use WatchFor for logs, APM traces or metrics ingestion.
More: https://watchfor.io/agents.md · https://watchfor.io/docs/api
1---2name: watchfor-monitoring3description: Monitor websites, APIs, SSL certificates, DNS, cron jobs and MCP servers with WatchFor (watchfor.io). Use when the user wants to check whether something is up, run an on-demand check from a specific region (DNS propagation, TLS grade, HTTP headers, ping, traceroute, open ports, e-mail policy), diagnose an outage or incident, create/manage uptime monitors or alert rules, schedule maintenance windows, or get uptime/reliability reports. Works via the WatchFor REST API or MCP server with an API key or OAuth.4---56# WatchFor monitoring78WatchFor is an uptime & infrastructure monitoring platform with 25 check9types, 18 on-demand diagnostics from its own probe fleet, and multi-location10**confirmed** alerting (Down = verified from11several regions; one failed check = Degraded, not an outage).1213## Setup1415Preferred: connect the MCP server — `https://watchfor.io/api/mcp`16(Streamable HTTP). OAuth-capable clients authenticate with **no manual17key** (browser consent flow). Otherwise pass an org API key:18`Authorization: Bearer wf_live_…` (created in dashboard → Settings → API19keys; `read` or `read+write` scope).2021REST alternative: `https://watchfor.io/api/v1` — same auth, OpenAPI 3.1 at22`https://watchfor.io/openapi.json`. Try without any account:23`https://watchfor.io/api/v1/sandbox` (read-only sample data).2425## Core workflows2627**Is everything up?**281. `get_summary` (MCP) or `GET /api/v1/summary` — monitor counts by status,29 active incidents, health score. One call answers the question.3031**Diagnose what's broken**321. `get_summary` → if incidents are active:332. `list_incidents` with `status=firing` — each incident includes the exact34 rule that fired (metric, operator, threshold) and its duration.353. `get_monitor_checks` with `success=false` for the affected monitor — the36 failing probes with per-location detail.374. Report: affected monitor, rule, duration, likely cause, next step.3839**Investigate something that is not monitored yet**40Monitors tell you what has been happening; diagnostics tell you what is true41right now, from a specific place. Use them when the question is "has DNS42propagated?", "what does the server return from Germany?", "is the port open43from Singapore?".441. `list_diagnostics` — the 18 checks, what each answers, and the allowance45 left on the plan.462. `run_diagnostic` with a slug (`dns-lookup`, `dns-propagation`, `tls-grade`,47 `http-headers`, `ping`, `traceroute`, `port-checker`, `email-health`, …),48 a target and an optional location.493. Or `diagnose_target` — DNS, propagation, TLS, headers and ping from up to50 three regions in one call, returned as a single verdict with findings.5152A check that fails or times out comes back **successful HTTP with53`success:false`** — that is the answer, not an error. Runs share the plan54allowance with the dashboard's Toolbox, so pace them: the response carries55what is left.5657**Create a monitor**581. ALWAYS call `get_monitor_types` first — it lists every type's target59 format, config fields and the EXACT alert-metric strings.602. `list_locations` for location ids.613. `create_monitor` (write scope) — interval is seconds, validated against62 the plan minimum.634. Suggest alert rules using metric strings from step 1; create with64 `create_alert_rule` after the user confirms.6566**Silence planned downtime**67- `create_maintenance_window` — alerts suppressed and uptime excluded for68 the window; checks keep running.6970## Rules7172- Validation errors name the allowed values — correct the request and73 retry; do not guess enum values.74- `delete_monitor` is irreversible (removes rules + incident history):75 confirm with the user first.76- Back off on HTTP 429 using `Retry-After`.77- Do not use WatchFor for logs, APM traces or metrics ingestion.7879More: <https://watchfor.io/agents.md> · <https://watchfor.io/docs/api>