{"ok":true,"site":{"host":"dns.ninja","url":"https://dns.ninja/","type":"live","category":"Developer Tools","desc":"DNS Ninja offers free DNS lookups, reverse DNS and domain intelligence for researching domains, IP addresses and DNS records.","tools":[{"name":"ip_reputation","kind":"act","impl":"imperative","description":"Check an IP address reputation against 100+ real-time blocklists (DNSBLs). Returns listing status, threat categories, AS info, and blocklist details.","inputSchema":{"type":"object","properties":{"ip":{"type":"string","description":"IPv4 or IPv6 address to check (e.g., 8.8.8.8, 2001:4860:4860::8888)"}},"required":["ip"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"lookup_dns","kind":"answer","impl":"imperative","description":"Lookup DNS records (A, AAAA, MX, NS, TXT, CNAME, SOA) for a given hostname. Also returns domain reputation info (Majestic, Tranco rankings, blocklist status).","inputSchema":{"type":"object","properties":{"hostname":{"type":"string","description":"Hostname or domain to lookup (e.g., example.com, www.example.com)"}},"required":["hostname"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"reverse_lookup_dns_records","kind":"answer","impl":"imperative","description":"Find hostnames that use a specific DNS record value. Query which hostnames point to an IP address, use a particular nameserver, or reference any DNS value. For example: 'which hostnames point to 1.2.3.4?' or 'which hostnames use chris.ns.cloudflare.com as their nameserver?'","inputSchema":{"type":"object","properties":{"value":{"type":"string","description":"The DNS record value to search for (e.g., IP address, nameserver hostname, mail server, CNAME target)"},"record_type":{"type":"string","description":"Type of DNS record to search (A, AAAA, NS, MX, CNAME, TXT)","default":"A","enum":["A","AAAA","NS","MX","CNAME","TXT"]},"limit":{"type":"integer","description":"Maximum number of hostnames to return","default":100,"minimum":1,"maximum":1000},"offset":{"type":"integer","description":"Offset for pagination","default":0,"minimum":0}},"required":["value"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"reverse_lookup_mx","kind":"answer","impl":"imperative","description":"Find hostnames that use a specific mail server. For example: which hostnames use aspmx.l.google.com as their mail server?","inputSchema":{"type":"object","properties":{"mx_server":{"type":"string","description":"The mail server hostname to search for (e.g., aspmx.l.google.com, mx1.example.com)"},"limit":{"type":"integer","description":"Maximum number of hostnames to return","default":100,"minimum":1,"maximum":1000},"offset":{"type":"integer","description":"Offset for pagination","default":0,"minimum":0}},"required":["mx_server"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"reverse_lookup_ns","kind":"answer","impl":"imperative","description":"Find hostnames that use a specific nameserver. For example: which hostnames use chris.ns.cloudflare.com as their nameserver?","inputSchema":{"type":"object","properties":{"nameserver":{"type":"string","description":"The nameserver hostname to search for (e.g., chris.ns.cloudflare.com, ns1.example.com)"},"limit":{"type":"integer","description":"Maximum number of hostnames to return","default":100,"minimum":1,"maximum":1000},"offset":{"type":"integer","description":"Offset for pagination","default":0,"minimum":0}},"required":["nameserver"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"reverse_lookup_ip","kind":"answer","impl":"imperative","description":"Find hostnames that point to a specific IP address (IPv4 or IPv6). Searches both A and AAAA records. For example: which hostnames point to 1.2.3.4?","inputSchema":{"type":"object","properties":{"ip":{"type":"string","description":"The IP address to search for (IPv4 or IPv6)"},"limit":{"type":"integer","description":"Maximum number of hostnames to return","default":100,"minimum":1,"maximum":1000},"offset":{"type":"integer","description":"Offset for pagination","default":0,"minimum":0}},"required":["ip"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"historic_reverse_lookup_ns","kind":"answer","impl":"imperative","description":"Find hostnames that *previously* used a specific nameserver but no longer do. Tracks infrastructure migrations and past delegation relationships.","inputSchema":{"type":"object","properties":{"nameserver":{"type":"string","description":"The nameserver hostname to search for (e.g., chris.ns.cloudflare.com, ns1.example.com)"},"limit":{"type":"integer","description":"Maximum number of hostnames to return","default":100,"minimum":1,"maximum":1000},"offset":{"type":"integer","description":"Offset for pagination","default":0,"minimum":0}},"required":["nameserver"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"historic_reverse_lookup_mx","kind":"answer","impl":"imperative","description":"Find hostnames that *previously* used a specific mail server but no longer do. Tracks email provider migrations and past MX relationships.","inputSchema":{"type":"object","properties":{"mx_server":{"type":"string","description":"The mail server hostname to search for (e.g., aspmx.l.google.com, mx1.example.com)"},"limit":{"type":"integer","description":"Maximum number of hostnames to return","default":100,"minimum":1,"maximum":1000},"offset":{"type":"integer","description":"Offset for pagination","default":0,"minimum":0}},"required":["mx_server"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"historic_reverse_lookup_ip","kind":"answer","impl":"imperative","description":"Find hostnames that *previously* pointed to a specific IP address but no longer do. Tracks hosting migrations and past IP relationships. Searches both A and AAAA records.","inputSchema":{"type":"object","properties":{"ip":{"type":"string","description":"The IP address to search for (IPv4 or IPv6)"},"limit":{"type":"integer","description":"Maximum number of hostnames to return","default":100,"minimum":1,"maximum":1000},"offset":{"type":"integer","description":"Offset for pagination","default":0,"minimum":0}},"required":["ip"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"domain_rdap","kind":"act","impl":"imperative","description":"Queries the authoritative RDAP registry for a domain. Returns availability status (HTTP 404 = available), and for registered domains: registrar name, registration/expiration dates, nameservers, DNSSEC status, and domain status flags. Uses IANA bootstrap to find the correct RDAP server per TLD. Covers 590+ TLDs.","inputSchema":{"type":"object","properties":{"domain":{"type":"string","description":"Domain name to look up (e.g., example.com)"}},"required":["domain"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"dns_differential","kind":"act","impl":"imperative","description":"Resolve a domain through filtered public DNS resolvers and their unfiltered controls to detect provider threat-feed blocks.","inputSchema":{"type":"object","properties":{"domain":{"type":"string","description":"Domain to check"}},"required":["domain"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"}],"apiSurface":"spec","favicon":"/favicons/dns.ninja.png","toolCount":11}}