Skip to main content
Glama

robotbase-content

Web Monitor Set

web_monitor_set
Read-onlyIdempotent

Create a scheduled change monitor for one public URL: the server re-fetches the page on an interval, stores a new snapshot and records a diff event whenever the readable text changes. When to use: the user wants to be told when a page changes (price, docs, policy page, job post, release notes) and cannot poll it themselves; also for handing off 'watch this for me'. Do not use: for a single comparison right now (web_diff) or when you only need the page today (web_fetch). Returns: {ok, monitor_id, url, status:active, interval_minutes, next_check_ts, webhook_enabled, webhook_secret?, webhook_signature?, hint}. The first check runs within ~60s to store the baseline; later changes show up in web_monitor_list.recent_events and, if requested, are POSTed to webhook_url. Webhook: https only, no redirects, 8s timeout, up to 2 retries (30s/120s); body JSON {monitor_id,url,ts,changed,added_lines,removed_lines,title,diff,event_id}; verify header 'X-RobotBase-Signature: sha256='. Limits: 15-1440 minutes; max 5 monitors per IP; monitors expire after 7 days. Metered: 1 credit (shares the web free bucket of 100 calls/day per IP).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
urlYesThe http(s) URL to watch (max 2048 chars).
webhook_urlNoOptional https endpoint notified on each change (HMAC-signed).
interval_minutesNoCheck interval 15-1440 minutes. Default 60.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.2/5.0
Behavior2/5

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

The description itself is unusually rich — webhook contract (https only, no redirects, 8s timeout, 2 retries at 30s/120s), HMAC signature header, first-check timing, limits (15–1440 min, 5 per IP, 7-day expiry) and metering. However it describes a state-creating operation ('Create... stores a new snapshot and records a diff event') while annotations declare readOnlyHint=true and idempotentHint=true; registering a monitor is a persistent write with quota/expiry consequences. The description is more accurate than the annotation, which limits practical harm, but the conflict is real.

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

Conciseness4/5

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

Dense but front-loaded: purpose first, then use/do-not-use, then returns, webhook contract, limits and cost. Every sentence carries operational information, though the single unbroken block would scan better with the labeled sections broken into lines.

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

Completeness5/5

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

With no output schema, the description still specifies the return shape ({ok, monitor_id, url, status, interval_minutes, next_check_ts, webhook_enabled, ...}), where change events surface (web_monitor_list.recent_events), the baseline timing, and the cost. An agent has everything needed to call this correctly and set expectations.

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

Parameters4/5

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

Schema coverage is 100% and documents all three params, so the baseline is 3; the description adds genuine meaning on top: webhook must be https with no redirects, the interval bound 15–1440, the max-5-monitors-per-IP cap, and the exact signature header format. What it does not clarify is override/duplicate behavior when the same URL is monitored twice.

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

Purpose5/5

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

States a specific verb and resource ('Create a scheduled change monitor for one public URL') and immediately explains the mechanism: re-fetch on interval, store snapshot, record diff event. It also names the siblings it is not (web_diff for a one-shot comparison, web_fetch for a single read), so an agent can discriminate without opening schemas.

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

Usage Guidelines5/5

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

Explicit 'When to use' block with concrete triggers (price, docs, policy page, job post, release notes, 'watch this for me') and an explicit 'Do not use' block routing to web_diff and web_fetch with the selecting condition. This is the textbook when/when-not/alternative structure.

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.