mcpField
W
Wazuh MCP Server

Wazuh MCP Server

ローカル
wazuhmcp.netlify.app開発ツール2604 週間前に更新

Wazuh MCP Server について

Wazuh MCP Server は Wazuh SIEM 向けの MCP サーバーで、Claude などの MCP クライアントからアラート、エージェント、脆弱性、コンプライアンスデータの照会やアクティブレスポンスの実行ができます。既定では読み取り専用で、状態を変更するツールには別途 wazuh:write スコープが必要です。セキュリティ運用チームを想定し、スコープベースのアクセス制御と監査ログを備えています。

主な機能

  1. 01アラート、脆弱性、コンプライアンスにまたがる 55 のツール
  2. 02既定で読み取り専用、書き込みには専用スコープが必要
  3. 03Bearer トークン、OAuth 2.0、OIDC による認証
  4. 04Docker Compose によるデプロイと監査ログ

活用シーン

  1. 01MCP クライアントからの Wazuh アラートとエージェント状態の照会
  2. 02PCI-DSS、HIPAA などに基づくコンプライアンス状況の確認
  3. 03検証とロールバックを伴うアクティブレスポンスの実行

MCP 対応

本サーバーは /mcp で Streamable HTTP による MCP インターフェースを提供し、Wazuh の照会・対応ツール、プロンプト、リソースを MCP クライアントに公開します。

設定

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

mcp.json · 共通設定
{
"mcpServers": {
"Wazuh-MCP-Server": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"compose"
]
}
}
}
起動コマンドdocker run -i --rm compose

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

パッケージ
ocicompose

ツール

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

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

詳細

Wazuh MCP サーバー

Wazuh SIEM 向けの Model Context Protocol(MCP)サーバーです。

MCP クライアント(Claude、ローカルモデルをバックエンドに使用する Open WebUI、または Streamable HTTP に対応する任意のクライアント)から、アラート、エージェント、脆弱性、コンプライアンスデータを照会し、スコープベースのアクセス制御と監査ログを備えたアクティブレスポンスを実行できます。

CI Security Audit Release License: MIT

Python 3.11+ MCP 2026-07-28 Wazuh 4.8.0–4.14.7 GHCR image

クイックスタート · クライアント · ツール · セキュリティ · 設定 · ドキュメント · 変更履歴 · アップグレード


概要

  • 8 つのツールセットに 55 個のツールを備えています。アラート、エージェント、脆弱性、脅威分析、コンプライアンス(PCI-DSS、HIPAA、SOX、GDPR、NIST、ISO 27001:2022)、マネージャー/クラスターの健全性、検証とロールバックに対応したアクティブレスポンスを含みます。また、ガイド付きプロンプト 5 個、リソース 6 個、リソーステンプレート 3 個もあります。
  • **デフォルトでは読み取り専用です。**状態を変更する 14 個のツールには wazuh:write スコープが必要です。このスコープが暗黙的に付与されることはありません。
  • MCP トランスポート: /mcp で Streamable HTTP を使用します。プロトコルリビジョン 2026-07-28(ステートレスリクエスト)と、2025-11-25、2025-06-18、2025-03-26、2024-11-05 の initialize ハンドシェイクを提供します。レガシー HTTP+SSE エンドポイント /sse は 410 Gone を返します。
  • 認証: API キーから発行されるベアラートークン、API キーまたは OpenID Connect プロバイダー(Entra ID、Google Workspace、Okta、Keycloak)を使ったサインインに対応する OAuth 2.0(認可コード+PKCE)、またはローカル開発向けの認証なしを利用できます。
  • デプロイ: Docker Compose または公開済みのマルチアーキテクチャイメージに対応しています。複数インスタンスのセッション用に Redis を追加でき、マルチクラスターのルーティングも任意で利用できます。
  • ローカルモデル: vLLM と Open WebUI のスタック(compose.local-llm.yml)および小型モデル向けのツールセットフィルタリングに対応しています。Wazuh のデプロイ環境外のサービスを呼び出すツールは、任意で利用できる search_external_context(You.com)のみで、単独で無効にできます。

