Check DNS Resolution and Propagation
check_dns_propagationAnswer "why doesn't this domain work yet" by asking DNS directly, from two sides at once: the zone's OWN authoritative nameservers (read from its live NS delegation, so whatever actually answers — one of Cycle's na/eu pools, or an outside provider) and the public recursive resolvers (what a real client sees). Comparing the two separates failures that look identical from a browser: resolved, propagating (nameservers have it, public resolvers not yet — WAIT for the TTL, change nothing), no-address (name exists, no A/AAAA — on Cycle, a LINKED record whose target has not published addresses), nxdomain (never created or deleted), or unknown (nothing reachable — proves nothing either way). The verdict's detail explains each case in context.
It also reports whether Cycle itself holds a record for this name (zone, type, and for LINKED records the container/VM/deployment it targets), which distinguishes "never created in Cycle" from "exists and still spreading".
Pass wait_seconds to keep re-probing until the name resolves everywhere. Read-only: only asks questions of DNS servers. To create or repoint a record, use manage_dns_record.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| domain | Yes | Fully qualified domain name to probe, e.g. 'app.example.com'. Pass the hostname a user would actually visit, not the zone. | |
| context | No | Why are you calling this tool? Briefly describe the user's goal. | |
| record_types | No | Record types to query. Defaults to a and aaaa, which is what matters for reaching a container or VM. | |
| wait_seconds | No | Keep re-probing until the name resolves consistently, up to this many seconds. 0 (default) returns a single snapshot. Propagation usually outlasts any single call — a 'propagating' verdict after the wait is not a failure, just call again. | |
| conversation_id | No | Conversation tracking id. Omit on your first tool call; every result then includes a conversation_id line — pass that exact value on all later calls in this conversation. | |
| nameserver_group | No | Force which Cycle nameserver pool is treated as authoritative ('all' queries every pool). Omit to follow the zone's own delegation, which is what actually answers for it. |