MCP serverdev.dnsdoctor/dns-doctor
Scan, fix, verify and monitor DNS: SPF, DMARC, DKIM, propagation, health, expiry.
Read more
Scan, fix, verify and monitor DNS: SPF, DMARC, DKIM, propagation, health, expiry. Validated fixes.Overview
Score?
UNRATED 0.793
of what a free look can see, on 31 looks
Looks
36
last 21 min ago
Tools
22
changed 2 days ago
More info
URL
dnsdoctor.dev/mcp
streamable-http
Says it is
dns-doctor 1.10.0
protocol 2025-06-18
In the record since
32 days ago
Among servers18,413 with a card
0median 0.606 · this server 0.793 · highest on record 0.8561
Toolsfrom sha256:87cfbe03ae…2df88b · +2 −0 2 days ago
| Tool | Schema |
|---|---|
| add_monitored_domain Add a domain to the signed-in user's DNS Doctor monitoring and return the ownership-check TXT record they must publish, plus where their DNS is hosted, a provider-specific guide li |
input · output |
| audit_spf_includes Use this when the user asks who can send email as their domain through SPF includes, or wants an SPF supply-chain or third-party sender audit. Audit a domain's SPF supply chain: wa |
input · output |
| build_dmarc_upgrade Use this when the user asks how to move DMARC on from p=none, whether it is safe to tighten DMARC, or what the next DMARC policy step is for a domain (a scan can justify quarantine |
input · output |
| build_parked_domain_records Use this when the user asks how to protect a domain that sends no email from being spoofed. Build the three-record hardening pack that makes a NON-SENDING domain unusable for spoof |
input · output |
| check_dkim_selector Use this when the user asks whether DKIM is set up for a sending platform, whether a specific selector exists, or why DKIM fails. Check ONE specific DKIM selector on a domain — the |
input · output |
| check_domain_verification Check whether the ownership TXT record for a domain the user has added is visible yet, and mark it verified when it is. The result says WHICH outcome occurred and which nameservers |
input · output |
| check_lookalikes added Use this when the user asks about lookalike, look-alike, typosquat or impersonation domains of their domain, or whether someone has registered a name close to theirs. DNS-only: che |
input · output |
| check_propagation Use this when the user asks whether a DNS change has propagated globally, or why a record shows in one place and not another. Check whether a DNS change has propagated GLOBALLY: si |
input · output |
| check_record Use this when the user asks whether a DNS change has landed, wants a DNS record looked up, or wants to verify a record they just published — or whenever answering needs the live va |
input · output |
| check_reverse_dns Use this when the user asks about reverse DNS, PTR records, or FCrDNS for a mail server IP. Check one sending IP's forward-confirmed reverse DNS (FCrDNS): reads the IP's PTR record |
input · output |
| count_spf_lookups Use this when the user asks about SPF 'too many lookups', the 10-lookup limit, an SPF PermError, or whether an SPF record is valid. Validate an SPF record and count what it costs. |
input · output |
| generate_dmarc_record Use this when the user asks to create, generate or write a DMARC record for a domain that has none. Build a DMARC record from scratch for a domain that has none, using a validating |
input · output |
| get_alerts Use this when a signed-in operator asks what changed on a monitored domain, or what the monitoring has flagged. Read the monitoring alert log for the domains the caller's account m |
input · output |
| get_domain_records Read the records a domain the user monitors still needs: the ownership check while it is unverified, and once verified the DMARC reporting record plus whether we have OBSERVED that |
input · output |
| get_lookalikes added Use this when a signed-in operator asks which lookalike domains of a monitored domain the watch has found, how risky they are, or for one's takedown evidence. Requires an API token |
input · output |
| get_readiness Use this when a signed-in operator asks whether a monitored domain is ready for the next DMARC step. Read the DMARC enforcement-readiness verdict for ONE domain the caller's accoun |
input · output |
| get_report Use this for the same questions as scan_domain when a recent report is enough (the cheap first look); use scan_domain when the state must be re-read now. Return the stored report f |
input · output |
| lookup_registration Use this when the user asks who owns a domain, when it expires, which registrar or nameservers it has, whether it is registered, or whether a transfer or delete lock is set — the W |
input · output |
| parse_dmarc_report Use this when the user uploads or pastes a DMARC aggregate (RUA) XML report and asks what it says. Parse ONE DMARC aggregate (RUA) report into readable per-source aggregates: who s |
input · output |
| scan_domain Use this when the user asks to check, audit, diagnose or troubleshoot SPF, DKIM, DMARC, email authentication, email deliverability DNS, why their mail lands in spam, MX, DNS health |
input · output |
| start_monitoring_signup Use this when the user wants DMARC monitoring, RUA report monitoring, new-sender monitoring, email-authentication alerts, ongoing DNS monitoring, or to start a DNS Doctor trial — a |
input · output |
| validate_dmarc_record Use this when the user pastes a DMARC record and asks whether it is valid, correct or safe. Validate a pasted DMARC record: parsed tags, level'd findings, and whether it is valid. |
input · output |
Verify it yourself
npx teppi-check https://dnsdoctor.dev/mcpcurl -s https://api.teppi.xyz/v1/trust/mcp/mcs_01M1FZ2A85D8SS8YJMEJR77WZ0