対応する Wazuh のバージョン:4.8.0~4.14.7。アラート、脆弱性、およびアラートに基づくコンプライアンスツールには Wazuh Indexer が必要です。WAZUH_COMPATIBILITY.md を参照してください。


クイックスタート

Docker Compose v2 と、Wazuh Manager API のユーザーが必要です。

git clone https://github.com/gensecaihq/Wazuh-MCP-Server.git
cd Wazuh-MCP-Server
cp .env.example .env

.env で Wazuh への接続を設定します。

WAZUH_HOST=your-wazuh-manager
WAZUH_USER=your-api-user
WAZUH_PASS=your-api-password

# Needed for alert, vulnerability and alert-backed compliance tools
WAZUH_INDEXER_HOST=your-wazuh-indexer
WAZUH_INDEXER_USER=your-indexer-user
WAZUH_INDEXER_PASS=your-indexer-password

Manager の TLS 証明書は検証されます。標準の Wazuh インストールでは、検証に通らない自己署名の API 証明書が使われます。そのため、ホスト名に合わせて証明書を再発行して WAZUH_CA_BUNDLE を設定するか、初回のテストでは WAZUH_ALLOW_SELF_SIGNED=true を追加してください(検証なしで接続し、起動時にログへ記録されます)。詳細はManager TLSをご覧ください。

署名シークレットと API キーを生成します。compose.yml ではサーバーを ENVIRONMENT=production で実行するため、AUTH_SECRET_KEY がないと起動しません。

echo "AUTH_SECRET_KEY=$(openssl rand -hex 32)" >> .env
echo "MCP_API_KEY=wazuh_$(openssl rand -base64 32 | tr '+/' '-_' | tr -d '=')" >> .env

サーバーを起動して、状態を確認します。

docker compose up -d
curl http://localhost:3000/health     # liveness
curl http://localhost:3000/ready      # checks Manager/Indexer reachability

API キーをベアラートークンに交換します(有効期間は TOKEN_LIFETIME_HOURS の値です。デフォルトは 24 時間です)。

curl -s -X POST http://localhost:3000/auth/token -H 'Content-Type: application/json' \
  -d "{\"api_key\": \"$(grep ^MCP_API_KEY= .env | cut -d= -f2)\"}"

このキーは読み取り専用です。アクティブレスポンスツールを許可するには、.env に MCP_API_KEY_SCOPES="wazuh:read wazuh:write" を追加し、docker compose up -d でコンテナを再作成してください(restart では古い環境変数が引き継がれます)。その後、新しいトークンを発行します。

Compose はポートを 127.0.0.1 のみに公開します。サーバーは平文 HTTP を使用します。外部に公開する前に、TLS 終端リバースプロキシを前段に配置してください(ホストのバインドアドレスを変更するには MCP_BIND を設定します)。

python3 deploy.py(Windows では deploy.bat)を実行すると同じ手順が行われ、AUTH_SECRET_KEY と MCP_API_KEY が未設定の場合は生成されます。

ビルド済みイメージ

マルチアーキテクチャ(amd64、arm64)対応イメージは GitHub Container Registry に公開されており、ログインせずに取得できます。

docker pull ghcr.io/gensecaihq/wazuh-mcp-server:latest   # tracks main
docker pull ghcr.io/gensecaihq/wazuh-mcp-server:5.0.0    # latest tagged release

latest は main からビルドされており、変更履歴の 未リリース に記載された変更が含まれる場合があります。リリースイメージには 5.0.0、5.0、v5.0.0 のタグが付いています(4.3.0 以前には v プレフィックス付きのタグはありません)。4.x からアップグレードする場合は、まず UPGRADING.md をお読みください。

