Email Deliverability Checker

io.github.kryptoscan由 GitHub 帳號 kryptoscan 發布v0.1.0更新於 Oct 29, 2026

Check SPF, DKIM, DMARC, blocklists, reverse DNS and email headers against Gmail/Yahoo sender rules.

已驗證Streamable HTTP可網頁執行溝通與協作安全與監控

概覽

AI 產生的概覽

唯讀的 MCP 伺服器,用來診斷郵件送達率:SPF、DKIM、DMARC、黑名單、反向 DNS 與收到的郵件標頭。

可以做什麼
  • 檢查網域的 SPF 記錄與查詢次數、DMARC 政策與回報、常見選擇器上的 DKIM 金鑰以及 MX 記錄,依嚴重程度列出問題並附上修正建議,同時辨識所用的郵件服務。
  • 檢查寄信 IP 的反向 DNS 及是否回指該 IP,並查詢其在多個黑名單中的收錄情況。
  • 將貼上的郵件標頭對照 Gmail 與 Yahoo 的大量寄件要求檢查:SPF、DKIM、DMARC、From 對齊、一鍵退訂、TLS、反向 DNS 與 Message-ID。
適用情境
適合網域或伺服器寄出的郵件落入垃圾郵件匣、設定 SPF、DKIM 與 DMARC,或在大量寄送前確認郵件是否符合 Gmail 與 Yahoo 的大量寄件要求。
執行需求
託管版本以遠端 HTTP 端點提供,不需帳號或 API 金鑰,依 IP 限流。自行部署需要 Node.js 20 以上版本,或使用 Docker。選用變數 BLOCKLIST_DNS 與 DNS_SERVERS 可將查詢導向自建解析器。
安裝前請注意
工具為唯讀:只讀取公開 DNS 或你貼上的標頭文字,不儲存任何內容。託管版本使用公共解析器,因此 Spamhaus 結果會顯示為 refused(未知)而非真實收錄;需私有解析器才能取得真實結果。對齊判斷採簡化規則,特殊後綴可能誤判。README 中推廣了廠商的付費寄信服務。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Email Deliverability Checker,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Web executable,透過 Streamable HTTP。 遠端服務在工作區中設定後即可從網頁執行環境執行。

交給代理程式安裝

把這段提示詞貼上到 Claude Code、Codex、Cursor 等代理程式,或 SourceWeft 對話中。代理程式會讀取該伺服器的安裝指南,先向你展示發布者、端點和登入方式,經你同意後再把它新增到你的客戶端。金鑰不會寫進任何命令。

閱讀 https://sourceweft.com/mcp/io.github.kryptoscan%2Femail-deliverability-mcp/install.md,並按其中說明把這個 MCP 伺服器接入我的客戶端。修改任何設定之前,先告訴我它的發布者、端點和登入方式,等我確認。不要把 API 金鑰寫進命令或我會提交的檔案;問我金鑰應從哪裡取得。

檢視代理程式所依據的安裝指南

其他 MCP 客戶端

把它新增到你客戶端的 mcpServers 設定中。

{
  "mcpServers": {
    "email-deliverability-checker": {
      "type": "http",
      "url": "https://api.ownmailserver.com/tools/mcp"
    }
  }
}

README

email-deliverability-mcp

An MCP server that lets Claude (or any MCP client) diagnose email deliverability:

  • check_domain: SPF (including the 10-DNS-lookup limit), DMARC policy and reporting, DKIM keys on common selectors, and MX records, with a ranked list of problems and the fix for each. It also names the email services a domain uses (Google Workspace, SendGrid, Amazon SES and others).
  • check_sending_ip: reverse DNS (PTR) and whether it resolves back to the IP, plus listings on Spamhaus ZEN, Barracuda, SpamCop, PSBL, Mailspike and UCEPROTECT level 1.
  • check_email_headers: paste a received message's headers and check them against Gmail's and Yahoo's sender requirements: SPF, DKIM, DMARC, From alignment, one-click unsubscribe (and whether DKIM covers it), TLS, reverse DNS and Message-ID.

Every tool is read-only: it reads public DNS or the text you give it. Nothing is sent anywhere else, and no account or API key is needed.

Use it without installing

A hosted copy runs at:

https://api.ownmailserver.com/tools/mcp

Add it to Claude as a custom connector (Settings → Connectors → Add custom connector), or in Claude Code:

