Verify an Email Before It Ever Hits Your List
Why we verify every email at capture with one Strale email-validate call on Monid, so bad addresses never reach your list or your sender reputation.

Copy this line to your agent to verify an email before you add it to your list.
set up https://monid.ai/SKILL.md and use strale to validate an email before it hits your list
A bad email address charges you twice. First it bounces, which wastes the send. Then the bounce drags down the sender reputation that decides whether every other message you send lands in an inbox or a spam folder. The cheap fix is to move the check earlier: verify an address the moment it is captured, not after it has already gone into a campaign. One classification call at the form beats an audit of the list after the damage is done. We built the flow around Strale on Monid because it makes that single check a one-line habit. Monid is a pay-per-call data API marketplace: one interface and one wallet to discover and run hundreds of external data endpoints without a separate signup per vendor, priced per call at the number shown before you run.
TL;DR
- Verify at capture, not at send. A single
/x402/email-validatecall classifies an address before it enters your list, so dead and disposable addresses never touch your bounce rate. - One call returns the whole verdict: RFC 5322 syntax, MX records, disposable-domain detection across thousands of throwaway domains, role-based address detection, free-provider flags, a typo suggestion (gmial.com back to gmail.com), and a deliverability assessment.
- It is a gate, not a chore. Run it in the form handler or the agent step that found the address, and only clean rows move forward.
- Pricing is per call and shown by a free
monid inspectbefore you spend. Verification draws from the same wallet as your scraping and enrichment, so it is a line item, not a second vendor to reconcile. Current prices sit at monid.ai/tools. - Monid ships as an MCP server, so an agent verifies inline the instant it captures an address.
Set up once
For agents
Grab an API key at app.monid.ai, then paste this to your agent and hand it the key:
set up https://monid.ai/SKILL.md
It learns the whole discover, inspect, run workflow itself. More details in the agent quickstart.
For humans
npm install -g @monid-ai/cli
monid keys add --label main --key <your-api-key>
More details in the CLI quickstart.
Principle 1: One call classifies the address
You cannot eyeball a bad address. Syntax that reads fine can still break RFC 5322, a domain whose website loads can have no MX record, and a throwaway domain looks like any other until you check it against a known list. So we do not try to reason about an address. We ask one endpoint that already knows.
/x402/email-validate is a GET that takes a single email query parameter and returns the full assessment in one response: RFC 5322 syntax, MX records, disposable-domain detection across thousands of known throwaway domains, role-based address detection (info@, sales@, and the like), free-provider flags, a typo suggestion that turns gmial.com back into gmail.com, and a deliverability assessment. That is enough to decide, per address, whether a row stays or goes.
monid inspect -p api.strale.io -e /x402/email-validate # schema + price (free)
monid run -p api.strale.io -e /x402/email-validate \
--query '{"email": "jane@acme.com"}' -w
# -> syntax, MX, disposable, role, free-provider, typo suggestion, deliverability
# billed per call, price shown before it ran
The -w flag waits inline and hands the verdict straight back, which is exactly what a form handler or an agent step wants.
Principle 2: Run the gate at the form, not the campaign
The most common mistake is to treat verification as list cleanup: collect addresses all quarter, then scrub the pile before a big send. By then the damage is baked in. A typo captured in March is a dead row in June, and a disposable address someone used to grab a lead magnet has been sitting on your list pretending to be a person.
Move the check to the edge. Wire email-validate into the place an address is born: the signup form handler, the import job, the agent step that scraped a contact off a company page. A clean address goes on the list. A typo gets the suggested correction offered back to the user. A no-MX or disposable address never makes it in. Nothing dead ever reaches the campaign, because nothing dead ever reached the list.

Principle 3: Read the per-call price before you run
Because verification is metered per call, the price is a fact you check, not a plan you commit to. A free monid inspect prints the schema and the exact price for the endpoint before a single cent moves, and a free monid discover -q "email verification" returns the options ranked with provider, description, and price. Discover and inspect cost nothing; run is the only paid step, billed at the price already shown.
That matters at the shape of a real workload. An agent that qualifies leads and hits email-validate a hundred-ish times a day is a single-digit-dollar habit, at a fraction of a cent to a few cents per call, and every one of those numbers was visible before it ran. There is no pack to size in advance and no minimum to clear. Current per-endpoint prices live at monid.ai/tools.
Principle 4: One wallet, so verification is a line item not a vendor
A dedicated verifier turns your money into a single-purpose balance that only ever buys email checks. If the same week also needs a few hundred profiles scraped and a batch of companies enriched, that is more vendors, more balances, and more meters to reconcile.
On Monid, email-validate is one endpoint among hundreds drawing from the same pay-as-you-go wallet as your scraping, enrichment, and search. The dollar you did not spend verifying addresses is still there for the next lookup. Nothing is pre-committed to one purpose and nothing expires on a credit clock. Verification stops being a separate account and becomes one more line on a bill you already read.
Principle 5: MCP-native, so the agent verifies inline
The whole point of moving the check to capture is that a human is often not in the loop at capture. An agent is. Because Monid ships as an MCP server, an agent that just pulled a contact off a page can inspect email-validate, run it on the address it found, and route the result without a human babysitting a separate verification tool. The verdict comes back in the same step that produced the address, so the gate closes the moment the address appears.
When the domain, not the mailbox, is the question
Sometimes a mailbox is fine but the whole domain is the problem, or you want to know whether your own sending domain is even configured to land. Strale splits that out into /x402/email-deliverability-check, which takes a domain and reports its SPF, DKIM, and DMARC posture. Run it on your own domain before a cold campaign and on a partner's domain before you trust it. It is a separate call, so you pay for that depth only when you ask for it.
FAQ
Why verify at capture instead of before the send? Because a bad address costs you the bounce and the sender-reputation hit that follows it, and the reputation hit affects every later message, not just the one that bounced. Checking at capture stops the bad row from ever entering the list, so there is nothing to clean up and nothing to poison your deliverability.
Is one email-validate call enough?
For deciding whether an address belongs on a list, yes. One call covers syntax, MX, disposable-domain detection, role-based patterns, free-provider flags, a typo suggestion, and a deliverability assessment. Reach for the domain-level email-deliverability-check when the question is about a whole domain's SPF, DKIM, and DMARC rather than one mailbox.
How much does this cost?
Per call, at a fraction of a cent to a few cents for the basic validate, always shown before it runs by a free monid inspect. There is no pack to pre-buy and nothing that expires, because it draws from the same shared wallet as the rest of your data stack. Current prices are at monid.ai/tools.
Can my agent do this without me? Yes. Monid ships as an MCP server, so an agent inspects the endpoint and runs the verification inline the moment it captures an address, with no separate meter to manage.
Try it
Take twenty addresses you already know the answer for, run a free monid discover for email verification, inspect /x402/email-validate to see its schema and price, and validate them. If the verdicts match what you know, wire that one call into the form or the agent step that captures addresses, and let one wallet cover the whole pipeline. Start at monid.ai.