docker run -d --name wazuh-mcp-server --env-file .env -e MCP_HOST=0.0.0.0 -e ENVIRONMENT=production \
  -p 127.0.0.1:3000:3000 ghcr.io/gensecaihq/wazuh-mcp-server:latest

.env.example ではベアメタル環境へのインストール用に MCP_HOST=127.0.0.1 が設定されているため、コンテナ内では MCP_HOST=0.0.0.0 が必要です。-e は --env-file より優先されるため、.env に別の値が設定されていても ENVIRONMENT=production が適用されます。


クライアントの接続

すべてのクライアントで、Streamable HTTP エンドポイント https://<your-host>/mcp を使用します。

クライアント認証モード認証方法
Claude カスタムコネクター(claude.ai、Claude Desktop)oauthPKCE を使用する OAuth 認可コードフローです。サーバーには、Claude のコールバック URL 用に claude-desktop というパブリッククライアントが事前登録されています。ユーザーは、wazuh_ API キーを使ってサーバーの /oauth/authorize ページでサインインします(付与される権限の範囲はそのキーのスコープを上限とします)。または、OAUTH_IDP_ISSUER が設定されている場合は、OpenID Connect プロバイダーでサインインします。
Open WebUI、LibreChat、スクリプト、その他の MCP クライアントbearer(デフォルト)POST /auth/token で取得したトークンを使い、Authorization: Bearer <token> で認証します。

OAuth モードでは、OAUTH_ISSUER_URL にサーバーの公開 HTTPS URL を設定してください(未設定の場合、リクエストごとに URL が導出されますが、プロキシ経由では公開 URL にならない場合があります)。動的クライアント登録(/oauth/register)は、OAUTH_ENABLE_DCR=true が設定されていない限り無効であり、OAUTH_IDP_ISSUER との併用はできません。

ガイド:Claude との連携 · ローカル LLM


ローカル LLM

サーバーはモデルを呼び出さず、ツールを実行するだけです。SIEM データをオンプレミスに保持するには、ローカルモデルと組み合わせてください。

cat >> .env <<EOF
VLLM_API_KEY=$(openssl rand -hex 32)
WEBUI_SECRET_KEY=$(openssl rand -hex 32)
EOF
docker compose -f compose.yml -f compose.local-llm.yml up -d

これにより、vLLM(デフォルトモデルは Qwen3.6-35B-A3B FP8、NVIDIA GPU 1 基で約 42 GB の VRAM が必要。ホストのポートには公開されません)と、127.0.0.1:8080 で動作する Open WebUI が追加されます。Open WebUI の管理者設定で、ベアラートークンを使って http://wazuh-main-server:3000/mcp に MCP(Streamable HTTP)ツールサーバーを追加してください。

小型モデルの場合は、WAZUH_TOOLSETS / WAZUH_DISABLED_TOOLS で公開するツールを減らし、evals/tool_selection.py でロールアウト前にツール選択を確認してください(ツールは実行せず、プロンプトインジェクションのケース 2 件を含む SOC シナリオ 25 件を、OpenAI 互換の任意のエンドポイントで評価します)。モデルのサイズ選定、Ollama、LiteLLM についてはローカル LLM ガイドで説明しています。


ツール

55 個のツールがあり、WAZUH_TOOLSETS(カンマ区切り。デフォルトはすべて有効)で有効にするツールセットを指定できます。R = wazuh:read、W = wazuh:write。

