MX Probe
以下摘录自该仓库的 README(片段) · 在 GitHub 读完整 README →
Email verification for AI agents. One call returns send, hold or kill
for an address, with the reason. Signup and credits happen by API too, so an
outreach agent can provision itself. No form, no CAPTCHA, no dashboard.
- Site and docs: https://mxprobe.dev
- API: https://api.mxprobe.dev (it describes itself on GET /). OpenAPI: https://mxprobe.dev/openapi.json. For agents: https://mxprobe.dev/llms.txt
- npm: mxprobe (CLI + MCP server), mxprobe-core (the engine)
One click: Cursor · VS Code ·
LM Studio. In Claude Code the same server also comes as a plugin:
/plugin marketplace add andrewchmr/mxprobe, then /plugin install mxprobe@mxprobe.
action is send, hold or kill; verdict is OK, WEAK or DEAD. A
hold never becomes a kill on a refusal, a greylist or a catch-all. Only a
5xx that names the mailbox kills.
Layout
| Path | What |
|---|---|
| packages/core | The engine: DNS tier, SMTP probe, the verdict contract and the API's wire types. Zero dependencies. |
| packages/cli | npx mxprobe check | signup | balance | buy | mcp. Also exports createClient. |
| server | The hosted API: node:http + node:sqlite, Stripe Checkout, Resend, Telegram. |
| site | The landing page, static. |
| deploy | Caddyfile, systemd units, the install script and the runbook. |
Develop
Everything is TypeScript (strict, ESM). Each package compiles its src/ to
dist/ with tsc -b; the published packages ship dist/ only. mxprobe and
the server import mxprobe-core through the workspace link to its dist/,
so pnpm build at the root (which runs the packages in dependency order) must
come before a single package's test or typecheck. Tests are .ts files
that Node runs directly with its built-in type stripping.
Node 22.18 or newer (24 recommended) to develop and to run the tests; the
compiled engine and CLI run on Node 20, the server on 22.13 or newer
(node:sqlite).
Pricing