Email testing inside your AI assistant.

The Unspam MCP server gives Claude, ChatGPT, Cursor and other MCP clients 42 tools for spam checks, inbox placement, client previews, email verification, DMARC reports and automatic tests, with no API keys to copy.

Ask in plain language. Your assistant picks the tools.

Each conversation below uses real Unspam tools. The replies are examples.

Score an email from the chat

The assistant starts a check and gives you the address to send to. When the result is in, it explains the score signal by signal, and can pull the screenshots and the attention and focus heatmaps.

Spam checker API

Example conversation

Run a spam check and tell me when it's done.

  • start_spam_check
  • get_spam_check_result
  • get_spam_check_screenshots
  • get_spam_check_heatmap

Done. The score is 85 out of 100, and SPF, DKIM and DMARC all pass.

Tools
42
Tool groups
7
Sign-in
OAuth 2.1
Rate limit
100 a minute

Add it to your client.

The server URL is the same everywhere. Your client opens a browser once so you can sign in and approve access.

claude mcp add --transport http unspam https://api.unspam.email/mcp

# then run /mcp in a session and sign in
{
  "mcpServers": {
    "unspam": {
      "url": "https://api.unspam.email/mcp"
    }
  }
}

# add to ~/.cursor/mcp.json, then click Login under Settings, MCP
https://api.unspam.email/mcp

# Settings, Connectors, Add custom connector, then paste this URL
https://api.unspam.email/mcp

# Settings, Apps, turn on Developer mode, then add a custom app with this URL and OAuth
{
  "mcpServers": {
    "unspam": {
      "serverUrl": "https://api.unspam.email/mcp"
    }
  }
}

# add to ~/.codeium/windsurf/mcp_config.json, then refresh the Cascade MCP panel
npx -y mcp-remote https://api.unspam.email/mcp

# any remote MCP client takes the URL; this bridge is for clients that only support stdio

Why teams connect Unspam over MCP.

Remote MCP over OAuth, no keys to manage.

The server speaks JSON-RPC 2.0 over HTTP and authenticates with OAuth 2.1 + PKCE. Your assistant opens a browser, you sign in once, and the client caches the token. Nothing to paste, nothing to rotate by hand.

The whole Unspam workflow as tools.

The tools cover spam checks, inbox placement, automatic tests and their SMTP senders, screenshots, heatmaps, client previews in 50+ real clients and devices, DMARC reports, email verification of single addresses and lists, and account status. Your assistant reads the catalog and picks the right call for each request.

Works with the clients teams already use.

Claude Desktop (custom connector or the mcp-remote bridge), Claude Code, Cursor, ChatGPT Developer Mode (Plus, Pro, Business), Windsurf, and any MCP client that supports remote streamable-HTTP servers.

One connection, revoke anytime.

The link shows up under Connected apps on the API & MCP page of your account, so you can revoke any client on its own. MCP comes with the Custom plan and draws on your plan's monthly limits.

Follow-ups work too.

Your assistant keeps the context, so you can keep asking about the same test or domain instead of starting over.

See pricing
  • How much of my monthly quota is left?

    Reads your plan and the limits you have left.

  • Show me the screenshots, heatmap and email client previews for my last spam check.

    Pulls all three for the same test.

  • Trigger my newsletter automatic test now and show the latest run's results.

    Runs it on the spot, then reads the run.

  • Who sent email as yourdomain.com last week, and did it pass DMARC?

    Reads the aggregate reports down to each source.

What the connection looks like end to end.

Approve one OAuth screen, hand your assistant the full Unspam tool set, then ask for tests in plain language.

Approve one OAuth screen, no keys to copy.

Your client registers itself with Dynamic Client Registration, then runs the Authorization Code grant with PKCE (S256). You sign in through the browser and approve a single consent screen scoped to mcp.

After that, the client caches the token and renews it for you. A missing or invalid token returns 401, and a token without the mcp scope or a plan without MCP access returns 403.

The full tool catalog, ready for the assistant.

Once connected, your assistant sees all {tools} tools, listed further down this page. They cover every job from get_account_status and start_spam_check to configure_scheduled_test and get_email_list_results.

No separate SDK to wire up. The client reads the catalog over MCP and exposes each tool to the model directly.

Failures your assistant can read.

A tool that cannot finish answers with a readable message, such as "Sender not found" or a spent monthly limit, so the assistant can explain it or try something else.

Protocol problems, such as an unknown tool or a missing sign-in, come back as JSON-RPC errors.

How to connect in four steps.

