mcpField
E
ESET PROTECT

ESET PROTECT

ローカル
github.comセキュリティ01 週間前に更新

ESET PROTECT について

ESET PROTECT は、ESET Connect を通じてエンドポイント群を監視するセキュリティチームや AI アシスタント向けの読み取り専用 MCP サーバーです。デバイス、検知・EDR、脆弱性、パッチ状況、ユーザーデータを扱います。

主な機能

  1. 01デバイスとグループの一覧・詳細表示
  2. 02検知イベントと EDR ルールの調査
  3. 03デバイスと OS の脆弱性確認
  4. 04パッチ状況と処理履歴の確認
  5. 05ユーザーの一覧・詳細表示

活用シーン

  1. 01状態別の管理対象デバイス確認
  2. 02エンドポイントまたは EDR 検知の調査
  3. 03脆弱性のあるデバイスの特定
  4. 04直近のパッチ適用状況の確認

MCP 対応

デバイス、インシデント、脆弱性、パッチ、ユーザーデータにアクセスする読み取り専用の ESET Connect ツールを MCP クライアントに公開します。stdio と HTTP のトランスポートに対応します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"wyre-ai-eset-protect": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"ESETPROTECT_CLIENT_ID",
"-e",
"ESETPROTECT_CLIENT_SECRET",
"-e",
"ESETPROTECT_REGION",
"-e",
"MCP_TRANSPORT",
"-e",
"AUTH_MODE",
"-e",
"LOG_LEVEL",
"ghcr.io/wyre-ai/eset-protect-mcp:v1.0.2"
],
"env": {
"ESETPROTECT_CLIENT_ID": "<ESETPROTECT_CLIENT_ID>",
"ESETPROTECT_CLIENT_SECRET": "<ESETPROTECT_CLIENT_SECRET>",
"ESETPROTECT_REGION": "<ESETPROTECT_REGION>",
"MCP_TRANSPORT": "<MCP_TRANSPORT>",
"AUTH_MODE": "<AUTH_MODE>",
"LOG_LEVEL": "<LOG_LEVEL>"
}
}
}
}
起動コマンドdocker run -i --rm -e ESETPROTECT_CLIENT_ID -e ESETPROTECT_CLIENT_SECRET -e ESETPROTECT_REGION -e MCP_TRANSPORT -e AUTH_MODE -e LOG_LEVEL ghcr.io/wyre-ai/eset-protect-mcp:v1.0.2
設定が必要な環境変数
ESETPROTECT_CLIENT_IDEmail of the dedicated ESET Connect API user, created in ESET Business Account with the Integrations toggle enabled.
ESETPROTECT_CLIENT_SECRETシークレットPassword of the ESET Connect API user paired with ESETPROTECT_CLIENT_ID.
ESETPROTECT_REGIONESET Connect region: us (default), eu, de, jpn, or ca.
MCP_TRANSPORTTransport mode for the server. Set to 'stdio' for local CLI use; the image defaults to 'http' for gateway hosting.
AUTH_MODEシークレットCredential source: 'env' reads vars locally, 'gateway' expects header injection from the WYRE MCP Gateway.
LOG_LEVELLog verbosity: debug, info, warn, error

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
ocighcr.io/wyre-ai/eset-protect-mcp:v1.0.2

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

ESET PROTECT MCP サーバー

ESET PROTECT の ESET Connect API ゲートウェイ向け MCP サーバーです。AI アシスタントと WYRE Conduit ゲートウェイに、エンドポイント群の可視化(デバイスとグループ)、検知/EDR 調査、脆弱性データ、パッチ状況、ユーザー管理を提供します。

認証

ESET Business Account で専用の API ユーザーを作成します:User Management > create a user with read-only permission > enable the Integrations toggle。このユーザー用のメールアドレスとパスワードが発行されます。

ESET Connect のトークンエンドポイント(POST /oauth/token)は、独自の OpenAPI 仕様で password グラントとして定義されています。フィールドは username/password であり、grant_type=client_credentials を指定した client_id/client_secret ではありません。このサーバーは clientId/clientSecret(WYRE の他の MCP コネクターで使用される認証情報の形式に合わせています)を受け取り、このグラントの username/password として送信します。返された refresh_token を使ったベアラートークンのキャッシュと更新(リフレッシュトークン自体が拒否された場合は、完全な再ログインにフォールバックします)は内部で処理されます。呼び出し側が指定するのは、長期間有効なメールアドレスとパスワードの組み合わせだけです。

設定

環境変数説明
ESETPROTECT_CLIENT_ID専用の ESET Connect API ユーザーのメールアドレスです。
ESETPROTECT_CLIENT_SECRETその API ユーザーのパスワードです。
ESETPROTECT_REGIONus(デフォルト)、eu、de、jpn、または ca。ESET Business Account がプロビジョニングされた ESET Connect のリージョンです。
MCP_TRANSPORTstdio(デフォルト)または http です。
AUTH_MODEenv(デフォルト。上記の変数を読み込みます)または gateway(Conduit ゲートウェイが挿入する X-EsetProtect-* ヘッダー経由で、リクエストごとに認証情報を受け取ります)です。
CONDUIT_S2S_SECRET設定すると、HTTP トランスポートではすべての /mcp リクエストに有効な X-Gateway-S2S ヘッダー(Conduit サイドカー認証)が必要になります。
LOG_LEVELdebug | info(デフォルト)| warn | error です。

