Bots St

bots.st/hookpulse

hookpulse

Manage cron/webhook monitors and alerts

2290 ms

answered our call

State
Answered
Protocol
MCP 2025-06-18
Tools listed
30
Answered
3 of the last 3 calls

How to reach it

  • MCP, HTTPhttps://hookpulse.net/mcp

What it can do

ToolWhat it says it does
api_indexFull index of the HookPulse API.
billingRead current free allowances, options with billing off, prices and the account's 7-day trial. E-mail alerts cost $0.10 once per additional monitor, even with a reused address. Check before creating the second monitor or lowering the interval: it is the number IN FORCE, not the documentation's…
buy_planBuy a plan: starter (40 more monitors, up to 50), team (90 more monitors, up to 100), business (490 more monitors, up to 500). Each purchase lasts 30 days, with no automatic renewal. Answers 402 with the price; pay with x402 or prepaid credit and repeat. Each purchase lasts 30 days, with no…
cancel_planCancel the active plan. Nothing else is charged; a purchase under 7 days and a paid period that has not started are refunded and end now, and the rest of the paid period stays active until keeps_until. Requires accept_data_removal: true. Send `{ "accept_data_removal": true }`. The monthly card…
check_siteCheck a site monitor now. One call every 10 seconds per destination host. One call every 10 seconds per destination host, for everyone: the button cannot hammer a site. The first state of a new site comes from here, without an alert — you are looking at it. After that, the state and the alerts…
contactWrite to the people behind the product: a question, or a sponsorship/partnership/advertising proposal. Free, no captcha and no payment; one message every 10 s per network (one that arrives sooner waits its turn). One route for a question and for a sponsorship, partnership or ad proposal (`tipo`…
create_endpointCreate a monitor for a routine. Use cron, tz and grace_sec for a schedule, or interval_sec for a fixed check-in interval. Set max_duration_sec to detect an open run that exceeds its time limit. Without an owner token, creation returns guest_token; keep it private for later calls. Read billing…
create_guestCreates a guest token hp_… Keep the token: without it there is no way back to the monitors, unless you have already tied them to an e-mail.
create_siteMonitor a website: HookPulse calls check.url every interval_sec (default 300) and alerts when it goes down and when it is back. Without an owner token, creation returns guest_token; keep it private. Read billing before a paid option. A charged request returns HTTP 402. We keep the schedule, detect…
delete_endpointRemoves the owner's endpoint.
get_api_x402_checkChecks a URL once for an agent, paid per call: status, response time, keyword and TLS certificate, with no account and no monitor. One reading with the probe of the site monitors, and the certificate of an https address that answered. A request without payment gets the 402 with the price; a paid…
get_endpointStatus of one endpoint (use the endpoint token if you have it). The monitor token only reads: it lets you put the state on a third-party dashboard without handing over the owner's credential. With a schedule it is here that `next_expected_at` says when the next run is due. Only this endpoint…
healthRead service liveness before using HookPulse. Returns the health response; does not check a monitor.
import_crontabReads a crontab and proposes one monitor per scheduled line. Without apply=1 nothing is written; the proposal says what was ignored and why. Passwords in the command are redacted. The body is the crontab itself, as `text/plain`. Without `?apply=1` **nothing is written**: you get the proposal —…
ingest_keyReturns (minting the first time) the key for /in/<key>/<slug>, where a ping creates its own monitor inside the free tier. Instruments a whole fleet with no setup call per job. One key per owner. Point a whole fleet at `/in/<key>/<slug>` and each job creates its monitor on the first check-in…
ingest_key_rotateRotates the ingest key; the previous one stops creating monitors. Existing ones keep working. Monitors already created keep working — rotating only revokes the power to create new ones.
list_endpointsLists the guest's/session's endpoints.
list_eventsLatest ingest pings.
list_plansThe plans for sale, with price and term, and the account's active plan. Each purchase lasts 30 days, with no automatic renewal. Each purchase lasts 30 days, with no automatic renewal. Without an account or wallet credential, `account` is `null`.
list_sitesThe state of every site you monitor (up, down, waiting, paused), with the last check. The same answer is the snapshot of the live subscription (`/api/realtime/`): after it, every check arrives as an event, so a screen never has to poll.
list_templatesIngest snippets and the JSON HookPulse POSTs on a miss. It exists so nobody guesses the alert format: `miss_json` and `recovery_json` here are the same bodies that arrive at your `alert_url`. Slack and Discord receive only the field they read.
ping_ingestSimulates the cron: GET on /in/:id. No credential on purpose — the caller is a cron, and the ID is already the secret. It costs nothing and there is no quota per ping.
ping_slugCreate a monitor on its first check-in. The same slug uses the same monitor. Service and billing limits apply. A rejected creation writes no monitor or event. The slug becomes the monitor name and its identity: the same slug always means the same monitor, so a retry never creates a second one…
pricingCurrent public prices and free allowances; no charge.
signal_exit_codeThe shell exit status: 0 behaves like a ping, 1-255 record the code as a failure. `curl -fsS $ORIGIN/in/ID/$?` at the end of a script is the whole integration. `0` behaves exactly like a plain ping; 1 to 255 record the code and leave the failure for the cron.
signal_failRecord a failed run. The next five-minute check sends the alert with reason fail. The monitor's alert_repeat_sec controls repeated alerts; the default is 24 hours. Failing is not proof of life either: the clock keeps running. The ingest never sends e-mail and never calls out — it records…
signal_slugSend start, fail or an exit code by name, with the ingest key; the first signal of a new name creates its monitor. The same signals as `/in/:id/start`, `/in/:id/fail` and `/in/:id/:exit_code`, for a fleet that only knows the ingest key: the job sends its name, not the monitor id. The first signal…
signal_startSays the run STARTED. Does not clear the dead-man clock: a routine that starts and hangs still becomes a miss. The next success records the duration. `start` is not proof of life: it does not move `last_event_at` and does not clear the miss counter, so a routine that starts and hangs still becomes…
status_feed_rotateRotates the status feed token; the previous URL stops working.
status_feed_urlPublic URL (JSON and RSS) with the status of all the owner's endpoints. The feed token only reads status: it does not create, change or delete. Whoever has the link sees the dashboard — treat it as a secret.

In its maker's words

Dead-man switch for cron and webhooks: ingest URL, miss detection, alerts and a status feed.

Website
hookpulse.net
Source
github.com/wrpbr/hookpulse
Publisher
hookpulse.net
Listed from
the official MCP Registry as net.hookpulse/hookpulse
Version
1.0.1, updated 15 Oct 2026
Kinds of work
Messaging and support, Browser and automation, Law, tax and government

The domain it lives on

hookpulse.net
registered 10 Aug 2026 (3 months ago), at Cloudflare, Inc., its home page is a working site

From our own crawl of domain names: registry records and the home page as our crawler last saw it.

Every call we made

WhenWhat happenedTime
Answered2290 ms
Answered2659 ms
Answered1226 ms

Next door

Is this your bot? Claim its address to add a verified badge and keep the listing current.