Wazuh MCP Server について
Wazuh MCP Server は Wazuh SIEM 向けの MCP サーバーで、Claude などの MCP クライアントからアラート、エージェント、脆弱性、コンプライアンスデータの照会やアクティブレスポンスの実行ができます。既定では読み取り専用で、状態を変更するツールには別途 wazuh:write スコープが必要です。セキュリティ運用チームを想定し、スコープベースのアクセス制御と監査ログを備えています。
主な機能
- 01アラート、脆弱性、コンプライアンスにまたがる 55 のツール
- 02既定で読み取り専用、書き込みには専用スコープが必要
- 03Bearer トークン、OAuth 2.0、OIDC による認証
- 04Docker Compose によるデプロイと監査ログ
活用シーン
- 01MCP クライアントからの Wazuh アラートとエージェント状態の照会
- 02PCI-DSS、HIPAA などに基づくコンプライアンス状況の確認
- 03検証とロールバックを伴うアクティブレスポンスの実行
MCP 対応
本サーバーは /mcp で Streamable HTTP による MCP インターフェースを提供し、Wazuh の照会・対応ツール、プロンプト、リソースを MCP クライアントに公開します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Wazuh MCP サーバー
Wazuh SIEM 向けの Model Context Protocol(MCP)サーバーです。
MCP クライアント(Claude、ローカルモデルをバックエンドに使用する Open WebUI、または Streamable HTTP に対応する任意のクライアント)から、アラート、エージェント、脆弱性、コンプライアンスデータを照会し、スコープベースのアクセス制御と監査ログを備えたアクティブレスポンスを実行できます。
クイックスタート · クライアント · ツール · セキュリティ · 設定 · ドキュメント · 変更履歴 · アップグレード
概要
- 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) | oauth | PKCE を使用する 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。
| ツールセット | 数 | ツール |
|---|---|---|
alerts | 5 R | get_wazuh_alerts、get_wazuh_alert_summary、get_alerts_aggregated、analyze_alert_patterns、search_security_events |
agents | 6 R | get_wazuh_agents、get_wazuh_running_agents、check_agent_health、get_agent_processes、get_agent_ports、get_agent_configuration |
vulnerabilities | 3 R | get_wazuh_vulnerabilities、get_wazuh_critical_vulnerabilities、get_wazuh_vulnerability_summary |
analysis | 5 R | analyze_security_threat、check_ioc_reputation、perform_risk_assessment、get_top_security_threats、generate_security_report |
web_search | 1 R | search_external_context — You.com のウェブ検索。YDC_API_KEY が設定されていない場合は「not enabled」の結果を返します |
compliance | 6 R | run_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 |
system | 10 R | get_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 W | wazuh_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 W | wazuh_unisolate_host、wazuh_enable_user、wazuh_restore_file、wazuh_firewall_allow、wazuh_host_allow |
response — 検証 | 5 R | wazuh_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 キーに紐付けられます。キーを取り消すかローテーションすると、そのキーのトークンは無効になります。リフレッシュトークンはアクセストークンとして受け付けられません。 |
| OAuth | S256 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 TLS | Manager と 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_PORT | 55000 | Manager API のポート |
WAZUH_CA_BUNDLE | — | Manager と Indexer の検証に、システムストアの代わりに使用する CA PEM。Manager TLS を参照してください |
WAZUH_ALLOW_SELF_SIGNED | false | true にすると、証明書を検証せずに Manager に接続します(起動時にログに記録されます) |
WAZUH_INDEXER_HOST、WAZUH_INDEXER_USER、WAZUH_INDEXER_PASS | — | Indexer への接続。ホストのプレフィックスが http:// の場合は HTTP で接続します |
WAZUH_INDEXER_PORT | 9200 | Indexer のポート |
ENVIRONMENT | development | production では、強力な AUTH_SECRET_KEY が必要です(AUTH_MODE=none の場合を除く) |
AUTH_MODE | bearer | bearer、oauth、または none |
AUTH_SECRET_KEY | production 以外ではプロセスごとに生成 | トークン署名キー。すべてのインスタンスで同じ値を使用してください |
MCP_API_KEY / API_KEYS | 未設定の場合、プロセスごとに生成(development でのみ表示) | 単一の wazuh_ キー、またはキーごとのスコープを指定した、ハッシュ化済みキーの JSON リスト |
MCP_API_KEY_SCOPES | wazuh:read | MCP_API_KEY に指定する、スペース区切りのスコープ |
OAUTH_ISSUER_URL | リクエストから導出 | AUTH_MODE=oauth の場合の、サーバーの公開 HTTPS URL |
OAUTH_IDP_ISSUER | — | OAuth サインインに使用する OpenID Connect プロバイダー(OAUTH_IDP_CLIENT_ID と併用)。未設定の場合は API キーでサインインします |
WAZUH_REQUIRE_ACTION_CONFIRMATION | production では true、それ以外では false | 書き込みツールには confirm=true が必要です |
MCP_HOST、MCP_PORT | 127.0.0.1(Docker イメージでは 0.0.0.0)、3000 | バインドアドレスとポート |
ALLOWED_ORIGINS | https://claude.ai,http://localhost:3000 | CORS 許可リスト(完全一致) |
WAZUH_TOOLSETS、WAZUH_DISABLED_TOOLS | すべて有効 | 公開するツールを制限します |
REDIS_URL | — | 複数インスタンスのデプロイで共有するセッションストア |
WAZUH_CLUSTERS_FILE | ./config/clusters.json | マルチクラスターのトポロジー。未指定の場合はシングルクラスター モード |
RESPONSE_FORMAT | json | gcf にすると、アラート、イベント、脆弱性のコレクションをコンパクトな 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 エンドポイント
| エンドポイント | メソッド | 説明 |
|---|---|---|
/mcp | POST, GET, DELETE | MCP Streamable HTTP |
/ | POST, GET | /mcp と同じハンドラー |
/sse | GET, POST | 410 Gone を返します。/mcp を使用してください |
/health | GET | 生存確認。依存関係のチェックは行いません |
/ready | GET | レディネス確認。Manager、Indexer、またはメモリ余裕のチェックに失敗すると 503 を返します |
/metrics | GET | Prometheus メトリクス |
/auth/token | POST | API キーをベアラー JWT と交換します |
/.well-known/oauth-authorization-server | GET | OAuth メタデータ(RFC 8414)。AUTH_MODE=oauth の場合のみ |
/.well-known/oauth-protected-resource | GET | 保護対象リソースのメタデータ(RFC 9728)。AUTH_MODE=oauth の場合のみ |
/oauth/authorize、/oauth/token、/oauth/revoke、/oauth/register、/oauth/callback | GET/POST | OAuth エンドポイント。AUTH_MODE=oauth の場合のみ(/oauth/register には OAUTH_ENABLE_DCR=true が必要で、OAUTH_IDP_ISSUER は未設定である必要があります。/oauth/callback は OpenID Connect のリダイレクト URI であり、OAUTH_IDP_ISSUER が必要です) |
/docs、/redoc、/openapi.json | GET | OpenAPI ドキュメント |
プロジェクト構成
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 に、セキュリティに関する報告は非公開の セキュリティアドバイザリー にお寄せください。
ライセンス
謝辞
コード、レビュー、バグ報告、設計に関するフィードバックをお寄せくださった皆さまに感謝します。ACKNOWLEDGMENTS.md もご覧ください。
コードとプルリクエスト
@andrzej-piotrowski-pl — ISO 27001:2022 準拠ツール:附属書 A の管理策マッピング、ドメインスコアリング、ギャップ分析(#74)
@blackwell-systems — レコードツール向けの GCF レスポンスエンコーディングをオプトイン方式で追加(#102、#104)
@lucascruzb — scroll による期間全体のアラート集約。get_alerts_aggregatedの基盤(#79)
@kanylbullen — トークン効率の高いレスポンスを実現するコンパクト出力モード(#65)
@mouse-value-add — You.com のウェブ検索コンテキストをオプションで追加(#85)
@DrRSatzteil — tools/listのページネーション修正(#70)
@SiM22 — Windsurf との互換性を実現する MCP 2025-06-18 サポート(#66)
@aiunmukto — .env.example(#12)、初期の CI ワークフロー、Glama レジストリへの掲載
@Karibusan — 依存関係の修正(#38)
@lwsinclair — MseeP.ai への掲載(#9)
@markeclaudio — OpenID Connect サインイン(#123)、アクティブレスポンスのガードレール(#124、#125)、セッションストアの上限設定(#126)、Manager の TLS 検証をデフォルトで有効化(#127)
@MilkyWay88 と
@taylorwalton — 設定、ロギング、パッケージングに関する初期のプルリクエスト
バグ報告とディスカッション
@cbassonbgroup,
@cybersentinel-06,
@daod-arshad,
@mamema,
@marcolinux46,
@matveevandrey,
@punkpeye,
@tonyliu9189,
@Uberkarhu,
@bl4ck5w4n07,
@gnix45,
@hackdefendr,
@melmasry1987,
@Vasanth120v,
@wqfh
基盤として使用し、連携するもの
- Wazuh — オープンソースのセキュリティプラットフォーム
- Model Context Protocol — このサーバーが実装するプロトコル
- vLLM、Ollama、Open WebUI — ローカルモデルの提供とチャットを担う、ローカル LLM スタックで使用されるもの
コントリビューター
コントリビューター
| Avatar | Username | Contributions |
|---|---|---|
| @alokemajumder | 💻 Code, 🐛 Issues, 🔀 PRs, 💬 Discussions | |
| @Karibusan | 💻 Code, 🐛 Issues, 🔀 PRs | |
| @gensecai-dev | 💻 Code, 🔀 PRs, 💬 Discussions | |
| @aiunmukto | 💻 Code, 🔀 PRs | |
| @andrzej-piotrowski-pl | 💻 Code, 🔀 PRs | |
| @blackwell-systems | 💻 Code, 🔀 PRs | |
| @kanylbullen | 💻 Code, 🔀 PRs | |
| @lucascruzb | 💻 Code, 🔀 PRs | |
| @lwsinclair | 💻 Code, 🔀 PRs | |
| @mouse-value-add | 💻 Code, 🔀 PRs | |
| @SiM22 | 💻 Code, 🔀 PRs | |
| @DrRSatzteil | 🔀 PRs | |
| @MilkyWay88 | 🔀 PRs | |
| @taylorwalton | 🔀 PRs | |
| @cbassonbgroup | 🐛 Issues | |
| @cybersentinel-06 | 🐛 Issues | |
| @daod-arshad | 🐛 Issues | |
| @mamema | 🐛 Issues | |
| @marcolinux46 | 🐛 Issues | |
| @matveevandrey | 🐛 Issues | |
| @punkpeye | 🐛 Issues | |
| @tonyliu9189 | 🐛 Issues | |
| @Uberkarhu | 🐛 Issues | |
| @bl4ck5w4n07 | 💬 Discussions | |
| @gnix45 | 💬 Discussions | |
| @hackdefendr | 💬 Discussions | |
| @melmasry1987 | 💬 Discussions | |
| @Vasanth120v | 💬 Discussions | |
| @wqfh | 💬 Discussions |
Legend: 💻 Code · 🐛 Issues · 🔀 Pull Requests · 💬 Discussions
Auto-updated by GitHub Actions
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。