Skip to main content
Glama

check_propagation

Read-onlyIdempotent

Use this when the user asks whether a DNS change has propagated globally, or why a record shows in one place and not another. Check whether a DNS change has propagated GLOBALLY: six vantage points (five owner-run probes across four continents plus this server's own resolver) each read the same name through several resolvers, and the grid plus a deterministic verdict comes back. Call it after the human publishes a record — you have ONE network vantage point, and a record that resolves for you can still be missing elsewhere. name is the exact name (www. is not stripped, _dmarc.example.com works), record_type is A|AAAA|CNAME|MX|TXT|NS, and the optional expected_value turns each cell into match or mismatch instead of agreement-only. Observation only: no record is ever composed here. A cell that did not answer is unavailable, which is NOT a negative result, and when fewer than three vantage points were reached the verdict downgrades to unknown — report vantage_reached of vantage_total rather than calling a name converged on partial coverage.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
nameYesThe exact DNS name to look up, e.g. example.com, www.example.com or _dmarc.example.com. It is used as given — a leading www. is NOT stripped and underscore labels are kept — so pass the name the record is actually published at, not the registrable domain.
record_typeNoThe record type to read at that exact name (default A). SPF and DMARC records are TXT — pass TXT with the right name rather than expecting a derived query name.A
expected_valueNoOptional value the record should now hold, e.g. '1.2.3.4' or the new DMARC record text. Supply it and each cell is reported as match or mismatch against it; omit it and the check only reports whether the vantage points agree with each other.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.4/5.0
Behavior5/5

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

Rich behavioral disclosure well beyond annotations. The 'Observation only: no record is ever composed here' statement reinforces readOnlyHint, while the description uniquely discloses that an unanswered cell is 'unavailable' and NOT a negative result, that the verdict downgrades to 'unknown' under partial coverage, and that the verdict is deterministic. These are operationally critical and absent from annotations; no contradiction exists.

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?

Long but dense and front-loaded with the when-to-use clause. Every sentence carries operational weight — the unavailable semantics, partial-coverage downgrade, single-vantage-point warning, and exact-name handling all earn their place given the verdict complexity. No filler or tautology, though it could be trimmed slightly.

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?

Exceptionally complete for a complex tool. Covers the vantage-point topology, the verdict grid, match/mismatch mode, unavailable-cell semantics, the partial-coverage downgrade, and even the reporting instruction (report vantage_reached of vantage_total). With an output schema present to handle return values, nothing an agent needs to call it correctly is missing.

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 100%, so the baseline is 3. The description restates the record_type enum and reinforces the expected_value behavior (match/mismatch vs agreement-only), but adds little beyond what the schema already documents; the 'SPF and DMARC records are TXT' hint duplicates schema guidance. It does not compensate beyond the schema's thoroughness.

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 (check) and resource (DNS propagation) with an explicit scope: GLOBALLY across six vantage points. The purpose is clearly distinguished from sibling lookups like check_record by emphasizing the multi-vantage global verdict versus a single network point, and the use case 'why a record shows in one place and not another' pins down intent precisely.

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

Usage Guidelines4/5

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

Opens with explicit when-to-use conditions ('when the user asks whether a DNS change has propagated globally, or why a record shows in one place and not another') and adds timing guidance ('Call it after the human publishes a record'). It contrasts with the single-vantage-point limitation but does not name alternatives or give explicit when-not-to-use exclusions, leaving a small gap.

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.