ツールセット数ツール
alerts5 Rget_wazuh_alerts、get_wazuh_alert_summary、get_alerts_aggregated、analyze_alert_patterns、search_security_events
agents6 Rget_wazuh_agents、get_wazuh_running_agents、check_agent_health、get_agent_processes、get_agent_ports、get_agent_configuration
vulnerabilities3 Rget_wazuh_vulnerabilities、get_wazuh_critical_vulnerabilities、get_wazuh_vulnerability_summary
analysis5 Ranalyze_security_threat、check_ioc_reputation、perform_risk_assessment、get_top_security_threats、generate_security_report
web_search1 Rsearch_external_context — You.com のウェブ検索。YDC_API_KEY が設定されていない場合は「not enabled」の結果を返します
compliance6 Rrun_compliance_check(PCI-DSS、HIPAA、SOX、GDPR、NIST、ISO27001)、get_iso27001_dashboard、get_iso27001_control_detail、get_iso27001_gap_analysis、get_iso27001_alerts、get_sca_policy_checks
system10 Rget_wazuh_statistics、get_wazuh_weekly_stats、get_wazuh_cluster_health、get_wazuh_cluster_nodes、get_wazuh_rules_summary、get_wazuh_remoted_stats、get_wazuh_log_collector_stats、search_wazuh_manager_logs、get_wazuh_manager_error_logs、validate_wazuh_connection
response — 封じ込め9 Wwazuh_block_ip、wazuh_isolate_host、wazuh_kill_process、wazuh_disable_user、wazuh_quarantine_file、wazuh_firewall_drop、wazuh_host_deny、wazuh_active_response、wazuh_restart
response — ロールバック5 Wwazuh_unisolate_host、wazuh_enable_user、wazuh_restore_file、wazuh_firewall_allow、wazuh_host_allow
response — 検証5 Rwazuh_check_blocked_ip、wazuh_check_agent_isolation、wazuh_check_process、wazuh_check_user_status、wazuh_check_file_quarantine
  • 合計:読み取りツール 41 個、書き込みツール 14 個。wazuh:write を含まないトークンでは、tools/list に書き込みツールが表示されません。
  • マルチクラスター モードでは 56 個目のツール list_wazuh_clusters(system、読み取り)が追加され、すべてのツールで省略可能な cluster_id を指定できます。
  • WAZUH_DISABLED_TOOLS を使うと個々のツールを非表示にできます。非表示のツールは tools/list から除外され、tools/call での呼び出しも拒否されます。不明なツールセット名またはツール名が指定されると、起動時にサーバーが停止します。
  • すべてのツールには、そのスコープに基づく MCP アノテーションが付与されます。読み取りツールは readOnlyHint: true、封じ込めツールは destructiveHint: true、ロールバックツールは destructiveHint: false です。openWorldHint: true が付与されるのは search_external_context のみです。
  • 入力スキーマは閉じられています(additionalProperties: false)。宣言されていない引数は拒否されます。
  • タイムスタンプフィルターでは ISO 8601 または OpenSearch の日付計算式(now-24h)を使用できます。
  • プロンプト:security_investigation、threat_hunt、compliance_audit、vulnerability_assessment、iso27001_assessment。

ツールごとのパラメーター:API ドキュメント。

アクティブレスポンスの動作
  • 結果には execution_status: "dispatched" と表示されます。これは Wazuh がコマンドをエージェントに配信したことを示すもので、実行されたことを示すものではありません。対応する wazuh_check_* ツールを使って効果を確認してください。
  • ブロックは解除するまで永続します。Wazuh は API からトリガーされたコマンドのタイムアウトを無視するため、正の値の duration は拒否されます。
  • wazuh_firewall_allow と wazuh_host_allow を使用するには、オペレーターがデプロイした取り消しコマンド(WAZUH_AR_FIREWALL_UNDO_COMMAND、WAZUH_AR_HOSTDENY_UNDO_COMMAND)が必要です。コマンドが設定されていない場合、呼び出しは拒否されます。

セキュリティモデル

