Email Spam Tester

GitHub Copilot

在 pull request 發現問題前,先讓 Copilot 測試郵件

在 VS Code 加入一個伺服器,Copilot 就能在 agent mode 中對專案寄出的郵件執行真實的垃圾郵件測試。

複製設定

42 項檢查 · 無需金鑰 · 無需帳戶

可以問什麼

審查前檢查

測試這個 branch 中修改過的發票郵件,並列出所有變差的項目。

有一項檢查變差了:純文字部分現在是空的。

修正失敗項目

逐一處理這份報告中未通過的檢查,並修改能在程式碼中修正的項目:[報告連結]

其中兩項已在程式碼中修正。第三項需要你設定 DNS 記錄。

加入 CI

將 Email Spam Tester GitHub Action 加入我們的工作流程,用來檢查 templates/ 下的變更。

已加入工作流程。它需要三個 repository secrets。

在 VS Code 中新增伺服器

檔案放在工作區根目錄,整個團隊都能隨 repo 取得。

https://email-spam-tester.com/mcp
{  "mcpServers": {    "email-spam-tester": {      "type": "http",      "url": "https://email-spam-tester.com/mcp"    }  }}

已經在使用 .vscode/mcp.json?

該檔案有自己的格式。最上層的 key 是 servers。

{
  "servers": {
    "email-spam-tester": {
      "type": "http",
      "url": "https://email-spam-tester.com/mcp"
    }
  }
}

程式碼審查會讀 diff。
沒人會讀標頭。

連線後會提供四個工具

DMARC 對齊失效時,測試套件不會有任何測試失敗。把伺服器放進 repo 的設定後,專案中的每個人只要輸入提示詞,就能使用相同的測試,也不需要設定金鑰。

GitHub Copilot
/mcp
  • get_test_address

    保留一個有效一小時的地址。開啟收件匣位置測試後,你也會取得不同服務供應商的信箱清單。

  • wait_for_report

    等待檢查完成,然後回傳分數、未通過和有警告的檢查及其證據,以及修正計畫。

  • get_report

    依 slug 讀取現有報告,包括資料夾檢查的進度。

  • get_message_source

    郵件送達後一小時內,傳回收到的原始郵件,標頭依傳輸順序排列。

常見問題

為什麼需要真實郵件,而不是貼上的文字?

大約一半的檢查會讀取寄送平台加入的內容,包括 DKIM 簽章、郵件通過伺服器的路徑,以及取消訂閱標頭。貼上的文字沒有這些資訊,所以模型只能猜測。

伺服器能看到什麼?

你寄到測試地址的內容。原始郵件會在抵達後保留一小時,之後只留下報告。任何知道該 slug 的人都能透過連結開啟報告。請只寄送你不介意讓同事看到的測試郵件,其餘內容請閱讀隱私權政策。

分數和網站上的一樣嗎?

一樣。使用的是相同的分析和報告頁面,所以你可以比較從聊天執行的結果與首頁上的結果。

這個檔案需要 secrets 嗎?

不需要。伺服器不需要金鑰,所以設定檔可以提交。

VS Code 會在執行工具前詢問嗎?

是,除非你已允許這些工具,否則工具呼叫會照常透過 VS Code 要求確認。

那要如何在每次 push 時檢查?

使用 GitHub Action。驗證失敗或分數下降時,job 就會失敗。

寄送一封真實郵件,查看收到的結果

複製設定