Email verification API: syntax, MX and disposable checks
Check email syntax, DNS and MX records, disposable providers, role addresses, free providers and SPF/DMARC presence. Returns likely-deliverable, risky, undeliverable or invalid with reasons. No message is sent and the mail server is not contacted. These are DNS and syntax signals, not proof that a mailbox exists or accepts delivery. Use before sending mail or saving a signup.
When to use it
- Check an address before sending mail or saving a signup
- Flag disposable, role and free-provider addresses
- See whether the domain has MX records and SPF/DMARC
Guide: Email verification API
Inputs
| Name | Type | Description |
|---|---|---|
address (required) | string | The email address to check |
Request
Over HTTP, with a card key from /credits:
curl -H "Authorization: Bearer adt_…" "https://tools.funwords.eu/email?address=support%40cloudflare.com"
Or one of your 25 free calls, no key:
curl "https://tools.funwords.eu/email?address=support%40cloudflare.com&trial=1"
Without a key, the same URL answers 402 Payment Required with x402 and MPP terms, so an agent with a wallet pays per call in USDC (Base, Polygon, Arbitrum or Solana over x402; Base or Tempo over MPP) and retries.
Example result
{
"address": "support@cloudflare.com",
"validSyntax": true,
"domain": "cloudflare.com",
"domainExists": true,
"acceptsMail": true,
"disposable": false,
"roleAddress": true,
"freeProvider": false,
"hasSpf": true,
"hasDmarc": true,
"verdict": "likely-deliverable",
"reasons": [
"role address, not a person"
]
}
From an AI agent (MCP)
Add the MCP server to Claude, Cursor or any MCP client. This tool is email, and the first 25 successful calls are free:
https://tools.funwords.eu/mcp
Questions
Does it send an email?
No. No message is sent and the mail server is not contacted; the result comes from syntax and DNS signals.
Does it prove the mailbox exists?
No. It returns likely-deliverable, risky, undeliverable or invalid with reasons, which are signals, not proof of delivery.
How do I pay?
Each successful call costs $0.01; failed calls are not charged. The first 25 calls are free. Then pay with card credits (from $1; the key goes in an Authorization header or, for clients that can only fetch a URL, as api_key= in the URL) or per call in USDC over x402 or MPP. No account is needed.