1Add a domain · 30 seconds, no agent, no DNS change.
2We watch it two ways · Up or down every 10 seconds. Safe or exposed all day.
Last 30 days
99.98%
uptime · 263ms average right now
Up from all 6 locations.
Security 94/100
TLS, headers, DNS, email
Exposure
versions shown, no known CVEs
3You get the message
Slack · #ops · 10:37
example.com is down · HTTP 502 from 3 of 6 locations
Email · [email protected] · 10:37
DOWN: example.com, confirmed by 3 locations
JIRA · OPS-118 · 10:37
example.com down: HTTP 502 (3 of 6 nodes)
Linear · OPS-42 · 10:37
Incident opened for example.com
Teams · Ops channel · 10:41
example.com recovered after 4m 12s
Cloudflare offline page went up for visitors at 10:37, came down at 10:41.
Every plan includes API keys and an MCP server. Your AI assistant can tell you which sites run exposed software, your pipeline can refuse a deploy that ships a known exploited CVE, and your deploy script can pause alerts while it ships.
Read-only keys for AI. Removing monitors stays on the website. Every change made with a key can be undone. How it works →
> do any of my sites run software with an actively exploited CVE?
⏺ internetsecure - list_monitors (MCP)
⎿ 14 monitors · 1 with Exposure F
⏺ internetsecure - get_security_result (MCP)
⎿ shop.example.com
⏺ One. shop.example.com runs WordPress 6.4.2: end of life, with 2 actively exploited CVEs (Exposure F). Updating WordPress clears both. Every other site is Exposure A or better.
> tell me in Slack if that gets worse
⏺ internetsecure - get_account (MCP)
⎿ Slack: not connected
⏺ Slack isn't connected yet. Connect it at internetsecure.org/account/profile?panel=slack, then I can turn Slack alerts on for shop.example.com.
> and is anything down right now?
⏺ No. All 14 uptime monitors are up.
- name: Security gate
run: |
curl -sf -X POST https://internetsecure.org/api/v1/scans \
-H "Authorization: Bearer ${{ secrets.ISEC_KEY }}" \
-d '{"domain": "example.com", "min_grade": "B"}' \
| jq -e '.gate.passed and
([.exposure.findings[].known_exploited] | add // 0) == 0'# pause uptime alerts while you ship, resume after
curl -X PATCH https://internetsecure.org/api/v1/monitors/48213 \
-H "Authorization: Bearer $ISEC_KEY" -d '{"uptime": false}'
./deploy.sh
curl -X PATCH https://internetsecure.org/api/v1/monitors/48213 \
-H "Authorization: Bearer $ISEC_KEY" -d '{"uptime": true}'When downtime hits, visitors stay on your URL and see a branded offline page instead of an error. When you recover, they're redirected automatically. No third-party status page to maintain. No manual updates. No forgotten "we're back!" posts.
Outage confirmed
Consensus reached — your origin is genuinely down
Worker route activated instantly
Cloudflare intercepts requests and serves your offline page
Recovery detected — route removed
Traffic flows back to your origin automatically
Works on Cloudflare's Free plan
Cloudflare Workers includes 100,000 free requests per day — more than enough to serve your offline page during any outage. No paid Cloudflare plan required.
Use the default page or provide your own custom HTML. Just needs a Cloudflare API token with Worker Scripts and Workers Routes permissions.
503 — Service Down
Something went wrong and our monitoring caught it. Engineers are investigating.
Auto-reloads when back up
"Night Rain" offline page — served via Cloudflare's edge network · auto-reloads when back up
Downtime, security changes, new CVEs and certificate renewals land on one timeline, with an alert the moment each one happens. How fast we detect outages
Latest security scan · 96/100 · WordPress updated to 7.1.4
SSL renewed: expires Nov 21 → Feb 19
New CVE: WordPress 7.1.3 · CVE-2026-119977 · 8.1 High
Content-Security-Policy: present → missing
/ · HTTP 503 Service Unavailable
Weekly security scan · 95/100
Pricing
Plus $5 · Pro $20 · Enterprise $149 a month. 30-day Pro trial, nothing charged today, cancel anytime.