制御動作
スコープ(RBAC)各ツールには wazuh:read または wazuh:write が必要です。スコープクレームのないトークンは読み取り専用です。MCP_API_KEY は、MCP_API_KEY_SCOPES に wazuh:write が含まれていない限り、読み取り専用です。AUTH_MODE=none の場合、AUTHLESS_ALLOW_WRITE=true でない限り、書き込みツールは無効になります。
Bearer トークンJWT は AUTH_SECRET_KEY で署名され、exp を含む必要があります。また、発行元の API キーに紐付けられます。キーを取り消すかローテーションすると、そのキーのトークンは無効になります。リフレッシュトークンはアクセストークンとして受け付けられません。
OAuthS256 PKCE を必須とする認可コードフロー、使い捨てのコード、リプレイ検知付きのリフレッシュトークンのローテーション、および失効に対応しています。ユーザーは wazuh_ API キー(許可される権限はそのキーのスコープを上限とし、キーが失効するとトークンも使用できなくなります)または OpenID Connect プロバイダーでサインインします(ID トークンの署名、発行者、対象者、有効期限、nonce を検証し、テナント、ドメイン、ユーザーの許可リストと、グループからスコープへのマッピングを適用します)。これにより、スコープ、レート制限、監査ログの記録はユーザーごとに設定されます。
アクションの安全策IP ブロックツールは、ループバックアドレス、Manager のアドレス(WAZUH_HOST が IP の場合)、および WAZUH_PROTECTED_IPS に含まれるアドレスへの操作を拒否します。汎用のアクティブレスポンスツールは、IP のブロック、隔離、プロセスの強制終了、アカウントの無効化を実行しません。エージェント 000(Manager)を対象とするアクションと再起動には WAZUH_ALLOW_MANAGER_AR=true が必要です。フリート全体のブロックには WAZUH_ALLOW_FLEET_AR=true が必要です。隔離ではシステムディレクトリとエージェントディレクトリへの操作が拒否されます。本番環境では、書き込みツールに confirm=true が必要です(WAZUH_REQUIRE_ACTION_CONFIRMATION)。
Wazuh TLSManager と Indexer の証明書は、デフォルトでシステムストアまたは WAZUH_CA_BUNDLE を使って検証されます。Manager の検証を無効にすると(WAZUH_ALLOW_SELF_SIGNED=true)、起動時にログが記録され、本番環境ではエラーとして記録されます。
監査ログスコープと確認のチェックを通過した書き込みツールの呼び出しはすべて、実行前と実行後に、プリンシパル、セッション、引数、結果とともにログに記録されます(ロガー wazuh_mcp_server.audit)。
秘匿化すべてのレスポンス形式で、ツールの出力とサーバーログから認証情報とトークンが秘匿化されます。
入力検証エージェント ID、IP、パス、コマンド名を型付きで検証します。Indexer クエリは文字列補間ではなく Query DSL で構築されます。
レート制限スライディングウィンドウ方式で、デフォルトは 60 秒あたり 100 リクエストです(RATE_LIMIT_REQUESTS、RATE_LIMIT_WINDOW)。/mcp と / ではプリンシパルとクライアント IP ごとに、プローブエンドポイント(/health、/ready、/metrics と、それらの /healthz、/readyz、/live、/livez エイリアス)を除く他のエンドポイントではクライアント IP ごとに制限されます。認証失敗はクライアント IP ごとにレート制限されます。プロキシの背後で実行する場合は TRUSTED_PROXIES を設定してください。
リソースの上限Wazuh 呼び出しにサーキットブレーカーを適用します。5 回連続で失敗すると開き、60 秒後に再試行します。サイズの大きいツール結果は注記を付けて切り詰められます(MAX_TOOL_RESPONSE_CHARS)。get_wazuh_alerts と search_security_events の limit は MAX_ALERTS_PER_QUERY(デフォルト 1000)を上限とします。インメモリのセッションストアは MAX_SESSIONS(1000)と MAX_SESSIONS_PER_PRINCIPAL(100)を上限とし、保存されるクライアントメタデータは切り詰められます。
コンテナーUID 1000 で実行されます。compose.yml では、ルートファイルシステムを読み取り専用にし、cap_drop: ALL と no-new-privileges を設定しています。ランタイムイメージには pip が含まれていません。

