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) 匹配的事件,识别潜在的威胁活动。
安装步骤
- 安装 Python 3.11+: 确保您的系统已安装 Python 3.11 或更高版本。
- 克隆仓库: 使用 Git 克隆 'mcp-secops-v3' 仓库到本地:
git clone https://github.com/emeryray2002/mcp-secops-v3 - 进入仓库目录: 导航到克隆下来的仓库目录:
cd mcp-secops-v3 - 安装依赖: 使用 pip 安装项目依赖:
pip install -e . - 配置环境变量: 配置访问 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' 替换为您的实际路径。
基本使用方法
- 启动服务器: 在仓库目录下,运行以下命令启动 SecOps MCP Server:
或者如果使用 'uv' 配置,则无需手动启动,Claude Desktop 等客户端会根据配置自动启动。python main.py - 连接客户端: 配置并启动您的 MCP 客户端(例如 Claude Desktop)。客户端应该能够检测到并连接到 SecOps MCP Server。
- 使用安全工具: 在客户端中,您现在可以使用 SecOps MCP Server 提供的安全工具,例如查询安全事件、检索告警等。具体使用方式请参考您的 MCP 客户端的文档。在 Claude Desktop 中,您可能会在界面中看到一个新的锤子图标,表示 MCP 服务器已激活。
信息
分类
商业系统