protogrid

Search / net.isitdns/isitdns

isitdns

R0· no sign-in

Is it DNS? Audit a site or domain that isn't working: one call says if it resolves and why. No key.

v2026-10-15 · active · website · descriptor JSON · versions

An agent can connect right now, no human step.Remote endpoint, no authentication, reachable on the last probe.
Quality84good
Trust77of 100
Uptime, 30 days95%
Latency p50234 ms

Connect

8 clients · secrets stay placeholders
{
  "mcpServers": {
    "isitdns": {
      "type": "http",
      "url": "https://isitdns.net/mcp"
    }
  }
}
claude mcp add --transport http isitdns https://isitdns.net/mcp
[mcp_servers.isitdns]
url = "https://isitdns.net/mcp"
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "isitdns": {
      "type": "remote",
      "url": "https://isitdns.net/mcp",
      "enabled": true
    }
  }
}
{
  "mcpServers": {
    "isitdns": {
      "type": "http",
      "url": "https://isitdns.net/mcp"
    }
  },
  "deeplink": "cursor://anysphere.cursor-deeplink/mcp/install?name=isitdns&config=eyJ0eXBlIjoiaHR0cCIsInVybCI6Imh0dHBzOi8vaXNpdGRucy5uZXQvbWNwIn0%3D"
}
{
  "servers": {
    "isitdns": {
      "type": "http",
      "url": "https://isitdns.net/mcp"
    }
  }
}
{
  "mcpServers": {
    "isitdns": {
      "httpUrl": "https://isitdns.net/mcp"
    }
  }
}
extensions:
  "isitdns":
    enabled: true
    name: "isitdns"
    type: streamable_http
    uri: "https://isitdns.net/mcp"
    timeout: 300

Quality 84 / 100good

protocol100 · weight 25
  • pass
    protocol.modernsupports 2026-07-28 (server/discover)
  • pass
    protocol.statelessanswers without a session
  • pass
    protocol.transportstreamable HTTP
  • pass
    protocol.list_ttltool list is cacheable (ttlMs 3600000)
authorizationn/a · weight 15
  • n/a
    auth.prm, auth.as_metadata, auth.cimdno remote uses OAuth
  • n/a
    auth.secret_in_urlno templated URL
tool hygiene100 · weight 30
  • pass
    tools.descriptionsevery tool has a description
  • pass
    tools.description_lengthdescriptions are concise
  • pass
    tools.schemasevery tool has an object input schema
  • pass
    tools.annotations6 of 6 tools declare readOnlyHint or destructiveHint
  • pass
    tools.directory_hintsevery tool declares readOnlyHint, destructiveHint, idempotentHint and openWorldHint
  • pass
    tools.token_costabout 1,659 tokens to load every tool
  • pass
    tools.api_dumptools are not a one-to-one API dump
stability25 · weight 15
  • warn
    stability.changes92 tool changes in 30 days
  • fail
    stability.rug_pull20 tools kept their name but changed most of their description in 30 days; review before trusting them
dependenciesn/a · weight 15
  • n/a
    deps.known_vulns, deps.mcp_sdk_version, deps.resolvableno npm or PyPI package

6 tools, about 1,659 tokens to load them all · tool set 2851fb0c53d2 · tools last changed 2026-10-15 · checked 2026-10-20 11:08 UTC

