A Model Context Protocol (MCP) server for the Have I Been Pwned (HIBP) API
Runs on your machine from its package; the steps are below.
At most: only reads or looks up information.
Odel charges nothing per call. The publisher may charge for its own service.
Runs locally over stdio
This server isn't hosted — your MCP client launches it from a package registry. Use one of the commands below, or drop the config into your client (e.g. Claude Desktop).
Run
npx -y @darrenjrobinson/hibp-mcp
MCP client config
{
"mcpServers": {
"hibp": {
"command": "npx",
"args": [
"-y",
"@darrenjrobinson/hibp-mcp"
]
}
}
}A Model Context Protocol (MCP) server for the Have I Been Pwned (HIBP) API that allows you to query breach data using natural language.
This MCP server provides tools to interact with the Have I Been Pwned API, allowing you to:
{
"mcpServers": {
"HIBP-MCP": {
"command": "npx",
"args": ["-y", "@darrenjrobinson/hibp-mcp"],
"env": {
"HIBP_API_KEY": "<your-hibp-api-key>",
"HIBP_SUBSCRIPTION_PLAN": "Pwned 1"
}
}
}
}
git clone https://github.com/darrenjrobinson/HIBP-MCP-Server.git
cd HIBP-MCP-Server
npm install
npm run build
{
"mcpServers": {
"HIBP-MCP": {
"command": "node",
"args": ["path/to/hibp-mcp/build/main.js"],
"env": {
"HIBP_API_KEY": "<your-hibp-api-key>",
"HIBP_SUBSCRIPTION_PLAN": "Pwned 1"
}
}
}
}
| Name | Description |
|---|---|
HIBP_API_KEY | Your Have I Been Pwned API key |
HIBP_SUBSCRIPTION_PLAN | Your HIBP API subscription plan (Pwned 1, Pwned 2, Pwned 3, Pwned 4, or Pwned 5) |
Once configured, you can ask Claude natural language questions about data breaches. Here are some examples:
Query breached accounts and breaches from the Have I Been Pwned API.
Parameters:
operation: The HIBP operation to perform (getAllBreachesForAccount, getAllBreachedSites, getBreachByName, getDataClasses)account: Email address to check for breaches (required for getAllBreachesForAccount)domain: Domain to filter breaches by (optional)name: Breach name to get details for (required for getBreachByName)includeUnverified: Whether to include unverified breaches (optional)truncateResponse: Whether to truncate the response (optional)Query pastes containing account data from the Have I Been Pwned API.
Parameters:
account: Email address to check for pastes (required)Check if a password has been exposed in data breaches using the Pwned Passwords API.
Parameters:
password: Password to check (will be hashed locally before sending and only the first 5 characters sent)Passwords checked through the HIBP-PwnedPasswords tool are never sent in plain text. They are hashed locally using SHA-1, and only the first 5 characters of the hash are sent to the API using k-anonymity.
Contributions are welcome! Please feel free to submit a Pull Request.
MIT