Email check MCP server
BounceLens Email Check is a free MCP server. It lets Claude, Cursor, Grok Build and other AI tools check email addresses before you send to them or save them.
- Typos:
[email protected]comes back withdid_you_mean: [email protected]. - Dead domains: domains that don't exist, have no mail server, or say they accept no email.
- Throwaway addresses: Mailinator, 10minutemail and thousands more.
- Also flagged: bad format, shared inboxes (info@, sales@), free providers, and duplicates. Gmail dot and +tag copies count as the same inbox.
- Mail provider: who hosts the domain's email (Google, Microsoft, Proofpoint and others).
It runs on your own computer. No API key, no account, no sign-up. It needs Node.js 18 or newer.
Install
Claude Code
claude mcp add bouncelens -- npx -y github:bouncelens/mcp-email-check
Claude Desktop
Download bouncelens-email-check-1.0.0.mcpb and open it. Claude Desktop shows an install button. Or use the JSON config below.
Grok Build
grok mcp add bouncelens -- npx -y github:bouncelens/mcp-email-check
The GitHub repository is also a Grok Build plugin: the MCP server plus a skill that tells Grok when to check addresses and how to read the result.
Cursor, Windsurf and other MCP clients
Add this to the client's MCP config file (for example .cursor/mcp.json or claude_desktop_config.json):
{
"mcpServers": {
"bouncelens": {
"command": "npx",
"args": ["-y", "github:bouncelens/mcp-email-check"]
}
}
}
Tools
| Tool | Input | Returns |
|---|---|---|
check_email | One address | One result |
check_emails | Up to 500 addresses | A summary with counts, and one result per address in the same order |
Things to ask:
- "Check these sign-ups for fake or mistyped emails: …"
- "Is [email protected] a real address?"
- "Clean this list: drop invalid and throwaway addresses, fix the typos, remove duplicates."
The result
Output for a mistyped Outlook address:
{
"input": "[email protected]",
"email": "[email protected]",
"status": "risky",
"reasons": ["No MX record; mail would go to the website server", "Looks like a typo of outlook.com"],
"flags": { "disposable": false, "role": false, "free": false, "duplicate": false, "gateway": false },
"did_you_mean": "[email protected]",
"provider": null,
"mx": null
}
| status | Meaning |
|---|---|
invalid | Will bounce: bad format, the domain doesn't exist, has no mail server, or accepts no email. |
risky | Throwaway domain, likely typo, no MX record, or the DNS lookup failed. |
unconfirmed | Format and domain are fine. The mailbox itself is not checked. |
How it works
- It uses the same checks as the email list checker on this site.
- The only network calls are DNS lookups over HTTPS to Cloudflare (1.1.1.1), for the domain's MX and A records.
- It never connects to the recipient's mail server, so it can't tell whether a mailbox really exists. The best result is
unconfirmed.
Privacy
Addresses are checked on your computer and are not sent to BounceLens. Only the domain name (the part after the @) is sent to Cloudflare's public DNS, never the full address. Your AI tool itself sees the addresses you give it, as it does with anything you paste. See the Privacy Policy.
Listed on
- GitHub (source, MIT license)
- Official MCP Registry
- Smithery and Glama
Without an AI tool
- Email check API: the same checks as free JSON.
- Google Sheets add-on and n8n node.
- Email list checker: paste a list or upload a CSV in the browser.
Support
Questions or a wrong result? Email [email protected] or open an issue on GitHub. If a result looks wrong, the domain (the part after the @) is enough.