UChecker MCP Server
OfficialClick on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@UChecker MCP ServerValidate support@uchecker.net and tell me if it's good or bad."
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
UChecker MCP Server
An MCP server for the UChecker email validation API. It lets an AI assistant validate email addresses, track validation tasks, read per-address results and account analytics, and export cleaned lists — without you writing any API glue.
Ten tools, three resources and two guided prompts, over either stdio (local) or Streamable HTTP (remote).
Quick start
Local (stdio)
You need a UChecker API key from app.uchecker.net.
// Claude Desktop: claude_desktop_config.json
// Claude Code: .mcp.json
{
"mcpServers": {
"uchecker": {
"command": "node",
"args": ["/path/to/mcp/build/stdio.js"],
"env": { "UCHECKER_API_KEY": "uk_..." }
}
}
}The key can also be passed as --api-key=uk_.... Build first with npm ci && npm run build.
Remote (Streamable HTTP)
A hosted instance runs at https://api.uchecker.net/mcp. It is stateless: the
API key travels on every request, and no session is kept between calls.
curl -X POST https://api.uchecker.net/mcp \
-H 'Content-Type: application/json' \
-H 'Accept: application/json, text/event-stream' \
-H 'x-api-key: uk_...' \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call",
"params":{"name":"get_account_balance","arguments":{}}}'Authorization: Bearer uk_... works as well. Health check: GET /mcp/health.
To run your own instance, see docs/DEPLOYMENT.md.
The remote endpoint authenticates with an API key header, not OAuth, so clients that can only do OAuth or cannot set custom headers need the stdio build instead.
Related MCP server: Verifly MCP Server
Configuration
Variable | Mode | Default | Purpose |
| stdio | — | Required. Also settable via |
| both |
| Upstream API. Also |
| http |
| URL shown to users in download hints, when the server reaches the API over an internal network. |
| http |
| Listen port. |
In HTTP mode the key is never configured server-side — it comes from the
x-api-key or Authorization: Bearer header of each request, so one instance
serves many accounts.
Tools
Tool | What it does | Costs credits |
| Queue one address for validation | 1 |
| Queue a batch (max 10 000 per call) | 1 per address |
| Status and progress of a task | — |
| Poll until completed/failed, with progress notifications | — |
| Per-address results, paged and filterable | — |
| Counts, deliverability %, rejection reasons | — |
| Save the full result list to a file (stdio) or return a curl command (http) | — |
| Paginated task history | — |
| Remaining credits | — |
| Account-wide totals and averages | — |
Full parameter and output reference: docs/TOOLS.md.
Resources
uchecker://account/balance— remaining creditsuchecker://tasks— 20 most recent tasksuchecker://tasks/{taskId}/analytics— analytics for one task
Prompts
clean_email_list(source?)— end-to-end workflow: check balance, validate in chunks, wait, export cleaned good/bad lists, report deliverabilitydeliverability_report()— deliverability trend across recent tasks
How validation works
Addresses are queued, not checked synchronously. validate_email and
validate_emails return a task_id immediately; the task moves through
pending → processing → completed. A five-address list typically finishes
in well under a minute, but larger lists take proportionally longer, so:
prefer
wait_for_taskover a manualget_task_statusloop — it emits MCP progress notifications while it waits and returnstimed_out: trueinstead of hanging forever;for long lists pass
webhook_urland let the API call you back;use
get_task_analyticswhen you only need aggregates — it is far cheaper than pulling every row.
Each address ends up good, bad, or unknown. unknown means the check could
not reach a verdict (unreachable MX, greylisting, catch-all ambiguity) — it is
not a synonym for invalid.
Development
The server runs on Node 20+; the test toolchain needs Node 22.12+.
npm ci
npm run build # tsc -> build/
npm test # vitest, no networkA live smoke test drives the built stdio server against a real API:
UCHECKER_API_KEY=uk_... UCHECKER_API_URL=https://api.staging.uchecker.net \
node tests/live-staging.mjs [completedTaskId]It spends one credit on a real validate_email call, so point it at staging
unless you are deliberately verifying production.
Architecture: src/core/ holds the transport-independent server (API client,
tools, resources, prompts); src/stdio.ts and src/http.ts are the two entry
points. Adding a tool means touching src/core/tools.ts only.
Further reading:
docs/TOOLS.md — tool reference
docs/DEPLOYMENT.md — self-hosting with Docker behind a reverse proxy
docs/API-NOTES.md — upstream API quirks this server absorbs
License
This server cannot be deployed
Maintenance
Related MCP Connectors
Email finder + verifier for AI agents: find work emails by name and company, check deliverability.
Email verification for AI agents — verify, clean & validate emails; self-onboard + crypto pay
Cold email API for AI agents: connect mailboxes, warm up, run campaigns and handle replies.
Email infrastructure for AI agents: send, read replies as threads, campaigns, per-key limits.
Related MCP Servers
- AlicenseAqualityCmaintenanceEnables AI assistants to verify email deliverability and find business emails via the Verifox API, supporting single and bulk operations.644 npmMIT
- AlicenseAqualityDmaintenanceEnables AI agents to verify email addresses, clean lists, run bulk verification jobs, and manage a Verifly account through natural language, without writing HTTP calls.155 npmMIT
- AlicenseAqualityDmaintenanceProvides email validation and domain configuration auditing tools for AI assistants, enabling single address checks, bulk list cleaning, SPF verification, and full mail setup grading (A-F) with actionable fixes.434 npmMIT
- FlicenseNot gradedqualityBmaintenanceEnables AI agents to verify email addresses in real-time, checking syntax, DNS, MX records, and SMTP handshake, returning verdicts and deliverability scores without sending actual emails.-