Tool changes

  • check_domainchangedoutput schema
  • sweep_domainchangedoutput schema
  • sweep_domainchangeddescription, input schema
    before

    Sweep a zone's nameservers: the same names and types asked at a sample of its authoritative addresses, reporting disagreements, lame or silent servers, serial and TTL differences, and CAA and ACME readiness. Not for a public resolver's answer: dig. Asked with RD=0 over TCP from the isitdns edge or a probe, named on each answer. Every question not asked is listed with why, and an answer past 22,000 bytes is trimmed with counts, the whole sweep at its api: URL. names are labels under the zone (@ for the apex), 16 at most, and types 8 at most.

    after · 88% of words in common

    Sweep a zone's nameservers: the same names and types asked at a sample of its authoritative addresses, reporting disagreements, lame or silent servers, serial and TTL differences, the CAA in effect, and each _acme-challenge TXT or CNAME. Not for a public resolver's answer: dig. Asked with RD=0 over TCP from the isitdns edge or a probe, named on each answer. Every question not asked is listed with why, and an answer past 22,000 bytes is trimmed with counts, the whole sweep at its api: URL. names are labels under domain (@ for domain itself), 16 at most, and types 8 at most.

  • digchangedinput schema
  • check_domainchangedinput schema
  • registrationchangeddescription
    before

    Read a domain's registration from its registry's RDAP server: each status with what it means for resolution, the registration, expiry and change dates, the nameservers, whether the delegation is signed. Not for what DNS answers: check_domain. Read over HTTPS from the isitdns edge through IANA's RDAP bootstrap, and no contacts are returned. A hostname is read at the name, then each parent down to two labels, and each HTTP read is listed with its URL, status and time.

    after · 95% of words in common

    Read a domain's registration from its registry's RDAP server: each status with what it means for resolution, the registration, expiry and change dates, the nameservers, whether the delegation is signed. Not for what DNS answers: check_domain. Read over HTTPS from the isitdns edge through IANA's RDAP bootstrap, and no contacts are returned. A hostname is read at the name, then each parent down to the registered domain, and each HTTP read is listed with its URL, status and time.

  • tracechangeddescription
    before

    Trace a delegation from the root to the authority, like dig +trace: each referral and its glue, lame or unreachable servers, the final answer and its TTLs. Not for one record: dig. Each hop is asked with RD=0 over TCP from the isitdns edge or a probe, named on the hop. Give the full host name: the walk ends at the zone that answers for it, and type (default A) is what it asks there.

    after · 79% of words in common

    Trace a delegation from the root to the authority, like dig +trace: each referral and its glue, the one server that answered at each zone cut and any dial that failed, the final answer and its TTLs. Not for every server of a zone: sweep_domain. Each hop is asked with RD=0 over TCP from the isitdns edge or a probe, named on the hop. Give the full host name: the walk ends at the zone that answers for it, and type (default A) is what it asks there.

  • digchangedinput schema
  • registrationchangeddescription
    before

    Read a domain's registration from its registry's RDAP server: each status with what it means for resolution, the registration, expiry and change dates, the nameservers, whether the delegation is signed. Use it to see whether a domain is expired or on hold, not for what DNS answers (check_domain, dig). Read over HTTPS from the isitdns edge through IANA's RDAP bootstrap, with no key and a limit of 100 calls a minute per address, and no contacts are returned. A hostname is read at the name, then each parent down to two labels, and each HTTP read is listed with its URL, status and time.

    after · 79% of words in common

    Read a domain's registration from its registry's RDAP server: each status with what it means for resolution, the registration, expiry and change dates, the nameservers, whether the delegation is signed. Not for what DNS answers: check_domain. Read over HTTPS from the isitdns edge through IANA's RDAP bootstrap, and no contacts are returned. A hostname is read at the name, then each parent down to two labels, and each HTTP read is listed with its URL, status and time.

  • sweep_domainchangeddescription
    before

    Sweep a zone's nameservers: the same names and types asked at a sample of its authoritative addresses, reporting disagreements, lame or silent servers, serial and TTL differences, and CAA and ACME readiness. Use it after a zone change or to see whether the servers agree, not for a public resolver's answer (dig) or the delegation (trace). Asked with RD=0 over TCP from the isitdns edge or a probe, named on each answer, with no key and a limit of 100 calls a minute per address. Every question not asked is listed with why, and an answer past 22,000 bytes is trimmed with counts, the whole sweep at its api: URL. names are labels under the zone (@ for the apex), 16 at most, and types 8 at most.

    after · 79% of words in common

    Sweep a zone's nameservers: the same names and types asked at a sample of its authoritative addresses, reporting disagreements, lame or silent servers, serial and TTL differences, and CAA and ACME readiness. Not for a public resolver's answer: dig. Asked with RD=0 over TCP from the isitdns edge or a probe, named on each answer. Every question not asked is listed with why, and an answer past 22,000 bytes is trimmed with counts, the whole sweep at its api: URL. names are labels under the zone (@ for the apex), 16 at most, and types 8 at most.

