Have I Been Pwned
live SecurityPassword breach checks (k-anonymity, no key) + breach catalog (no key) + breached-account lookup (paid BYO key).
Password checks and breach-catalog tools are free with no key. check_account requires a paid HIBP subscription key passed as _apiKey.
{
"mcpServers": {
"pipeworx-hibp": {
"command": "npx",
"args": [
"-y",
"mcp-remote@latest",
"https://gateway.pipeworx.io/hibp/mcp?_apiKey=your_hibp_key"
]
}
}
} Tools
check_password
required: password k-anonymity password check; only the first 5 hex chars of the SHA-1 leave the worker.
password req string Password to check Try it
check_password_prefix
required: sha1_prefix Direct k-anonymity: send a 5-char SHA-1 prefix, receive suffixes and counts.
sha1_prefix req string 5 hex chars Try it
list_breaches All publicly-known breaches, optionally filtered by domain.
domain opt string Optional domain Try it
get_breach
required: name Single breach by name.
name req string Breach name Try it
list_data_classes Canonical data-class tags.
No parameters required.
Try it
check_account
required: account REQUIRES PAID KEY. Breaches an email account appears in.
account req string Email address truncate opt boolean Return only breach names (default true) Try it
Test with curl
The gateway speaks JSON-RPC 2.0 over HTTP POST. You can test any pack directly from the terminal.
curl -X POST https://gateway.pipeworx.io/hibp/mcp \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}' curl -X POST https://gateway.pipeworx.io/hibp/mcp \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"check_password","arguments":{"password": "example"}}}' Use with the SDK
Install @pipeworx/sdk to call tools from any TypeScript/Node project.
import { Pipeworx } from '@pipeworx/sdk';
const px = new Pipeworx();
const result = await px.call("check_password", {"password":"example"}); // Or ask in plain English:
const answer = await px.ask("password breach checks (k-anonymity, no key) + breach catalog (no key) + breached-account lookup (paid byo key)");