Skip to main content
Glama

Watch Record Change

watch_record_change
Idempotent

Use this when the user asks to be told when a DNS change they are making has finished ("let me know when it's live"). Starts a free watch on ONE record for the signed-in user: DNS Doctor rechecks it every 10 minutes for up to 48 hours with the same verdict as check_record and sends ONE email to the address on their DNS Doctor account: when it is live, when the value has sat at a different name for an hour, when the zone has not served it for 6 hours, or when 48 hours pass. Same arguments as check_record; pass expected_value when the user is publishing a specific value. It reads the record once first and returns that reading: a record that is already live (verdict done), a domain whose nameservers do not answer, or a lookup fault starts nothing. Asking again for the same record returns the running watch, never a second one. Relay watch.note. Needs a linked DNS Doctor account; never ask the user for an email address. Nothing is applied to anyone's DNS.

Input Schema

NameRequiredDescriptionDefault
hostNoOptional label to prepend to the domain (e.g. 'mail' to check mail.<domain>) — honored for txt, cname, a and aaaa only; spf, dmarc and mx derive their own query name.
kindYesWhich record to read; the right query is derived from it — 'dmarc' reads TXT at _dmarc.<domain> filtered to v=DMARC1, 'spf' reads the apex TXT filtered to v=spf1, so don't prefix the domain yourself.
domainYesThe domain to check, e.g. example.com. Bare registrable names and subdomains both work; scheme, path or port do not belong here. Unicode names are accepted and normalized to punycode.
expected_valueNoOptional: the exact value just published (e.g. the DMARC record text, a verification token, '10 mx.example.com'). Given it, the verdict tests for that value and an 'edit' also checks the names a misplaced edit usually lands on (found_at).

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.4/5.0
Behavior3/5

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

The description goes well beyond the annotations: 10-minute rechecks for up to 48 hours, exactly one email to the account address, four termination conditions, idempotent re-invocation, and 'nothing is applied to anyone's DNS'. That is strong disclosure and consistent with readOnlyHint=false and destructiveHint=false, but the write-ish server-side state creation implied by readOnlyHint=false is only explained indirectly rather than stated.

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 when-to-use condition and free of filler, but it is one long paragraph packing lifecycle, idempotency, account requirements and return behavior together. Splitting the notification triggers from the argument guidance would make it easier to scan.

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?

Even though an output schema exists, the description covers the non-obvious operational facts an agent needs: no email address may be requested, a linked account is required, the watch is per signed-in user, and watch.note must be relayed. Nothing material for correct invocation is missing.

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%, so the baseline is 3, but the description adds genuine routing value: 'same arguments as check_record' and the conditional instruction to pass expected_value when publishing a specific value, which the schema only implies. It does not add format details for host/domain beyond what the schema already documents.

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: it 'starts a free watch on ONE record for the signed-in user' and rechecks with 'the same verdict as check_record', which directly separates it from the sibling check_record and from check_propagation. An agent knows exactly what this creates without opening the schema.

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?

Gives an explicit trigger ('when the user asks to be told when a DNS change they are making has finished'), names the sibling whose semantics it mirrors, and spells out when nothing is started: already-live records, non-answering nameservers, lookup faults. It also pre-empts the duplicate case by saying a repeat request returns the running watch.

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.