Wazuh MCP Server

Wazuh MCP Server

🚀 Wazuh MCP 服务器

Wazuh MCP 服务器是一个生产级别的开源 MCP 服务器,它能将 Wazuh 安全数据与大型语言模型(如 Claude Desktop App)集成。该服务借助 JWT 令牌,通过 REST API 与 Wazuh 进行身份验证,从 Elasticsearch 索引中检索警报,把事件转换为符合 MCP 标准的 JSON 格式,还提供一个 HTTP 端点,供 Claude Desktop 实时获取安全上下文。

✨ 主要特性

  • 基于 JWT 的身份验证:使用 JWT 令牌安全地与 Wazuh 进行身份验证。
  • 警报检索:查询 Elasticsearch 索引以获取 Wazuh 警报数据。
  • MCP 消息转换:将安全事件转换为标准化的 MCP 消息。
  • Flask HTTP 服务器:提供一个 /mcp 端点,用于 Claude Desktop 集成。
  • 强大的错误处理:处理令牌过期、网络超时和格式错误的数据。
  • 可配置性:通过环境变量轻松配置,并通过 Claude Desktop 的配置文件进行集成。

📦 安装指南

先决条件

  • Python 3.8+
  • 对 Wazuh API 实例的访问权限
  • (可选) 已配置好的 Claude Desktop,以便调用 MCP 服务器

安装步骤

  1. 克隆仓库
    git clone https://github.com/unmuktoai/Wazuh-MCP-Server.git
    cd Wazuh-MCP-Server
    
  2. 创建并激活虚拟环境
    python3 -m venv venv
    source venv/bin/activate  # Windows用户请使用: venv\Scripts\activate
    
  3. 安装依赖项
    pip install -r requirements.txt
    
  4. 配置 设置以下环境变量以配置 MCP 服务器:
WAZUH_HOST: 指定Wazuh服务器的主机名或IP地址。
WAZUH_PORT: Wazuh API使用的端口(默认: 55000)。
WAZUH_USER: Wazuh API用户名。
WAZUH_PASS: Wazuh API密码。
VERIFY_SSL: 设置为"true""false"(默认: false)。
MCP_SERVER_PORT: MCP服务器运行的端口(默认: 8000)。

示例(MacOS):

export WAZUH_HOST="your_wazuh_server"
export WAZUH_PORT="55000"
export WAZUH_USER="your_username"
export WAZUH_PASS="your_password"
export VERIFY_SSL="false"
export MCP_SERVER_PORT="8000"
  1. 运行服务器 使用以下命令启动 MCP 服务器:
python wazuh_mcp_server.py

服务器将在指定的 MCP_SERVER_PORT 端口上监听所有接口。 6. 与 Claude Desktop 集成 要将 MCP 服务器与 Claude Desktop 集成,请更新其配置文件: MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json Windows: %APPDATA%/Claude/claude_desktop_config.json 在 mcpServers 下添加以下条目:

{
"mcpServers": {
"mcp-server-wazuh": {
"command": "python3 /path/to/Wazuh-MCP-Server/wazuh_mcp_server.py",
"env": {
"WAZUH_HOST": "your_wazuh_server",
"WAZUH_PORT": "55000",
"WAZUH_USER": "your_username",
"WAZUH_PASS": "your_password",
"MCP_SERVER_PORT": "8000",
"VERIFY_SSL": "false"
}
}
}
}

📄 许可证

本项目在 MIT License 下开源。

  • 0 关注
  • 0 收藏,8 浏览
  • system 提出于 2025-09-30 03:06

相似服务问题