エンリッチメントMCPサーバー
このプロジェクトは、提供されたオブザーバブルに基づいてエンリッチメントを実行するためのモデルコンテキストプロトコル(MCP)サーバーです。設定されたサービスと提供されたオブザーバブルの組み合わせによって、呼び出すエンリッチメントサービスが決まります。
このツールは、security-cli python パッケージを利用してさまざまなサービスとのエンリッチメント/通信を実行し、一般的なサービス (VirusTotal、Hybrid Analysis など) を使用してサードパーティのエンリッチメントを実行するためのシンプルな MCP サーバー実装を提供します。
MCPサーバー
enrichment-mcp
MCP サーバーのこの実装では、次のツールが公開されます。
- lookup-observable - 指定されたオブザーバブルを調べて適切なツールにルーティングする汎用エンドポイント。
サポートされているサービス
現在、次のサービスと監視可能なタイプがサポートされています。
ご提案がある場合、または別のサービスを実装する必要があると思われる場合は、問題またはプル リクエストを作成してください。
名前 | APIキーが必要です | IPをサポート | ドメインをサポート | URLをサポート | メールをサポート |
---|---|---|---|---|---|
ウイルストータル | はい | はい | はい | はい | いいえ |
ハイブリッド分析 | はい | はい | はい | はい | いいえ |
エイリアンボールト | はい | はい | はい | はい | いいえ |
初段 | はい | はい | はい | はい | いいえ |
Urlscan.io | はい | はい | はい | はい | いいえ |
虐待IPDB | はい | はい | いいえ | いいえ | いいえ |
いいね | はい | いいえ | いいえ | いいえ | はい |
要件
この MCP サービスはsecurity-cli
とカスタムconfig.yaml.exampleファイルを使用して、監視可能なルックアップでサポートされているサードパーティのエンリッチメント サービスを決定します。
ローカル Mac/システムでこれを実行する最も簡単な方法は次のとおりです。
これには、提供されているテンプレート.env.exampleを使用して、シークレットを含む新しい.env
ファイルを作成する必要があります。
注: 各種サービスの設定方法については、 security-cliのドキュメントをご覧ください。ほとんどのユースケースでは、デフォルト設定で十分です。
環境変数
注: このサービスを実装する際は、シークレットを環境変数として設定することを強くお勧めします。シークレットを保存するのはやめてください。
security-cli
パッケージがこれらの変数を検出するには、特定の形式で記述する必要があります。現在サポートされている変数のリストは以下のとおりです。
- ENRICHMENT_MCP_VIRUSTOTAL_KEY
- エンリッチメント_MCP_ハイブリッド分析_キー
- エンリッチメント_MCP_エイリアンボールト_キー
- エンリッチメント_MCP_SHODAN_KEY
- ENRICHMENT_MCP_URLSCAN_KEY
- ENRICHMENT_MCP_ABUSEIPDB_KEY
- エンリッチメント_MCP_HIBP_キー
エンリッチメント構成
各エンリッチメントサービスは、 securiy-cli
設定ファイルで定義されます。さらに、実行可能なエンリッチメントの種類を分類しました。つまり、現在の実装ではenrich
という単一のアクションタイプしかサポートされていませんが、将来的にはscans
やqueries
などにも拡張される可能性があります。
これらの高レベルアクションの下に、監視可能なタイプと、そのタイプをサポートするサービスのリストを示します。現在サポートされている監視可能なタイプは次のとおりです。
- ipaddress - IPv4アドレス
- ドメイン - ドメインまたはネットロック
- url - スキーマなどを含む完全修飾 URL。
- メール - 標準のメールアドレス
以下のタイプもサポートされていますが、現在は実装されていません。
- md5 - ファイルのMD5ハッシュ
- sha1 - ファイルのSHA1ハッシュ
- sha256 - ファイルのSHA256ハッシュ
各サービスにはname
とtemplate
が必要です。apikeyフィールドapikey
指定することもできますが、環境変数を使��することをお勧めします。
プロンプトテンプレート
各サービスとオブザーバブルタイプには、独自のレスポンステンプレートを設定できます。これらのテンプレートはsecurity-cli
テンプレートディレクトリに保存されており、すべてのテンプレートはここに存在するはずです。
定義された各サービスには、jinja2テンプレートを使用したプロンプトテンプレートがあります。必要に応じて変更できますが、ファイル名の形式は変更しないでください。
これらのファイルのファイル名パターンは次のとおりです。
応答オブジェクトのテンプレート自体に正しいフィールドがあることを確認してください。そうでない場合はエラーが発生します。
以下は、いくつかのエラーが混在するEnrich this IP 91.195.240.94
プロンプトの出力例です。
MCP サーバーの使用状況
事前に構築されたサーバーの使用については、こちらの手順をご覧ください: https://modelcontextprotocol.io/quickstart/user
- デスクトップ版Claudeをダウンロード
- uvをインストールする
- このリポジトリをダウンロードして、Claude for Desktop の設定に追加します。
- デスクトップ版Claude > 設定 > 開発者 > 設定の編集
提供されている.desktop_config.example.jsonファイルをコピーすることができます
自分で作成したい場合は、Claude Desktop のパスを参照してください。
任意のテキストエディタで設定ファイルを開き、ファイルの内容を以下の内容に置き換えます。
- デスクトップ版Claudeの再起動
チャット バーに、使用可能なツールを示すハンマーと、定義されたプロンプトと必要な入力を示す接続アイコンの 2 つのアイコンが表示されます。
貢献
貢献を歓迎します!プルリクエストをお気軽に送信してください。
remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
Tools
ユーザーが VirusTotal、Shodan などのサービスを通じて、セキュリティ観測可能情報 (IP アドレス、ドメイン、URL、電子メール) のサードパーティ エンリッチメント検索を実行できるようにするモデル コンテキスト プロトコル サーバー。
Related MCP Servers
- -securityFlicense-qualityA standalone Model Context Protocol server for Snyk security scanning functionality.Last updated -21JavaScript
- -securityFlicense-qualityA Model Context Protocol server that provides access to Shodan and VirusTotal APIs for cybersecurity analysis, enabling analysts to perform network intelligence operations including host lookups, vulnerability analysis, and threat intelligence gathering.Last updated -1TypeScript
- -securityAlicense-qualityA Model Context Protocol server designed for testing backend APIs for security vulnerabilities like authentication bypass, injection attacks, and data leakage.Last updated -5TypeScriptMIT License
Infisical MCP Serverofficial
AsecurityAlicenseAqualityA Model Context Protocol server that enables interaction with Infisical APIs for secret management, allowing users to create, update, delete, and list secrets through function calling.Last updated -97320JavaScriptApache 2.0