ESET Connect API の各ドメイン(デバイス、インシデント、脆弱性、パッチ、ユーザー管理)は、リージョンごとに独立したサブドメインでホストされます。例:https://us.device-management.eset.systems。認証ホストも同じリージョン別の形式です。例:https://us.business-account.iam.eset.systems。ESETPROTECT_REGION は、それらすべてのプレフィックスを選択します。

ツール

デバイス管理
  • esetprotect_list_device_groups - デバイスグループを一覧表示します。
  • esetprotect_list_group_devices - グループ内のデバイスを一覧表示します。
  • esetprotect_list_devices - 管理対象デバイスを一覧表示します。表示名、機能の状態、またはミュート状態で絞り込めます。
  • esetprotect_get_device - UUID でデバイスを取得します。
  • esetprotect_batch_get_devices - 1 回の呼び出しで UUID を指定して複数のデバイスを取得します。
インシデント管理(検知、検知グループ、EDR)
  • esetprotect_list_detections / esetprotect_get_detection - v1 の検知(レガシー機能)。
  • esetprotect_list_detections_v2 / esetprotect_get_detection_v2 / esetprotect_batch_get_detections - v2 の検知(エンドポイント、クラウドオフィス、EDR)。
  • esetprotect_list_detection_groups / esetprotect_get_detection_group - グループにクラスタリングされた検知。
  • esetprotect_list_edr_rules / esetprotect_get_edr_rule - EDR 検知ルール。
  • esetprotect_list_edr_rule_exclusions / esetprotect_get_edr_rule_exclusion - EDR ルールの除外設定。
脆弱性管理
  • esetprotect_list_device_os_vulnerabilities - デバイスで見つかった OS の脆弱性。
  • esetprotect_list_device_vulnerabilities - デバイスで見つかった脆弱性(アプリケーション/OS/パッケージの範囲)。
  • esetprotect_list_recent_scans - 最近の脆弱性スキャンの詳細。
  • esetprotect_list_vulnerable_devices - 既知の脆弱性があるデバイス。
パッチ管理
  • esetprotect_list_recent_application_patching_details - フリート全体で直近に行われたアプリケーションのパッチ適用プロセス。
  • esetprotect_list_device_patches - デバイスのパッチ。パッチの種類で絞り込めます。
  • esetprotect_list_patching_process_details - 指定した期間内のパッチ適用プロセスの詳細な履歴。
ユーザー管理
  • esetprotect_list_users - ユーザーの一覧。メールアドレス、表示名、保護ステータスなどで絞り込めます。
  • esetprotect_get_user - UUIDでユーザーを取得します。
  • esetprotect_batch_get_users - 1回の呼び出しで複数のユーザーをUUIDで取得します(アトミックに処理され、すべて成功するか、すべて失敗します)。

リクエスト制限

  • HTTPリクエスト本文の上限は256 KiB(262144バイト)です。X-Gateway-S2S チェックの通過後に Content-Length が上限を超えている場合、JSON-RPCエラーを伴う413が返されます。Content-Length のない本文には、MCP SDKのトランスポートによる上限が適用されます。未認証のリクエストには、先に401が返されます。
  • tools/call の引数の上限は10,000要素です(すべての配列項目と、すべての深さにあるオブジェクトキーが対象です)。上限を超える入力には isError ツール結果が返され、ディスパッチされません。

これらの制限は、CVE-2026-111768 / GHSA-46jr-4wx8-v453(検証中のメモリ枯渇)およびGHSA-f897-62hf-6gxq(リクエスト本文/バッチの上限なし)に対処するものです。

対象範囲

これはv1の読み取り専用のフリート/セキュリティ可視化機能です。明示的に対象外としているのは、デバイスの移動/名前変更とバッチインポート、検出および検出グループの解決、EDRルールとルール除外の作成/更新/削除、ならびにあらゆる資産管理グループの作成/削除/移動/名前変更エンドポイントです。これらは読み取り専用の監視コネクターの対象外となる変更/プロビジョニング操作であり、今後の追加機能として対応できます。

インシデント管理APIには、検出および検出グループに加えて、別個の /v2/incidents ケース管理機能(一覧表示/取得/クローズ/再オープン、コメント)もあります。同じ理由により、このv1機能の対象外です。

開発

npm install
npm run build
npm test
npm run lint   # tsc --noEmit

Docker

docker build -t eset-protect-mcp .
docker run -p 8080:8080 \
  -e ESETPROTECT_CLIENT_ID=... \
  -e ESETPROTECT_CLIENT_SECRET=... \
  eset-protect-mcp

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。