MCP + catch-all addresses

What your AI agent gets back on a catch-all address

A catch-all domain accepts every address, so a live SMTP check can't tell a real mailbox from a made-up one. Here is exactly what the HeroBounce MCP server returns in that case, how an agent should read it, and where the honest limits are.

What each MCP server documents for catch-alls

Based on each vendor's public MCP documentation as of September 2026. Vendors change their tools, so check the linked pages for the current behavior.

MCP serverHow a catch-all shows upConfidence score
ZeroBounceFinal status value catchall (“Domain accepts all emails”)None documented in the README
BouncerSurfaced as a quality signal next to deliverable / risky / undeliverable / unknownNot shown on the linked page
HeroBouncestatus: risky with is_catch_all: true and a 0-1 confidenceYes, on every result

Two real responses

The response shape is the live MCP output. Confidence and provider values are taken from real production validations; addresses are anonymized.

A confident score

{
  "email": "alex.morgan@example-company.com",
  "status": "risky",
  "confidence": 0.77,
  "is_valid": false,
  "is_deliverable": true,
  "provider": "google",
  "is_catch_all": true,
  "is_disposable": false,
  "is_spam_trap": false,
  "cached": false
}

Catch-all domain, but the address fits what we know about the domain. The status staysrisky by design; the signal is the confidence.

The hard case: a security gateway

{
  "email": "sam.rivera@example-enterprise.com",
  "status": "risky",
  "confidence": 0.5,
  "is_valid": false,
  "is_deliverable": true,
  "provider": "proofpoint",
  "is_catch_all": true,
  "is_disposable": false,
  "is_spam_trap": false,
  "cached": false
}

Behind a secure email gateway such as Proofpoint, the mailbox genuinely can't be known from outside. We return an honest 0.50 instead of pretending.

How an agent should read it

Branch on confidence, not on status or is_deliverable. For catch-all addresses the status is risky and is_deliverable is true, so neither tells you which side of the line an address falls on.

if result.is_catch_all:
    if result.confidence >= 0.70:   send
    elif result.confidence <= 0.30: skip
    else:                           hold for review

The 0.70 and 0.30 cut-offs are a sensible default for cold outbound, not a law. Tighten or loosen them to match how much bounce risk your sender reputation can absorb.

The honest numbers

Across all catch-all validations in the last 90 days (tens of thousands of addresses, all users):

About half
get a confident score (0.70 or above, or 0.30 or below)
~5%
come back as an exact 0.50 - a coin flip
~1 in 5
sit behind a security gateway, where a coin flip is more common

A confident score is not a guarantee. We have not yet published a reproducible accuracy benchmark, and until we do, treat the score as a triage signal for which addresses to send, skip, or hold - not as verified deliverability.

Try it yourself in three steps

  1. Connect the HeroBounce MCP server to Claude, Cursor or another MCP client.
  2. Paste this prompt, using a domain you actually send to:
Validate jane.doe@<a-domain-you-are-targeting>.com with HeroBounce.
If the domain is catch-all, tell me the confidence score and
whether it is safe to send at a 0.70 threshold.
  1. Ask any other MCP email validator the same question and compare what comes back.

The MCP server needs an API key, which is included with Pay As You Go (from $2.10) and every paid plan. Catch-all scoring depth varies by plan - see pricing. Free accounts can validate in the dashboard but not through the API or MCP.