Give Claude, Cursor, VS Code or any AI agent a real email verifier. The official MailTester Ninja MCP server lets an agent check whether an address exists, by asking the recipient’s mail server live, and find a person’s work email from their name and company domain. It is a remote server: nothing to install, one URL to add.
What you need
- An MCP client that supports remote servers over Streamable HTTP: Claude (Desktop, Code and claude.ai), Cursor, VS Code with GitHub Copilot, Windsurf and many others.
- A key: a free API token to try verify_email (50 checks a day, one request every 30 seconds), or a paid key for full speed and for find_email.
- The server URL:
https://mcp.mailtester.ninja/mcp
Set it up
Claude Code
claude mcp add --transport http mailtester-ninja https://mcp.mailtester.ninja/mcp --header "X-API-Key: YOUR_KEY"
Claude Desktop and claude.ai
Open Settings, Connectors, Add custom connector, and paste the server URL with your key at the end:
https://mcp.mailtester.ninja/mcp?key=YOUR_KEY
Cursor
Add the server to ~/.cursor/mcp.json:
{
"mcpServers": {
"mailtester-ninja": {
"url": "https://mcp.mailtester.ninja/mcp",
"headers": { "X-API-Key": "YOUR_KEY" }
}
}
}VS Code with GitHub Copilot
Add the server to .vscode/mcp.json. VS Code asks for the key once and stores it securely:
{
"servers": {
"mailtester-ninja": {
"type": "http",
"url": "https://mcp.mailtester.ninja/mcp",
"headers": { "X-API-Key": "${input:mailtester-key}" }
}
},
"inputs": [
{ "type": "promptString", "id": "mailtester-key", "description": "MailTester Ninja key", "password": true }
]
}Other clients
Use the URL https://mcp.mailtester.ninja/mcp with the header X-API-Key: YOUR_KEY (or Authorization: Bearer YOUR_KEY). If your client only accepts a URL, add ?key=YOUR_KEY to it.
The two tools
| Tool | What it does | Input | Returns |
|---|---|---|---|
verify_email | Checks live whether an address exists and can receive mail. No message is sent. | code (ok, ko or mb), message (Accepted, Rejected, Catch-All, No MX, Disposable…), domain, mx | |
find_email | Tries the usual address patterns for a person at a company and returns the first one the mail server accepts. Stops early on catch-all domains and domains without a mail server. Paid key only; each pattern tried counts as one check. | first_name, last_name, domain, middle_name (optional) | found, email, tried, reason |
What to ask your agent
- “Is jane.doe@example.com a real, deliverable address?”
- “Check these 20 signups and tell me which ones will bounce.”
- “Find the work email of John Smith at example.com.”
The server tells the agent to report the verdict it received, never to guess one, and to treat mb as uncertain rather than valid.
Keep your key secret
Prefer the header to the ?key= URL when your client supports it, and keep the key in the client’s secret settings. Anyone who sees a key in a shared configuration file or a screenshot can use it.
Questions
Is this the official MailTester Ninja server?
Yes. It is run by MailTester Ninja on mcp.mailtester.ninja and listed in the official MCP Registry as ninja.mailtester/email-verification.
Is anything stored?
No. Each address is checked in real time, and neither the MCP server nor the API keeps a copy of the addresses you verify.
Can I try it for free?
Yes. With a free API token, verify_email works for 50 checks a day. find_email needs a paid key, because it runs several checks in a row.
Try it now
Get a free API token, or see the plans for up to 200,000 checks a day. Building your own tool instead? See the API documentation, the OpenAPI specification and the code examples. Back to all integrations.