Email Spam Tester

Warp

Test the mail server from the terminal you run it in

Warp's agent already has your shell. Give it this server and it can check what your relay really sends, then look up the records itself.

Copy the config

42 checks · No key · No account

What to ask

Test the relay

Send a test message through the local Postfix to a test address and read the report.

Sent. Port 25 answered and the report is building.

Fix reverse DNS

The report says the PTR does not match. Check it with dig and tell me what to ask the host for.

dig shows the host's default name. Here is the request to send them.

Check DKIM

Compare the DKIM selector in this report with what opendkim is signing with: [report link]

The selectors differ. The key table still points at the old one.

When did your relay last
send a real test?

Add it in Warp

Warp takes the same JSON most clients use, so you can paste it as it is.

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

Four tools arrive with the connection

If you run your own mail server, the fix is usually a command away: a Postfix setting, a DKIM key. A PTR record means a request to your host, and the agent can tell you what to ask for. A terminal agent with the report in front of it can do most of that with you watching.

Warp
/mcp
  • get_test_address

    Reserves a one-hour address. With placement switched on, you also get a list of mailboxes at different providers.

  • wait_for_report

    Holds until the checks finish, then returns the scores, the failed and warned checks with their evidence, and the fix plan.

  • get_report

    Reads an existing report by its slug, including how far the folder check has got.

  • get_message_source

    Returns the email as it arrived, headers in wire order, for an hour after delivery.

Questions

Why does it want a real email instead of pasted text?

About half of the checks read what the sending platform adds: the DKIM signature, the path through its servers, the unsubscribe headers. Pasted text has none of those, so the model would be guessing.

What can the server see?

What you send to the test address. The raw message stays for an hour after it arrives and then only the report remains, at a link anyone with the slug can open. Test mail you would be fine showing a colleague, and read the privacy policy for the rest.

Is the score the same as on the website?

Yes. It is the same analysis and the same report page, so a run from a chat can be compared with one from the home page.

Can the agent change my server?

Warp asks before it runs commands, according to your agent settings. The server here only reads reports.

Is it also in Warp Drive?

Warp lists MCP servers in Warp Drive too, and the same config works there.

Can I keep it in a file?

Yes, in ~/.warp/.mcp.json or .warp/.mcp.json in a project. Warp asks you to approve edits to it.

Send one real email and read what came back

Copy the config