組み込みの TLS リスナーはありません。リバースプロキシまたはロードバランサーで TLS を終端してください。SECURITY.md の記載に従って脆弱性を報告してください。


Configuration

すべての設定は環境変数で行います(通常は .env 経由)。多くのデプロイで使用する主な設定は次のとおりです。

変数デフォルト用途
WAZUH_HOST、WAZUH_USER、WAZUH_PASS—Manager API への接続(必須)
WAZUH_PORT55000Manager API のポート
WAZUH_CA_BUNDLE—Manager と Indexer の検証に、システムストアの代わりに使用する CA PEM。Manager TLS を参照してください
WAZUH_ALLOW_SELF_SIGNEDfalsetrue にすると、証明書を検証せずに Manager に接続します(起動時にログに記録されます)
WAZUH_INDEXER_HOST、WAZUH_INDEXER_USER、WAZUH_INDEXER_PASS—Indexer への接続。ホストのプレフィックスが http:// の場合は HTTP で接続します
WAZUH_INDEXER_PORT9200Indexer のポート
ENVIRONMENTdevelopmentproduction では、強力な AUTH_SECRET_KEY が必要です(AUTH_MODE=none の場合を除く)
AUTH_MODEbearerbearer、oauth、または none
AUTH_SECRET_KEYproduction 以外ではプロセスごとに生成トークン署名キー。すべてのインスタンスで同じ値を使用してください
MCP_API_KEY / API_KEYS未設定の場合、プロセスごとに生成(development でのみ表示)単一の wazuh_ キー、またはキーごとのスコープを指定した、ハッシュ化済みキーの JSON リスト
MCP_API_KEY_SCOPESwazuh:readMCP_API_KEY に指定する、スペース区切りのスコープ
OAUTH_ISSUER_URLリクエストから導出AUTH_MODE=oauth の場合の、サーバーの公開 HTTPS URL
OAUTH_IDP_ISSUER—OAuth サインインに使用する OpenID Connect プロバイダー(OAUTH_IDP_CLIENT_ID と併用)。未設定の場合は API キーでサインインします
WAZUH_REQUIRE_ACTION_CONFIRMATIONproduction では true、それ以外では false書き込みツールには confirm=true が必要です
MCP_HOST、MCP_PORT127.0.0.1(Docker イメージでは 0.0.0.0)、3000バインドアドレスとポート
ALLOWED_ORIGINShttps://claude.ai,http://localhost:3000CORS 許可リスト(完全一致)
WAZUH_TOOLSETS、WAZUH_DISABLED_TOOLSすべて有効公開するツールを制限します
REDIS_URL—複数インスタンスのデプロイで共有するセッションストア
WAZUH_CLUSTERS_FILE./config/clusters.jsonマルチクラスターのトポロジー。未指定の場合はシングルクラスター モード
RESPONSE_FORMATjsongcf にすると、アラート、イベント、脆弱性のコレクションをコンパクトな GCF 形式でエンコードします(情報の損失はありません。エンコーダーを利用できない場合は JSON にフォールバックします)
YDC_API_KEY—search_external_context を有効にします

OAuth TTL、レート制限、セッション、アクティブレスポンスの設定を含む完全なリファレンスについては、Configuration Guide を参照してください。マルチクラスターのセットアップについては、Multi-Cluster Guide と config/clusters.json.example を参照してください。

ソースから実行する
python -m venv .venv && source .venv/bin/activate
pip install -e ".[redis,gcf]"      # extras are optional
set -a; . ./.env; set +a           # the server reads the environment, not .env
python -m wazuh_mcp_server

Python 3.11 以降が必要です。


HTTP エンドポイント

