返回 MCP 目录
public公开dns本地运行

Wazuh-MCP-Server

一个生产级的开源MCP服务器,用于将Wazuh安全数据与LLM(如Claude桌面应用)集成。该服务通过Wazuh RESTful API进行身份验证,从Elasticsearch索引检索警报,将事件转换为MCP兼容的JSON格式,并暴露HTTP端点以供Claude桌面获取实时安全上下文。

article

README

🚀 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 下开源。

help

运行方式说明

cloud

托管运行

托管运行通常表示这个 MCP Server 由服务方环境承载,用户一般按页面提供的连接方式或授权流程接入,不需要在本地长期启动一个 MCP 进程

  1. 打开服务方连接页
  2. 完成授权或复制端点
  3. 在 MCP 客户端中连接
terminal

本地运行 / 其它方式

本地运行通常需要用户在自己的电脑或服务器上安装依赖,把 server_config 复制到 MCP 客户端,并按 env_schema 补齐环境变量、密钥或其它配置

  1. 复制 server_config
  2. 安装所需依赖
  3. 补齐环境变量后重启客户端