Skip to main content
Glama

Create watcher

impri_create_watcher

Create a watcher that monitors external sources (RSS feeds, Reddit, URL diffs) and delivers matching items to the approval inbox or a webhook.

The watcher runs on the schedule you specify, deduplicates items by URL/content-hash, and delivers only new matches. The first run establishes a baseline and does not generate alerts.

Example — watch an RSS feed for AI-related news: spec: { name: "AI launches radar", kind: "rss", config: { url: "https://openai.com/news/rss.xml" }, keywords: ["launch", "gpt-", "voice"], keywords_none: ["funding", "benchmark"], min_score: 1, schedule: { every: "8h", jitter: "4h" } }

Returns { watcher_id, name, kind, status, next_run_at }.

Input Schema

NameRequiredDescriptionDefault
specYesWatcher specification (name, kind, config, keywords, keywords_none, min_score, schedule). See SPEC.md §3.2 for the full schema.

Output Schema

NameRequiredDescriptionDefault
kindYes
nameYes
statusYes
watcher_idYes
next_run_atNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4/5.0
Behavior5/5

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

Annotations already declare readOnlyHint=false, destructiveHint=false, idempotentHint=false and openWorldHint=true, and the description adds substantial behavior beyond them: scheduled runs with jitter, URL/content-hash deduplication, delivery of only new matches, and the baseline-on-first-run rule that suppresses the initial alert burst. That baseline/dedup disclosure is the kind of non-obvious behavior an agent cannot get from annotations.

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?

Front-loaded with the core purpose, then behavior, then a worked example that earns its space given the nested spec. Slightly long, but every block adds information rather than restating the name.

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

Completeness4/5

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

An output schema exists and the description briefly enumerates the return fields, so return values are covered. For a nested-spec creation tool the description plus SPEC.md reference is sufficient, though it leaves the preset-sibling distinction unaddressed.

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%, but the single 'spec' parameter is a nested object pointing to SPEC.md §3.2, so the schema alone is thin. The description compensates with a concrete example enumerating name, kind, config, keywords, keywords_none, min_score, and schedule, plus a worked min_score/jitter usage.

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?

States a specific verb and resource ('Create a watcher') and immediately scopes what it monitors (RSS feeds, Reddit, URL diffs) and where it delivers. It does not, however, distinguish itself from the sibling impri_create_watcher_from_preset, which an agent must disambiguate on its own.

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?

The description conveys context (scheduled monitoring to inbox/webhook) but never states when to choose this over impri_create_watcher_from_preset or other siblings. Usage is implied by the example rather than declared, leaving the main routing decision to inference.

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.