エンドポイントメソッド説明
/mcpPOST, GET, DELETEMCP Streamable HTTP
/POST, GET/mcp と同じハンドラー
/sseGET, POST410 Gone を返します。/mcp を使用してください
/healthGET生存確認。依存関係のチェックは行いません
/readyGETレディネス確認。Manager、Indexer、またはメモリ余裕のチェックに失敗すると 503 を返します
/metricsGETPrometheus メトリクス
/auth/tokenPOSTAPI キーをベアラー JWT と交換します
/.well-known/oauth-authorization-serverGETOAuth メタデータ(RFC 8414)。AUTH_MODE=oauth の場合のみ
/.well-known/oauth-protected-resourceGET保護対象リソースのメタデータ(RFC 9728)。AUTH_MODE=oauth の場合のみ
/oauth/authorize、/oauth/token、/oauth/revoke、/oauth/register、/oauth/callbackGET/POSTOAuth エンドポイント。AUTH_MODE=oauth の場合のみ(/oauth/register には OAUTH_ENABLE_DCR=true が必要で、OAUTH_IDP_ISSUER は未設定である必要があります。/oauth/callback は OpenID Connect のリダイレクト URI であり、OAUTH_IDP_ISSUER が必要です)
/docs、/redoc、/openapi.jsonGETOpenAPI ドキュメント

プロジェクト構成

src/wazuh_mcp_server/
├── server.py          # FastAPI app, MCP protocol handling, CORS/Origin checks, tool definitions and dispatch
├── toolsets.py        # Toolset membership, WAZUH_TOOLSETS resolution, tool annotations
├── auth.py            # API keys and bearer JWTs
├── oauth.py           # OAuth 2.0 authorization server (PKCE, API-key sign-in)
├── oidc.py            # OpenID Connect sign-in at an external identity provider
├── config.py          # Environment configuration and startup validation
├── security.py        # Rate limiting, request and input validation, log redaction
├── clusters.py        # Multi-cluster registry and Cross-Cluster Search routing
├── session_store.py   # In-memory and Redis session storage
├── resilience.py      # Circuit breakers, retries, graceful shutdown
├── monitoring.py      # Prometheus metrics, structured logging
├── gcf_format.py      # Optional GCF response encoding
└── api/
    ├── wazuh_client.py    # Wazuh Manager REST API client
    └── wazuh_indexer.py   # Wazuh Indexer (OpenSearch) client

ドキュメント

ドキュメント内容
設定ガイドすべての環境変数、認証モード、RBAC
Claude 連携Claude カスタムコネクターの接続
ローカル LLM ガイドvLLM、Open WebUI、Ollama、LiteLLM、ツール選択の評価
マルチクラスター名前付きクラスターとクラスター間検索
運用デプロイ、監視、メンテナンス
高度な機能マルチインスタンスデプロイ、コンパクト出力
トラブルシューティングよくある問題と解決方法
API リファレンスツールごとのパラメーター
セキュリティ強化セキュリティ強化のガイダンス
MCP 準拠プロトコル準拠に関する注記
Wazuh 互換性サポート対象の Wazuh バージョン
アップグレード · 変更履歴 · セキュリティポリシーリリースノートとポリシー

関連プロジェクト:Wazuh Autopilot は、このサーバー上に自動化された SOC ワークフローを構築します。


コントリビューション

CONTRIBUTING.md をご覧ください。バグ報告、機能リクエスト、質問は Issues に、セキュリティに関する報告は非公開の セキュリティアドバイザリー にお寄せください。


ライセンス

MIT


謝辞

コード、レビュー、バグ報告、設計に関するフィードバックをお寄せくださった皆さまに感謝します。ACKNOWLEDGMENTS.md もご覧ください。