Showing the latest 10. Full history: list_changes · trend: quality JSON.

Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed. How it is computed.

Trust 77 / 100

multi-version-spamno-repository
provenance55
liveness98
freshness100
hygiene55

+dns-namespace +website +reachable +uptime-95% +updated-5d-ago -multi-version-spam(43) -no-repository

Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed. How it is computed.

Endpoints

remoteauthreachableuptime 30dp50protocollast ok
https://isitdns.net/mcp streamable-httpnoneyes95%234 ms2026-07-28, 2025-11-25, 2025-06-18, 2025-03-26, 2024-11-052026-10-20

Tools (6)

check_domainread-onlyCheck a domain that is not working: whether the name resolves in public DNS, then the eleven-check audit of its zone, each row ok, warn, fail or skipped with why. DNS only, not HTTP or TLS, and not for one record: dig. Measured from the isitdns edge and its probes, never the caller's network. from moves the recursion, TTL and UDP truncation rows to that region's probe.
digread-onlyDig one name and type at one board resolver, or at Cloudflare, Google, Quad9 and AdGuard side by side (resolver all): records, flags, rcode, EDE, latency. Not for a whole domain: check_domain. Asked over DoH from the isitdns edge. from moves the question to that region's probe as Do53 over UDP, and follow: true adds the CNAME chain as separate reads with DNSSEC off. A resolver given as an address must be on the board.
dnssec_chainread-onlyWalk the DNSSEC chain from the root to one answer: DS and DNSKEY at each signed zone cut, key tags, signers, signature windows, and the first link that breaks or goes insecure. Not for one signed record: dig. Read through Cloudflare's resolver over DoH with CD=1 from the isitdns edge, and a key set a break would rest on again through Google's. Signature bytes are not verified, so a clean walk does not prove the answer validates. type (default A) is the record checked at the end, not OPT, RRSIG or a meta type such as ANY.
registrationread-onlyRead a domain's registration from its registry's RDAP server: each status with what it means for resolution, the registration, expiry and change dates, the nameservers, whether the delegation is signed. Not for what DNS answers: check_domain. Read over HTTPS from the isitdns edge through IANA's RDAP bootstrap, and no contacts are returned. A hostname is read at the name, then each parent down to the registered domain, and each HTTP read is listed with its URL, status and time.
sweep_domainread-onlySweep a zone's nameservers: the same names and types asked at a sample of its authoritative addresses, reporting disagreements, lame or silent servers, serial and TTL differences, the CAA in effect, and each _acme-challenge TXT or CNAME. Not for a public resolver's answer: dig. Asked with RD=0 over TCP from the isitdns edge or a probe, named on each answer. Every question not asked is listed with why, and an answer past 22,000 bytes is trimmed with counts, the whole sweep at its api: URL. names are labels under domain (@ for domain itself), 16 at most, and types 8 at most.
traceread-onlyTrace a delegation from the root to the authority, like dig +trace: each referral and its glue, the one server that answered at each zone cut and any dial that failed, the final answer and its TTLs. Not for every server of a zone: sweep_domain. Each hop is asked with RD=0 over TCP from the isitdns edge or a probe, named on the hop. Give the full host name: the walk ends at the zone that answers for it, and type (default A) is what it asks there.

Schemas: list_tools.

Similar MCP servers

Official server.json
{
  "name": "net.isitdns/isitdns",
  "title": "isitdns",
  "$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
  "remotes": [
    {
      "url": "https://isitdns.net/mcp",
      "type": "streamable-http"
    }
  ],
  "version": "2026-10-15",
  "websiteUrl": "https://isitdns.net/agents",
  "description": "Is it DNS? Audit a site or domain that isn't working: one call says if it resolves and why. No key."
}