Dnsprobe

io.github.CloudCorpRecordsPublished by GitHub account CloudCorpRecordsv0.1.0Updated Nov 3, 2026

DNS and email-security diagnostics via the keyless intodns.ai API: scans, SPF, DMARC, headers.

VerifiedSTDIODesktop only

Overview

Dnsprobe's local MCP server; no sign-in required; STDIO.

No AI overview yet: these facts come from the registry entry and the server itself.

Installation

In SourceWeft

  1. Open Dnsprobe in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

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

bash
npx @reneturcios/dnsprobe get_health

Or run the container image:

bash
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.

CLI

Subcommands mirror the MCP tool names:

bash
dnsprobe scan_domain example.comdnsprobe lookup_dns example.com --type MXdnsprobe validate_dnssec example.comdnsprobe whois_lookup example.comdnsprobe check_spf example.comdnsprobe check_email_security example.comdnsprobe analyze_security_headers https://example.comdnsprobe generate_security_headers --preset strict --format nginxdnsprobe get_healthdnsprobe 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:

bash
npx -y @reneturcios/dnsprobe mcp

MCP client configuration:

json
{  "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

ToolInputWhat it returns
scan_domaindomainGrade, score, DNS/email/security results, issues, recommendations.
lookup_dnsdomain, optional typeDNS records for the domain.
validate_dnssecdomainDNSSEC chain, DS/DNSKEY, and algorithm validation.
check_dns_propagationdomainPropagation across global resolvers.
whois_lookupqueryWHOIS/RDAP data for a domain or IP.
check_spfdomainSPF parse, lookup graph, and validation.
flatten_spfdomainThe SPF graph flattened to literal ip4/ip6 mechanisms.
discover_dkimdomainDiscovered DKIM selectors.
check_dmarcdomainDMARC parse and policy validation.
parse_dmarc_reportxmlStructured DMARC aggregate report (local parse).
check_bimidomainBIMI DNS, logo URL, and VMC/CMC readiness.
check_mta_stsdomainMTA-STS DNS and policy-file validation.
check_blacklistdomainBlacklist status for the domain's mail servers.
check_email_securitydomainFull SPF/DKIM/DMARC/blacklist check with score and issues.
analyze_raw_emailrawHeader and authentication analysis of a raw email (local).
analyze_security_headersurlPresent/missing HTTP security headers for a live site.
generate_security_headersoptional preset, formatA 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_linkdomainThe {base}/api/pdf/{domain} URL (local).
get_badge_linkdomainThe {base}/api/badge/{domain} URL (local).

Development

bash
npm installnpm 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.

Source: README.md at commit 098254e

Tools

0
SourceWeft has not started this package in its sandbox yet, so its tools are not known.

Version history

1
  1. v0.1.0LatestNov 3, 2026

Score

50% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts