SimpleVerifier MCP server
Give Claude, Cursor or any MCP client the SimpleVerifier checks as tools: verify an email address, verify a list of up to 1,000 addresses as a job, check a phone number's format, and look up a domain's MX, SPF, DMARC and disposable status. It needs a paid SimpleVerifier API key.
Endpoint and authentication
The server speaks Streamable HTTP at one URL. Send your API key in the Authorization header on every request. Keys come with the Pro and Email + Phone plans and are created on the API keys page. Keep them out of shared config files and repositories.
https://simpleverifier.com/api/mcp
Authorization: Bearer sv_live_...Set it up
Replace YOUR_API_KEY with your key, then restart or reload the client.
Run once in a terminal:
claude mcp add --transport http simpleverifier https://simpleverifier.com/api/mcp --header "Authorization: Bearer YOUR_API_KEY"Check it with claude mcp list, or /mcp inside a session.
Tools
| Tool | What it does |
|---|---|
| verify_email | One address: valid, risky or invalid, with a reason. Syntax, domain, disposable and live mailbox (SMTP) checks. |
| verify_emails_batch | Queue up to 1,000 addresses as one list job and get a job_id back. |
| get_job_status | Progress of a list job: rows checked, counts by status, and whether it is done. |
| get_job_results | Per-address results of a list job, filtered by status and paged 500 rows at a time. |
| validate_phone_format | Format, E.164 form, country and numbering-plan line type. A format check only: it does not say whether a number is in service or on any messaging app. |
| check_mx | A domain's MX records: whether it can receive mail. |
| check_spf | A domain's SPF record: present, single, how it ends, and the top-level lookup count. |
| check_dmarc | A domain's DMARC record and policy, with the parent-domain fallback receivers use. |
| check_disposable_domain | Whether a domain or an address's domain is a known disposable email provider. |
The email statuses mean the same as in the REST API: valid means the mail server confirmed the mailbox, risky means it may work but delivery isn't confirmed, and invalid means don't send. For a list, the agent calls verify_emails_batch, polls get_job_status until done is true, then reads rows with get_job_results.
Limits
- 120 requests a minute per API key, shared with the REST API. Every MCP request counts, including initialize and tools/list.
- verify_emails_batch takes up to 1,000 addresses a call. For bigger lists, upload a CSV in the dashboard.
- get_job_results returns up to 500 rows a call; follow next_offset for the rest.
- A single mailbox check can take up to 30 seconds when a mail server is slow.
- Mailbox checks share a daily allowance. When it runs out, verify_email answers risky with a retry time, and list jobs hold the remaining rows until it resets (get_job_status shows them as waiting).
Errors
Authentication and rate-limit failures come back as HTTP errors with a JSON-RPC error body. Problems with a single tool call, such as a malformed domain or an unknown job id, come back as a tool result with isError: true and a plain-English message the agent can act on.
| 401 | No API key, or the key is wrong or revoked. The response carries a WWW-Authenticate: Bearer header. |
| 402 | The key's subscription isn't active. |
| 429 | More than 120 requests a minute on one key. Wait and retry. |
| 405 | GET or DELETE. The server is stateless, so it only takes POST. |
Common questions
- Do I need a paid plan to use the SimpleVerifier MCP server?
- Yes. The MCP server authenticates with a SimpleVerifier API key, and API keys come with the paid plans: Pro at $29.99/month or Email + Phone at $49.99/month. Create a key on the API keys page after you subscribe.
- Does the MCP server cost extra per call?
- No. It uses the same plan as the REST API, with no per-call credits. The per-key rate limit applies to MCP and REST requests together.
- Can validate_phone_format tell me if a number is in service or on WhatsApp?
- No. It checks the number against its country's numbering plan and returns the E.164 form, country and the line type the range is allocated for. It does not contact any network, so it can't show whether a number is connected or registered on any app.
- Which MCP transport does SimpleVerifier use?
- Streamable HTTP at a single endpoint, without sessions. Any client that supports remote HTTP servers and a custom Authorization header can connect.