@pipeworx/bounceban
Connect: https://pipeworx.io/mcp — every tool in the catalog, including @pipeworx/bounceban’s. Install: one-click buttons
Connect to just the @pipeworx/bounceban pack
https://gateway.pipeworx.io/bounceban/mcp — only @pipeworx/bounceban’s own tools, nothing else in the catalog.
No MCP client? Skip the connection: POST https://gateway.pipeworx.io/v1/tools/search_packs {"query":"..."} to find a tool below, GET /v1/tools/<name> for its schema, POST the same URL with arguments for the data — see For AI agents.
Tools: 1
Verify a single email address via BounceBan’s waterfall-tuned endpoint
(bounceban.com), including catch-all detection. Part of
enrich-waterfall’s enrich_verify_email ordered verifiers (fleet #2860).
Tools
bounceban_verify(email, _apiKey)— status/result, explicitcatch_all, disposable/role/free flags.
Auth
BYO only. Pass your BounceBan API key as _apiKey (header Authorization,
no Bearer prefix). Find your key at
https://bounceban.com/app/api/settings. No platform key (D4).
Data sources
https://api-waterfall.bounceban.com/v1/verify/single— BounceBan’s waterfall-specific host, built to block synchronously (up to 80s) for a definitive result rather than handing back a task to poll. BounceBan also publishes a standardapi.bounceban.comhost for the same verb; this pack deliberately uses the waterfall one since that is the shapeenrich_verify_emailneeds.
Verification notes (fleet #2860, 2026-10-08, no vendor key held)
- Edge-probed the EXACT host/path this pack calls. No
Authorizationheader: HTTP 401{"error":"Authorization header is required"}. An invalid key: HTTP 401{"msg":"Authorization information is missing or invalid."}. Two different bodies for two different failures confirms the header is read, not just a blanket 401. This pack’s code checks botherrorandmsgfields when surfacing the reason. - BounceBan documents a 408 for a timed-out verification (its own waterfall-integration guide) — this pack surfaces that as a named, distinct error (“verification timed out server-side”) rather than letting it fall through to a generic HTTP-error path, since a caller retrying or moving to the next verifier needs to know it was a timeout, not a bad email or a bad key.
- Response field names (
status/result,is_catch_all) are inferred from BounceBan’s public no-code-integration docs and GitHubskill-email-verificationdescription, not a confirmed live success payload — we hold no BounceBan key. The parser accepts eitheris_catch_all/catch_allas a boolean, or falls back to checking whether the status string itself contains “catch” if neither field is present. - Not verified (no key held): the exact field name BounceBan uses for
the main verdict (
statusvsresult); the full enumeration of status values beyond “catch-all” and the obvious valid/invalid.
Tools
- bounceban_verify — Verify a single email address via BounceBan’s synchronous waterfall endpoint (blocks up to 80s for a definitive result, including catch-all detection). Example: bounceban_verify({ email: “jane@stripe.
Tools
bounceban_verify— Verify a single email address via BounceBan's synchronous waterfall endpoint (blocks up to 80s for a definitive result, including catch-all detection). Example: bounceban_verify({ email: [email protected]