SecOps MCP Server 使用说明

项目简介

SecOps MCP Server 是一个基于 Model Context Protocol (MCP) 构建的服务器,旨在桥接大型语言模型 (LLM) 与 Google Chronicle Security Operations 平台。通过这个服务器,LLM 能够以标准化的方式访问 Chronicle 的安全数据和功能,从而实现更智能的安全分析和自动化运维任务。

主要功能点

  • 安全事件搜索 (search_security_events): 允许 LLM 使用灵活的查询语句在 Chronicle 中搜索安全事件,例如网络连接、进程创建等。
  • 安全告警检索 (get_security_alerts): 使 LLM 能够获取 Chronicle 中产生的安全告警,并查看告警的详细信息,如规则名称、创建时间、状态和严重程度。
  • 实体信息查询 (lookup_entity): 支持 LLM 查询关于特定安全实体(如 IP 地址、域名、文件哈希等)的详细信息,包括首次和最后一次出现的时间、事件计数以及相关的资产信息。
  • 安全规则列表 (list_security_rules): 提供 Chronicle 中配置的安全检测规则列表,包括规则 ID、名称、类型和启用状态。
  • 威胁情报匹配 (get_ioc_matches): 帮助 LLM 获取与 Chronicle 威胁情报 (IoC) 匹配的事件,识别潜在的威胁活动。

安装步骤

  1. 安装 Python 3.11+: 确保您的系统已安装 Python 3.11 或更高版本。
  2. 克隆仓库: 使用 Git 克隆 'mcp-secops-v3' 仓库到本地:
    git clone https://github.com/emeryray2002/mcp-secops-v3
  3. 进入仓库目录: 导航到克隆下来的仓库目录:
    cd mcp-secops-v3
  4. 安装依赖: 使用 pip 安装项目依赖:
    pip install -e .
  5. 配置环境变量: 配置访问 Google Chronicle 所需的环境变量。您需要从 Google Cloud Platform 获取以下信息并设置为环境变量:
    • 'CHRONICLE_PROJECT_ID': 您的 Google Cloud 项目 ID。
    • 'CHRONICLE_CUSTOMER_ID': 您的 Chronicle 客户 ID。
    • 'CHRONICLE_REGION': 您的 Chronicle 区域 (例如:us, eu)。

服务器配置

为了让 MCP 客户端(例如 Claude Desktop)连接到 SecOps MCP Server,您需要配置客户端的 MCP 服务器设置。以下是针对 Claude Desktop 的配置示例,您可以根据您的 MCP 客户端进行调整。

在 Claude Desktop 的 'claude_desktop_config.json' 文件中,配置 'mcpServers' 部分如下:

{
  "mcpServers": {
    "secops-mcp": {  // 服务器名称,可以自定义
      "command": "/path/to/your/uv",  // uv 执行文件的路径。可以使用 'which uv' 命令查找 uv 的路径。如果使用虚拟环境或其他方式运行,可能需要调整为 Python 解释器路径
      "args": [
        "--directory",
        "/path/to/your/mcp-secops-v3",  // 克隆的 mcp-secops-v3 仓库的绝对路径
        "run",
        "secops_mcp.py"  // 服务器主脚本文件名
      ],
      "env": {
        "CHRONICLE_PROJECT_ID": "your-google-cloud-project-id",  // 您的 Google Cloud 项目 ID,与您设置的环境变量一致
        "CHRONICLE_CUSTOMER_ID": "your-chronicle-customer-id",  // 您的 Chronicle 客户 ID,与您设置的环境变量一致
        "CHRONICLE_REGION": "us"   // 您的 Chronicle 区域,与您设置的环境变量一致
      }
    }
  }
}

配置参数说明:

  • 'server name': 'secops-mcp',服务器的名称,在客户端中用于标识和选择。
  • 'command': '/path/to/your/uv',MCP服务器的启动命令。指向 'uv' 可执行文件的路径。'uv' 是一个快速的 Python 包安装和运行工具。如果您没有安装 'uv' 或者希望直接使用 Python 运行,可以将 'command' 更改为您的 Python 解释器路径 (例如:'/usr/bin/python3' 或 虚拟环境中的 Python 路径),并相应地调整 'args'。
  • 'args': 启动命令的参数列表
    • '--directory': 指定工作目录为 'mcp-secops-v3' 仓库的路径。
    • 'run': 告诉 'uv' 运行指定的 Python 脚本。
    • 'secops_mcp.py': 指定要运行的服务器主脚本。
  • 'env': 环境变量
    • 'CHRONICLE_PROJECT_ID', 'CHRONICLE_CUSTOMER_ID', 'CHRONICLE_REGION': Chronicle 访问凭据,与您在安装步骤中设置的环境变量一致。

注意: 请将 '/path/to/your/uv' 和 '/path/to/your/mcp-secops-v3' 替换为您的实际路径。

基本使用方法

  1. 启动服务器: 在仓库目录下,运行以下命令启动 SecOps MCP Server:
    python main.py
    或者如果使用 'uv' 配置,则无需手动启动,Claude Desktop 等客户端会根据配置自动启动。
  2. 连接客户端: 配置并启动您的 MCP 客户端(例如 Claude Desktop)。客户端应该能够检测到并连接到 SecOps MCP Server。
  3. 使用安全工具: 在客户端中,您现在可以使用 SecOps MCP Server 提供的安全工具,例如查询安全事件、检索告警等。具体使用方式请参考您的 MCP 客户端的文档。在 Claude Desktop 中,您可能会在界面中看到一个新的锤子图标,表示 MCP 服务器已激活。

信息

分类

商业系统