sh
claude mcp add --transport http email-deliverability https://api.ownmailserver.com/tools/mcp

It's free and needs no account. It's rate-limited per IP, uses public DNS resolvers (so Spamhaus results show as "refused"; see below), and stores nothing. For heavy use or a real Spamhaus answer, run your own copy.

Install

Requires Node.js 20 or later.

Claude Code

sh
claude mcp add email-deliverability -- npx -y email-deliverability-mcp

Claude Desktop (claude_desktop_config.json)

json
{  "mcpServers": {    "email-deliverability": {      "command": "npx",      "args": ["-y", "email-deliverability-mcp"]    }  }}

Docker

sh
docker build -t email-deliverability-mcp .docker run -i --rm email-deliverability-mcp

Things to ask

  • "Check example.com's email setup and tell me what to fix first."
  • "Why might our emails from shop.example be going to spam?" (then paste a message's headers)
  • "Is 192.0.2.25 on any blocklists? Does its reverse DNS look right?"
  • "Does this email meet Gmail's bulk sender rules?"
  • "Our SPF record fails sometimes. Are we over the lookup limit?"

Configuration

VariableDefaultWhat it does
BLOCKLIST_DNSthe system resolverComma-separated IPs of a recursive resolver you run, used for blocklist lookups.
DNS_SERVERSthe system resolverComma-separated resolver IPs for all other lookups.

Why BLOCKLIST_DNS matters

Spamhaus refuses queries that arrive through big public resolvers (8.8.8.8, 1.1.1.1 and the like) and answers 127.255.255.x instead. Many blocklist checkers misread that as "listed". This server reports it as refused, meaning unknown, and says so. To get a real Spamhaus answer, point BLOCKLIST_DNS at a recursive resolver of your own, such as unbound on 127.0.0.1.

How the checks work

  • SPF lookups follow include: and redirect= recursively and count every include, a, mx, ptr, exists and redirect term, as RFC 7208 does. More than 10 is a permanent error at most receivers.
  • DKIM keys sit under selectors that only the sender knows, so the server probes about 30 common ones. Pass your own with dkim_selectors (find it in the s= value of a message's DKIM-Signature header). Domains that answer every name (wildcard DNS) are detected and not reported as having keys.
  • Header checks read the topmost Authentication-Results header, which is what the recipient's mailbox provider concluded, and the newest Received hop that names the sending server.
  • Alignment compares organizational domains with a simple rule (the last two labels, or three for names like example.co.uk). It's not a full Public Suffix List lookup, so unusual suffixes may be misjudged.

Development

sh
npm installnpm test          # unit tests with a fake DNS resolvernpm run build     # compiles to dist/npm run start:http  # the HTTP version (PORT, MCP_PATH, TRUST_PROXY, RATE_LIMIT, GLOBAL_LIMIT)

About

Built by OwnMailServer, which runs dedicated email sending for businesses that send 250,000 to 1,000,000 emails a month: your own server and IP, a Resend-style API and SMTP, managed warm-up and daily monitoring. OwnMailServer accounts also get a Claude connector for their own sending data: delivery stats, bounces, complaints and message history.

The same checks are available as free web tools: the email health checker and the bulk sender checker.

License

MIT

來源:README.md,提交 5981484

工具

3

check_domain

Check a domain's email DNS

Check a domain's SPF (including the 10-DNS-lookup limit), DMARC policy and reporting, DKIM keys on common selectors, and MX records. Returns problems ranked by severity with the fix for each, plus the email services the domain uses.

輸入參數domain必填dkim_selectors

check_sending_ip

Check a sending IP

Check a mail server's IP: reverse DNS (PTR) and whether it resolves back to the IP, and listings on Spamhaus ZEN, Barracuda, SpamCop, PSBL, Mailspike and UCEPROTECT level 1. A refused Spamhaus query is reported as unknown, never as a listing.

輸入參數ip必填

check_email_headers

Check email headers

Check a received email's headers against Gmail's and Yahoo's bulk sender requirements: SPF, DKIM and DMARC results, From domain alignment, one-click unsubscribe (and whether DKIM covers it), TLS, reverse DNS and Message-ID. Use the full headers as the recipient got them (Gmail: Show original).

輸入參數headers必填

版本歷史

1
  1. v0.1.0最新Oct 29, 2026

評分

已滿足適用檢查項的 100%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通必需25 分
  • 已宣告認證方式必需10 分
  • 已列出工具必需15 分
  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分