MCP comes with the Custom plan. Add the server URL to your client, approve one sign-in screen, then talk to your assistant in plain language.

  1. 01

    Get the Custom plan

    MCP comes with the Custom plan, from a $5 monthly minimum. Free accounts cannot connect. Once you're connected, get_account_status shows your plan and the limits you have left.

  2. 02

    Add the server URL in your client

    Claude Code: claude mcp add --transport http unspam https://api.unspam.email/mcp. Cursor: add {"url":"https://api.unspam.email/mcp"} to ~/.cursor/mcp.json. Claude Desktop and ChatGPT: paste the same URL as a custom connector.

  3. 03

    Approve the OAuth consent screen

    Your client opens a browser, you sign in to Unspam, and you approve access scoped to mcp. The token is cached, so you only do this once per client.

  4. 04

    Ask your assistant to run a test

    Try "Run a spam check and tell me when it is done." The assistant calls start_spam_check, polls get_spam_check_result, and reports the score back in the chat.

One server. Every Unspam tool.

42 tools in 7 groups, as the server lists them. The documentation has every argument.

Read the docs
Account 1 tool
  • get_account_status
Spam Check 8 tools
  • start_spam_check
  • list_spam_checks
  • get_spam_check_result
  • get_spam_check_screenshots
  • get_spam_check_heatmap
  • create_client_preview
  • list_client_previews
  • list_client_preview_devices
Inbox Placement 4 tools
  • list_mailboxes
  • start_inbox_placement_test
  • list_inbox_placement_tests
  • get_inbox_placement_result
Automatic Testing: Senders 6 tools
  • create_scheduled_test_sender
  • list_scheduled_test_senders
  • get_scheduled_test_sender
  • update_scheduled_test_sender
  • delete_scheduled_test_sender
  • test_scheduled_test_sender_connection
Automatic Testing: Tests and Runs 10 tools
  • create_scheduled_test
  • set_scheduled_test_email
  • get_scheduled_test
  • list_scheduled_tests
  • configure_scheduled_test
  • set_scheduled_test_status
  • dispatch_scheduled_test
  • delete_scheduled_test
  • list_scheduled_test_runs
  • get_scheduled_test_run
DMARC Reports 8 tools
  • create_dmarc_domain
  • list_dmarc_domains
  • get_dmarc_domain
  • get_dmarc_dns_instructions
  • verify_dmarc_domain
  • list_dmarc_reports
  • get_dmarc_report
  • get_dmarc_report_records
Email Verification 5 tools
  • verify_email
  • get_email_verification
  • create_email_list
  • get_email_list
  • get_email_list_results

Frequently asked questions about the MCP server.

Supported clients, pricing, authentication, rate limits, and how to revoke access.

Which clients are supported?
Any MCP client that supports remote streamable-HTTP servers. That includes Claude Desktop (custom connector or the mcp-remote bridge), Claude Code, Cursor, ChatGPT in Developer Mode (Plus, Pro, Business), and Windsurf. The setup is always the same server URL: https://api.unspam.email/mcp.
Is it free?
No. MCP comes with the Custom plan, from a $5 monthly minimum, and with older paid plans that already include it. Free accounts cannot connect. Run get_account_status from your assistant to see your plan and remaining monthly limits.
How does authentication work?
OAuth 2.1 with Dynamic Client Registration and the Authorization Code grant with PKCE (S256), scoped to mcp. You sign in through a browser once and the client caches the token. There are no API keys to copy or rotate by hand, and you can revoke the connection anytime.
What can the assistant actually do?
Seven groups of tools: account status; spam checks with results, screenshots, heatmaps and client previews; inbox placement; SMTP senders for automatic tests; automatic tests and their run history; DMARC reports; and email verification of one address or a list of up to 100,000. Ask in plain language, for example "Render this campaign and flag anything broken in Outlook dark mode," and the assistant chains the right calls.
What are the rate limits?
Requests are limited to 100 a minute per account, and past that the server returns 429. Separately, tests draw on your plan's monthly limits, which get_account_status shows. When a limit runs out, the tool answers with a message your assistant can read. A missing or invalid token returns 401, and a token without the mcp scope or a plan without MCP access returns 403.
How do I revoke access?
The connection appears under Connected apps on the API & MCP page of your Unspam account, where you can revoke it at any time. Full setup details for each client are in the MCP server documentation.
Can it do everything the REST API does?
Nearly. The per-IP DMARC breakdown and uploading a list as a CSV or TXT file are in the REST API only. Over MCP, a list is sent as an array of addresses.
Can an agent find the server by itself?
Yes. api.unspam.email publishes OAuth discovery documents, a server card at /.well-known/mcp/server-card.json, and an agent skill listed at /.well-known/agent-skills/index.json.

Connect your AI assistant to Unspam.

MCP comes with the Custom plan, bought online from a $5 monthly minimum.