关于 hibp
hibp 是连接 Have I Been Pwned API 的 MCP 服务,供安全检查和账号风险排查使用。它可查询邮箱泄露、已知漏洞事件、密码暴露及粘贴记录;密码以本地哈希和 k-anonymity 方式检查。
主要功能
- 01检查邮箱是否出现在泄露中
- 02查询具体泄露事件详情
- 03检查密码是否已暴露
- 04查询邮箱相关粘贴记录
- 05以哈希匿名方式检查密码
适用场景
- 01排查个人或组织邮箱泄露情况
- 02了解某次泄露涉及的数据类别
- 03检查密码是否出现在已知泄露中
MCP 相关
该服务将 Have I Been Pwned API 的泄露、粘贴和密码检查功能封装为 MCP 工具,供 MCP 客户端调用。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
npx -y @darrenjrobinson/hibp-mcpHIBP_API_KEY密钥Your Have I Been Pwned API key from https://haveibeenpwned.com/API/KeyHIBP_SUBSCRIPTION_PLANYour HIBP API subscription plan (Pwned 1, Pwned 2, Pwned 3, Pwned 4, or Pwned 5)本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
Have I Been Pwned MCP 服务
一个适用于 Have I Been Pwned(HIBP)API 的模型上下文协议(MCP)服务,可让你使用自然语言查询泄露数据。
概览
此 MCP 服务提供了与 Have I Been Pwned API 交互的工具,让你可以:
- 检查电子邮件地址是否出现在数据泄露事件中
- 获取特定泄露事件的详细信息
- 检查密码是否在已知数据泄露事件中曝光
- 检查电子邮件地址是否出现在过往的粘贴内容中
安装与配置
选项 1:通过 NPM 安装(推荐)
- 安装 Node.js(推荐使用 v22.10.0 或更高版本)
- 从 https://haveibeenpwned.com/API/Key 获取 HIBP API 密钥
- 配置 MCP 客户端(例如 Claude Desktop ):
{
"mcpServers": {
"HIBP-MCP": {
"command": "npx",
"args": ["-y", "@darrenjrobinson/hibp-mcp"],
"env": {
"HIBP_API_KEY": "<your-hibp-api-key>",
"HIBP_SUBSCRIPTION_PLAN": "Pwned 1"
}
}
}
}
选项 2:本地开发
- 克隆此仓库:
git clone https://github.com/darrenjrobinson/HIBP-MCP-Server.git
- 安装依赖项:
cd HIBP-MCP-Server
npm install
- 构建项目:
npm run build
- 配置 MCP 客户端:
{
"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"
}
}
}
}
环境变量
| 名称 | 描述 |
|---|---|
HIBP_API_KEY | 你的 Have I Been Pwned API 密钥 |
HIBP_SUBSCRIPTION_PLAN | 你的 HIBP API 订阅计划(Pwned 1、Pwned 2、Pwned 3、Pwned 4 或 Pwned 5) |
使用示例
配置完成后,你可以用自然语言向 Claude 询问数据泄露相关问题。以下是一些示例:
检查电子邮件泄露情况
- “电子邮件地址 [email protected] 是否出现在任何数据泄露事件中?”
- “哪些泄露事件包含电子邮件地址 [email protected]?”
- “显示 [email protected] 的所有泄露事件”
检查特定泄露事件
- “介绍一下 LinkedIn 数据泄露事件”
- “Adobe 泄露事件中曝光了哪些数据?”
- “列出所有已知的数据泄露事件”
检查密码
- “密码 ‘Password123’ 是否在任何泄露事件中曝光?”
- “我的密码 ‘MySecurePass2024’ 是否安全?”
- “检查此密码是否已泄露:‘TestPass1234’”
检查粘贴内容
- “[email protected] 是否出现在任何粘贴内容中?”
- “显示 [email protected] 的粘贴数据”
工具
HIBP-Breaches
通过 Have I Been Pwned API 查询遭泄露的账户和泄露事件。
参数:
operation:要执行的 HIBP 操作(getAllBreachesForAccount、getAllBreachedSites、getBreachByName、getDataClasses)account:要检查泄露情况的电子邮件地址(getAllBreachesForAccount 必填)domain:用于筛选泄露事件的域名(可选)name:要获取详情的泄露事件名称(getBreachByName 必填)includeUnverified:是否包含未经验证的泄露事件(可选)truncateResponse:是否截断响应(可选)
HIBP-Pastes
通过 Have I Been Pwned API 查询包含账户数据的粘贴内容。
参数:
account:要检查粘贴内容的电子邮件地址(必填)
HIBP-PwnedPasswords
使用 Pwned Passwords API 检查密码是否在数据泄露事件中曝光。
参数:
password:要检查的密码(发送前会在本地进行哈希处理,并且只发送前 5 个字符)
安全说明
通过 HIBP-PwnedPasswords 工具检查的密码绝不会以明文形式发送。密码会在本地使用 SHA-1 进行哈希处理,并通过 k-匿名机制仅将哈希值的前 5 个字符发送到 API。
贡献
欢迎贡献!请随时提交 Pull Request。
许可证
MIT
Author
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。