コードとプルリクエスト

  • README の画像 @andrzej-piotrowski-pl — ISO 27001:2022 準拠ツール:附属書 A の管理策マッピング、ドメインスコアリング、ギャップ分析(#74)
  • README の画像 @blackwell-systems — レコードツール向けの GCF レスポンスエンコーディングをオプトイン方式で追加(#102、#104)
  • README の画像 @lucascruzb — scroll による期間全体のアラート集約。get_alerts_aggregated の基盤(#79)
  • README の画像 @kanylbullen — トークン効率の高いレスポンスを実現するコンパクト出力モード(#65)
  • README の画像 @mouse-value-add — You.com のウェブ検索コンテキストをオプションで追加(#85)
  • README の画像 @DrRSatzteil — tools/list のページネーション修正(#70)
  • README の画像 @SiM22 — Windsurf との互換性を実現する MCP 2025-06-18 サポート(#66)
  • README の画像 @aiunmukto — .env.example(#12)、初期の CI ワークフロー、Glama レジストリへの掲載
  • README の画像 @Karibusan — 依存関係の修正(#38)
  • README の画像 @lwsinclair — MseeP.ai への掲載(#9)
  • README の画像 @markeclaudio — OpenID Connect サインイン(#123)、アクティブレスポンスのガードレール(#124、#125)、セッションストアの上限設定(#126)、Manager の TLS 検証をデフォルトで有効化(#127)
  • README の画像 @MilkyWay88 と README の画像 @taylorwalton — 設定、ロギング、パッケージングに関する初期のプルリクエスト

バグ報告とディスカッション README の画像 @cbassonbgroup, README の画像 @cybersentinel-06, README の画像 @daod-arshad, README の画像 @mamema, README の画像 @marcolinux46, README の画像 @matveevandrey, README の画像 @punkpeye, README の画像 @tonyliu9189, README の画像 @Uberkarhu, README の画像 @bl4ck5w4n07, README の画像 @gnix45, README の画像 @hackdefendr, README の画像 @melmasry1987, README の画像 @Vasanth120v, README の画像 @wqfh

基盤として使用し、連携するもの

  • Wazuh — オープンソースのセキュリティプラットフォーム
  • Model Context Protocol — このサーバーが実装するプロトコル
  • vLLM、Ollama、Open WebUI — ローカルモデルの提供とチャットを担う、ローカル LLM スタックで使用されるもの

コントリビューター
コントリビューター
AvatarUsernameContributions
README の画像@alokemajumder💻 Code, 🐛 Issues, 🔀 PRs, 💬 Discussions
README の画像@Karibusan💻 Code, 🐛 Issues, 🔀 PRs
README の画像@gensecai-dev💻 Code, 🔀 PRs, 💬 Discussions
README の画像@aiunmukto💻 Code, 🔀 PRs
README の画像@andrzej-piotrowski-pl💻 Code, 🔀 PRs
README の画像@blackwell-systems💻 Code, 🔀 PRs
README の画像@kanylbullen💻 Code, 🔀 PRs
README の画像@lucascruzb💻 Code, 🔀 PRs
README の画像@lwsinclair💻 Code, 🔀 PRs
README の画像@mouse-value-add💻 Code, 🔀 PRs
README の画像@SiM22💻 Code, 🔀 PRs
README の画像@DrRSatzteil🔀 PRs
README の画像@MilkyWay88🔀 PRs
README の画像@taylorwalton🔀 PRs
README の画像@cbassonbgroup🐛 Issues
README の画像@cybersentinel-06🐛 Issues
README の画像@daod-arshad🐛 Issues
README の画像@mamema🐛 Issues
README の画像@marcolinux46🐛 Issues
README の画像@matveevandrey🐛 Issues
README の画像@punkpeye🐛 Issues
README の画像@tonyliu9189🐛 Issues
README の画像@Uberkarhu🐛 Issues
README の画像@bl4ck5w4n07💬 Discussions
README の画像@gnix45💬 Discussions
README の画像@hackdefendr💬 Discussions
README の画像@melmasry1987💬 Discussions
README の画像@Vasanth120v💬 Discussions
README の画像@wqfh💬 Discussions

Legend: 💻 Code · 🐛 Issues · 🔀 Pull Requests · 💬 Discussions

Auto-updated by GitHub Actions

コメント

MCP は初めてですか?

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

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