Negotiated 2025-11-25. The bar is 2025-06-18 or newer.
Pass
HTTPS
The endpoint URL is https.
Performance
Not measured
Fast (p50)
Median latency 602 ms over 1 samples in 7 days. The bar is 1000 ms. Need at least 5 samples.
Not measured
Consistent (p95)
95th percentile 602 ms over 1 samples in 7 days. The bar is 3000 ms. Need at least 20 samples.
Not measured
Reliable (uptime)
1 of 1 attempts returned a tool list in 30 days (100%). The bar is 99%. Need at least 30 samples.
Not measured
Stable tool list
Fewer than two successful probes in 30 days, so tool-list stability is not measured.
Access
Pass
Open access
tools/list succeeded with no credential, and the record declares none.
Not measured
Standard auth
Auth is not required, so the OAuth metadata check does not apply.
Not measured
Free tier cited
No publisher quote has been checked.
Tools
Pass
Tools described
Every tool description is at least 20 characters.
Pass
Valid input schemas
Every inputSchema is a JSON Schema object.
Pass
Parameters documented
5 of 5 parameters have a description (100%). The bar is 80%.
Pass
Safety hints
Every tool sets readOnlyHint or destructiveHint.
Publisher
Pass
Verified namespace
Listed in the Official MCP Registry.
Pass
Website matches publisher
The website host matches the reverse-domain namespace.
Fail
Source repo linked
No repository URL is on file.
Not measured
Repo owner matches
This namespace is not an io.github login, so the owner comparison does not apply.
Pass
Recently updated
Updated 2026-10-16T18:13:40.933214Z, within 180 days.
Not measured
Open-source licence
No GitHub repository to ask about a licence.
Start using SignupBouncer
Connect to this server
Choose your client, copy the configuration, then enable the server in your client’s MCP settings.
Run this command in your terminal, then restart Claude Code.
Claude Code
claude mcp add --transport http signupbouncer https://signupbouncer.com/mcp
Capabilities
Tools 4
check_email
Checks one email address, and optionally the signup's IP address, the way SignupBouncer checks a new signup. Returns the result as "verdict" (allow, challenge or block), a 0-100 score, the reasons with their reason codes, the normalized inbox (Gmail dots and +tags folded) and the IP's network. When the domain looks like a typo of a big mail provider (gmial.com), "suggestion" holds the corrected address. Looks up the domain's mail servers live. Every reason is listed, including ones only paid plans count. We don't store or log the email or IP address it checks. We cache the email's domain and its mail servers for up to an hour. For the rate limits we keep a keyed hash of the calling IP address, or of the account when the client sends a key, for up to 24 hours. When the client sends a key, we also keep a hash of the key in memory, and keyed hashes of the calling IP address and its network (/24 or /64), for up to two minutes. The IP hashes limit guessed keys. A valid key's hash is also stored with its account.
Discovered explain_reason
Explains a SignupBouncer reason code (for example disposable_domain, burner_mx, repeat_inbox, datacenter_ip): what it means, how many points it adds or whether it blocks alone, and the lowest plan on which it counts. Without a code, lists every code.
Discovered integration_guide
Returns the steps and the copy-paste code that checks new signups with SignupBouncer in one stack: supabase (a hook, no code), ory (a web hook, no code), fetch (any TypeScript server), nextjs, express, hono, python, firebase or better-auth. Use it when the user asks for code that checks or blocks signups in their app. The code reads the API key from SIGNUPBOUNCER_API_KEY. The call has a 1.5-second limit, and any failure lets the signup through.
Discovered lookup_burner_domain
Says whether a domain is on SignupBouncer's disposable (burner) email list, only on an old burner list (a challenge, not a block), a known relay service or a free subdomain mail service, or a known real mailbox provider, and when our harvester observed it. Uses only the loaded lists, no DNS lookup, so a brand-new burner domain on a burner mail server is caught only by check_email. Accepts a domain or an email address.