BounceLens Email Check

io.github.akshaycu777-uiv1.0.0Updated Oct 3, 2026

Check emails for typos, disposable domains and dead domains. Runs locally, no API key.

Overview

AI-generated overview

Checks email addresses for typos, disposable domains, dead domains, bad syntax, role addresses and duplicates, running locally without an API key.

What it does
Provides two tools: check_email for a single address and check_emails for up to 500 addresses at once, returning a summary with counts plus one result per address in input order. Each result gives a status of invalid, risky or unconfirmed, with reasons, flags for disposable, role, free, duplicate and gateway, a did_you_mean suggestion, the mail provider and MX data. It detects domain typos, throwaway domains, dead or null-MX domains, bad syntax, role addresses, free providers and Gmail dot and plus-tag duplicates.
When to use it
Useful before sending to or saving a list of addresses, for example cleaning sign-ups, dropping invalid and disposable entries, fixing mistyped domains and removing duplicates. Best suited to quick list hygiene inside an MCP client rather than mailbox-level verification.
Requirements
Runs locally as a stdio process and needs Node.js 18 or newer; it can be started with npx or from a clone. No API key, account or sign-up is required. It makes DNS lookups over HTTPS to Cloudflare's resolver, so network access is needed.
Before you install
It never contacts the recipient's mail server, so it cannot confirm a mailbox exists; the best result is unconfirmed. Only the domain part of each address is sent to Cloudflare's DNS-over-HTTPS resolver, while the full address stays on the machine. Results are advisory and may flag legitimate addresses as risky.

Installation

In SourceWeft

  1. Open BounceLens Email Check in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

BounceLens Email Check – MCP server

[smithery badge]

Lets Claude, Cursor and other MCP clients check email addresses before you send to them or save them. It finds:

  • Typos in the domain: [email protected] → did you mean [email protected]?
  • Disposable / throwaway domains (mailinator.com, 10minutemail and ~9,000 more)
  • Dead domains: the domain doesn't exist, has no mail server, or says it accepts no email (null MX)
  • Bad syntax, role addresses (info@, sales@), free providers, and duplicates (Gmail dot and +tag variants count as the same inbox)
  • The mail provider behind the domain (Google, Microsoft, Proofpoint, …)

Runs on your machine. No API key, no account, no sign-up. The only network calls are DNS lookups over HTTPS (Cloudflare 1.1.1.1). It uses the same checks as the free checker at bouncelens.com.

It never connects to the recipient's mail server, so it can't confirm that a mailbox exists. The best result is unconfirmed (format and domain OK). To check a whole CSV in your browser, use bouncelens.com.

Install

Requires Node.js 18 or newer. Also listed on Smithery.

Claude Code

sh
claude mcp add bouncelens -- npx -y github:bouncelens/mcp-email-check

Claude Desktop, Cursor, Windsurf and other clients. Add this to the client's MCP config (claude_desktop_config.json, .cursor/mcp.json, …):

json
{  "mcpServers": {    "bouncelens": {      "command": "npx",      "args": ["-y", "github:bouncelens/mcp-email-check"]    }  }}

From a clone

sh
git clone https://github.com/bouncelens/mcp-email-check.gitcd mcp-email-check && npm install# then use: "command": "node", "args": ["/path/to/mcp-email-check/index.js"]

Tools

ToolInputReturns
check_emailemail (string)One result
check_emailsemails (array, max 500)summary with counts + one result per address, in input order

Each result (real output for a mistyped Outlook address):

json
{  "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}
statusMeaning
invalidWill bounce: bad syntax, domain doesn't exist, no mail server, or null MX
riskyDisposable domain, likely typo, no MX record (mail would go to the web server), or the DNS lookup failed
unconfirmedFormat and domain OK. The mailbox itself isn't checked

Example prompts

  • "Check these sign-ups for fake or mistyped emails: …"
  • "Is [email protected] a real address?"
  • "Clean this list: drop invalid and disposable addresses, fix the typos, remove duplicates."

Privacy

Addresses never leave your machine. Only the domain part is sent to Cloudflare's DNS-over-HTTPS resolver (1.1.1.1) to look up its MX/A records.

Development

sh
npm installnpm test          # offline: DNS answers are faked

lib/engine.js and data/disposable.json are generated from the BounceLens main codebase, so change them there.

More from BounceLens

  • bouncelens.com – free email list checker in your browser (CSV in, clean list out)
  • Craft CMS plugin – blocks fake and mistyped emails in Craft forms

License

MIT. Disposable-domain list: disposable-email-domains (CC0).

Source: README.md at commit bf6d9ed

Tools

0
Tool metadata has not been indexed yet.

Version history

1
  1. v1.0.0LatestOct 3, 2026