The email testing MCP server for coding agents.

Your agent sends the email, waits for it to land, looks at it in Gmail and Outlook, fixes the template and checks again. One hosted server, signed in with OAuth.

  • 500 emails a month, no card
  • EU-hosted
  • OAuth, no API key

Claude Code

  1. Add the server in your terminal.

    claude mcp add --transport http mailloop https://api.mailloop.io/mcp
  2. Run /mcp, pick mailloop and choose Authenticate.

  3. Sign in to Mailloop in the browser. No API key to copy.

Cursor

  1. Create an API key in Settings, Organization, API keys.

  2. Add the server to your Cursor config.

    ~/.cursor/mcp.json
    {
      "mcpServers": {
        "mailloop": {
          "url": "https://api.mailloop.io/mcp",
          "headers": { "Authorization": "Bearer ml_live_xxx" }
        }
      }
    }

ChatGPT

  1. In ChatGPT, claude.ai or Claude Desktop, open Settings, Connectors and choose Add custom connector.

  2. Paste the server URL.

    https://api.mailloop.io/mcp
  3. Sign in to Mailloop and approve the organization.

VS Code, Windsurf, Zed and other clients

Mailloop is an MCP server for email testing. It gives Claude Code, Cursor, claude.ai and ChatGPT a real test inbox: create a sandbox, wait for the email your app sends, read its links, render it in Gmail, Outlook and Apple Mail, and check again after a fix.

The test loop your agent runs

Capture

Wait for the real email, then read it

The agent creates a temporary sandbox and signs up with its address, or points the app's SMTP at it. wait_for_email holds until the message lands; get_email returns the subject, the HTML and every link, so the agent can open the verification link itself.

Agent mailloop MCP

Sign up on staging with a fresh address and open the verification link.

mailloop wait_for_email "Verify"
"Verify your email" from [email protected]
mailloop get_email links
https://staging.acme.dev/verify?token=vf_7d1e

The link opens /verify on staging and the account is confirmed.

Render

See it the way Gmail and Outlook draw it

screenshot_email renders the captured email for up to four clients at a time, light or dark, and says what each client changed. The agent looks at the images and the findings, not just the HTML it wrote. Slide across: Outlook classic drops the button padding Gmail keeps.

The same email rendered in Outlook classic for Windows: no card, and the button reduced to highlighted text
A confirmation email rendered in Gmail on the web: a white card with a padded blue button
Renders by Mailloop client screenshots
Iterate

Fix the template and check again

When a render shows a problem, the agent edits the template, triggers the email again and renders the same client until it passes. The loop you would run by hand across a few inboxes, done in one conversation.

emails/verify.html +2 −2
<tr>
Removed: <td align="center">
Added: <td align="center" style="padding: 14px 28px">
Removed: <a href="{{url}}" style="padding: 14px 28px">
Added: <a href="{{url}}">
Verify email
</a>
</td>

One hosted MCP server, set up in a minute in

  • Claude Code
  • Cursor
  • claude.ai
  • ChatGPT

What teams ask their agent to check

Plain requests in the chat. The agent picks the tools.

Signup and verification

"Sign up on staging with a fresh address, wait for the verification email and open its link."

Password reset

"Request a reset for [email protected] and check the link points at staging and the token survives."

A redesigned template

"I changed the receipt layout. Render it in Outlook classic and Gmail on iOS, light and dark."

Localized emails

"Switch the account to German, trigger the welcome email and check the subject and the dates."

A missing email

"List what staging captured in the last hour and tell me why the invite never arrived."

Webhooks

"Add a webhook to my tunnel, fire a test event and show me the delivery log."

Email MCP server, common questions

The MCP docs list every tool. Testing from code instead? The SDK has the same wait call. Comparing tools? See how Mailloop compares.

Is there an MCP server for email testing?
Yes. Mailloop runs a hosted MCP server at https://api.mailloop.io/mcp. Claude Code, Cursor, claude.ai and ChatGPT use it to create an email sandbox, wait for the email an app sends, read its content and links, and render it the way Gmail, Outlook and Apple Mail show it.
How do I test emails with Claude Code?
Run claude mcp add --transport http mailloop https://api.mailloop.io/mcp, then /mcp and Authenticate. Ask Claude Code to test a flow, for example "sign up on staging and check the verification email". It creates a temporary sandbox, triggers the signup, calls wait_for_email and checks the subject, the HTML and the links.
Can an AI agent check how an email looks in Outlook and Gmail?
Yes. screenshot_email renders a captured email for a chosen client, light or dark, and reports what that client changed, such as dropped padding in Outlook classic. The agent can fix the template, send again and render the same client until it looks right.
Does the Mailloop MCP server need an API key?
Not for Claude Code, claude.ai, Claude Desktop or ChatGPT: they sign in through the browser with OAuth. Cursor, VS Code, Windsurf and Zed pass a Mailloop API key as a bearer token.
Can the agent email real people by accident?
No. A sandbox captures every email the app sends and delivers none of them. Sending a captured email to a real inbox is a separate tool that only works for addresses you verified yourself.
Which email MCP servers are there?
Sending providers such as Mailtrap, Postmark or SendGrid expose MCP servers for sending and account management. Mailloop is built for testing: its tools create sandboxes, wait for emails and render them in email clients, and the server is hosted with OAuth, so there is nothing to run locally.

Last updated

Give your agent a test inbox

Add the server in one command and sign in. 500 captured emails a month on the free plan, no credit card.