Skip to main content
Glama

Create site

create_site

Monitor a website: HookPulse calls check.url every interval_sec (default 300) and alerts when it goes down and when it is back. With check the monitor is a site: HookPulse calls check.url every interval_sec (default 300) and alerts when it goes down — two failed checks in a row, one minute apart, from a server whose own connection is proven — and when it answers again. {"check":{"url":"https://example.com/"}} is enough; the name defaults to the host. A site has no cron, no max_duration_sec and no ingest URL. This response is the only one that shows the monitor's token and the templates — keep them. A miss alerts at most once per 24h — or per alert_repeat_sec, or per interval, whichever is longer. Send cron+tz+grace_sec instead of interval_sec for a real schedule: a 03:00 backup is late at 03:01:30, not 24 hours later. max_duration_sec catches the other failure: a run that starts and hangs, which plain silence detection only notices at the next scheduled time.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
nameNohow you will recognise the site in an alert; default: its host
tagsNoUp to 8 tags to group this monitor: lower-case letters, digits, `.`, `_` and `-`, at most 32 characters each. A comma-separated string works too. We lower-case and de-duplicate, so `Prod` and `prod` are the same tag.
checkYesurl (http/https, public; required), method (GET or HEAD), expect_status (200-399 by default, a range a-b or one code), keyword (text that must be on the page), timeout_ms (1000..30000)
alert_toNoE-mail to alert on a miss; without it, the account is alerted.
alert_urlNoPublic HTTPS URL that receives a POST on a miss (Slack Incoming, Discord, n8n).
guest_tokenYes
interval_secNoseconds between checks, default 300
paused_untilNomaintenance window end (UTC ISO), max 30 days ahead

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

B3.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only declare the write/openWorld/non-idempotent profile, and the description adds substantial behavior beyond them: failure is 'two failed checks in a row, one minute apart, from a server whose own connection is proven', alert dedup is 'at most once per 24h — or per alert_repeat_sec, or per interval, whichever is longer', and the response uniquely exposes token and templates. The trailing cron/max_duration_sec material is behavioral context for a different tool and dilutes the value.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The core purpose sentence is restated almost verbatim in the second sentence, and the final third about cron/tz/grace_sec/max_duration_sec describes parameters this tool does not accept and are not in its schema. It is not front-loaded by purpose — the actionable defaults and example are buried mid-paragraph.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For an 8-parameter write tool with no output schema, the description covers alerting semantics and the token/templates return well. But the recurring cron/schedule advice is unactionable given no such parameters and directly conflicts with 'A site has no cron', leaving an agent uncertain whether scheduling options apply here.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 88%, so the schema already documents nearly every field, including the check sub-object and defaults. The description adds a concrete example ({"check":{"url":"https://example.com/"}}) and the name-without-name default ('the name defaults to the host'), but this is largely redundant with the schema's own 'default: its host' and 'default 300' notes, so the baseline 3 fits.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description conveys a specific verb+resource: it creates an HTTP site monitor that polls check.url on an interval and alerts on failure/recovery, and it explicitly separates itself from the endpoint family ('A site has no cron, no max_duration_sec and no ingest URL'). However, the repeated opening ('HookPulse calls check.url every interval_sec and alerts when it goes down' stated twice) and the later cron/tz/grace_sec advice muddy a purpose that is otherwise clear.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is implied rather than stated: the check-based monitor is the site case, and 'A site has no cron...' hints that cron belongs to a sibling. But no sibling is named (create_endpoint/cron-style alternatives are never mentioned) and the closing advice to 'send cron+tz+grace_sec' conflicts with the earlier statement, leaving the when-to-use boundary ambiguous.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.