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 設定ファイルに貼り付けてください。
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 を利用する Model Context Protocol(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 に送信されます。
貢献
貢献を歓迎します。お気軽にプルリクエストを送信してください。
ライセンス
MIT
Author
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。