Skip to main content
Glama

dnsprobe

dnsprobe runs DNS and email-security diagnostics against the free, keyless intodns.ai public API: full domain scans, DNS lookups, DNSSEC validation, propagation checks, WHOIS/RDAP, and the email authentication stack — SPF (including flattening), DKIM discovery, DMARC, BIMI, MTA-STS, and blacklist checks. It also parses DMARC aggregate reports and raw emails locally, and generates HTTP security-header sets locally. One binary serves a command-line interface and a stdio MCP server.

This is a labelled core subset: 21 of the tools named in the upstream README's tool tables are built. The named tools not built are nis2_quickscan, get_everything_report, create_report_snapshot, get_report_snapshot, start_deep_scan, get_deep_scan_status, cancel_deep_scan, check_tlsa_dane, check_smtp_tls, check_fcrdns, check_sender_requirements, create_email_test, get_email_test, poll_email_test, explain_issue, generate_dns_fix, check_http3, get_hall_of_fame, read_llm_discovery, get_citation_guidance, and scan_csp. (The upstream README headline says 45 tools; its six tables enumerate 42 named tools.)

No API key is needed. The site base URL can be overridden with DNSPROBE_SITE_URL; when it is not set, calls go to https://intodns.ai. Upstream endpoint paths are documented reconstructions from the site's visible /api/... conventions — the public spec documents tool names and descriptions, not paths.

Install

npx @reneturcios/dnsprobe get_health

Or run the container image:

docker run -i ghcr.io/cloudcorprecords/dnsprobe

The container defaults to the MCP server (see below). Pass CLI arguments to use it as a CLI instead.

Related MCP server: nslookup.io MCP Server

CLI

Subcommands mirror the MCP tool names:

dnsprobe scan_domain example.com
dnsprobe lookup_dns example.com --type MX
dnsprobe validate_dnssec example.com
dnsprobe whois_lookup example.com
dnsprobe check_spf example.com
dnsprobe check_email_security example.com
dnsprobe analyze_security_headers https://example.com
dnsprobe generate_security_headers --preset strict --format nginx
dnsprobe get_health
dnsprobe get_pdf_report_link example.com

dnsprobe --version

Commands print the upstream JSON payload, the locally computed result, or the built link. Exit codes: 0 on success, 1 when a call fails (including an upstream API error), 2 for usage errors.

Five tools never call the network: parse_dmarc_report parses a DMARC aggregate (RUA) XML report into structured metadata, policy, and per-record SPF/DKIM/DMARC results with message totals; analyze_raw_email parses raw MIME headers (with unfolding), extracts the Authentication-Results SPF/DKIM/DMARC verdicts, and counts Received hops; generate_security_headers renders a header set from the recommended, strict, or report-only preset as raw headers or nginx, Apache, Caddy, Cloudflare, or _headers config; get_pdf_report_link and get_badge_link build {base}/api/pdf/{domain} and {base}/api/badge/{domain}.

MCP server

One bin serves both faces. The mcp subcommand starts a stdio MCP server:

npx -y @reneturcios/dnsprobe mcp

MCP client configuration:

{
  "mcpServers": {
    "dnsprobe": {
      "command": "npx",
      "args": ["-y", "@reneturcios/dnsprobe", "mcp"]
    }
  }
}

To point the server at a different intodns.ai-compatible host, add DNSPROBE_SITE_URL to the client's env for this server.

Tools

Tool

Input

What it returns

scan_domain

domain

Grade, score, DNS/email/security results, issues, recommendations.

lookup_dns

domain, optional type

DNS records for the domain.

validate_dnssec

domain

DNSSEC chain, DS/DNSKEY, and algorithm validation.

check_dns_propagation

domain

Propagation across global resolvers.

whois_lookup

query

WHOIS/RDAP data for a domain or IP.

check_spf

domain

SPF parse, lookup graph, and validation.

flatten_spf

domain

The SPF graph flattened to literal ip4/ip6 mechanisms.

discover_dkim

domain

Discovered DKIM selectors.

check_dmarc

domain

DMARC parse and policy validation.

parse_dmarc_report

xml

Structured DMARC aggregate report (local parse).

check_bimi

domain

BIMI DNS, logo URL, and VMC/CMC readiness.

check_mta_sts

domain

MTA-STS DNS and policy-file validation.

check_blacklist

domain

Blacklist status for the domain's mail servers.

check_email_security

domain

Full SPF/DKIM/DMARC/blacklist check with score and issues.

analyze_raw_email

raw

Header and authentication analysis of a raw email (local).

analyze_security_headers

url

Present/missing HTTP security headers for a live site.

generate_security_headers

optional preset, format

A generated security-header set and config snippet (local).

get_health

(none)

API, cache, and runtime health.

get_stats

(none)

Public scan/check counters.

get_pdf_report_link

domain

The {base}/api/pdf/{domain} URL (local).

get_badge_link

domain

The {base}/api/badge/{domain} URL (local).

Development

npm install
npm run build   # tsc -> dist/
npm test        # node test runner over test/*.test.ts, no network (fake fetch fixtures)
npm run dev     # run the CLI from source via tsx

License

MIT — see LICENSE.

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables DNS and email security analysis through passive and active scanning capabilities. Provides comprehensive domain security checks including SPF, DMARC, DNSSEC validation, MX record analysis, and SMTP connectivity testing.
    MIT
  • A
    license
    A
    quality
    C
    maintenance
    Provides comprehensive tools for real-time DNS queries across 53 record types, global propagation checks, and SSL certificate analysis. It also enables domain security scans for SPF/DKIM/DMARC configurations and HTTP uptime monitoring.
    8
    141 npm
    23
    Apache 2.0
  • A
    license
    A
    quality
    B
    maintenance
    Domain security reconnaissance for AI agents — 13 tools (DNS+DNSSEC, SSL/TLS, HTTP security headers, SPF/DKIM/DMARC email auth, port scan, ASN, RDAP/WHOIS) plus a one-shot security_scan returning a 0–100 Health Score (A–F). Free, no API key.
    33
    626 npm
    1
    MIT