返回市场
安全副驾MCP服务器

安全副驾MCP服务器

作者:jguimera19 星标更新:2025-10-09

项目介绍

Security Copilot 和 Sentinel MCP 服务器

这是一个基于Python的MCP服务器,使用FastMCP库,提供与Microsoft Security Copilot和Microsoft Sentinel的集成,并使用Azure身份验证。 架构图

概述

该项目实现了一个MCP服务器,该服务器能够:

  • 在Microsoft Sentinel上运行KQL查询
  • 上传或更新Microsoft Security Copilot技能集/插件
  • 在Microsoft Security Copilot中运行提示和技能

该服务器作为开发环境与Microsoft Security Copilot之间的桥梁,允许测试、部署和执行技能和插件。它使用SSE作为MCP服务器的传输层。 当前集成有许多用例。其中一个最有趣的用途是支持Security Copilot KQL技能的开发、测试和部署。

代理流程1 代理流程2

功能

  • Sentinel 集成:针对你的Sentinel工作区执行KQL查询
  • Security Copilot 管理
    • 列出现有技能集/插件
    • 上传新的或更新现有技能集/插件
    • 在Security Copilot中运行提示或技能
  • 认证支持:包括交互式浏览器、客户端密钥和托管身份在内的多种认证方法

发展路线图

接下来的功能将包括:

  • Promptbook 测试和更新
  • 在Defender XDR中运行高级狩猎查询

前提条件

  • Python 3.8+
  • Microsoft Sentinel 工作区
  • Microsoft Security Copilot 访问权限
  • 对于Sentinel和Security Copilot的适当Azure权限

安装

  1. 克隆仓库:

    git clone https://github.com/jguimera/SecurityCopilotMCPServer.git
    cd SecurityCopilotMCPServer
    
  2. 安装依赖项:

    pip install -r requirements.txt
    
  3. 创建一个.env文件,包含以下配置:

    # 添加App Reg以使用ClientID和Secret进行认证
    # AZURE_TENANT_ID=your_tenant_id
    # AZURE_CLIENT_ID=your_client_id
    # AZURE_CLIENT_SECRET=your_client_secret
    SENTINEL_SUBSCRIPTION_ID=your_subscription_id
    SENTINEL_RESOURCE_GROUP=your_resource_group
    SENTINEL_WORKSPACE_NAME=your_workspace_name
    SENTINEL_WORKSPACE_ID=your_workspace_id
    # 认证选项:interactive, client_secret
    AUTHENTICATION_TYPE=interactive
    

使用

启动服务器

运行MCP服务器:

python server.py

在启动服务器之前运行测试:

python server.py --run-tests

可用工具

MCP服务器提供了以下工具:

  1. run_sentinel_query:在Sentinel上执行KQL查询
  2. get_skillsets:列出Security Copilot中的技能集
  3. upload_plugin:上传或更新技能集/插件
  4. run_prompt:在Security Copilot中运行提示或技能

MCP客户端配置用于Cursor

你可以从你选择的客户端使用此MCP服务器。在这个仓库中,你可以找到关于Cursor的指令和配置文件。

在你的客户端项目中添加.cursor文件夹以启用MCP工具。 这个文件夹包含两个文件:

  1. Cursor 项目规则(securitycopilotdev.mdc):此文件包含一些自定义Cursor规则,有助于代理在过程定义和理解用户提示时的工作。
  2. MCP客户端配置(mcp.json):连接Cursor到MCP服务器的文件。

你可以通过使用/tool_name参数直接调用工具,例如:

/tool_name 参数1="工具参数值"

例如:/run_prompt content="列出最近的风险用户"

更多信息:https://docs.cursor.com/context/model-context-protocol#configuring-mcp-servers

贡献

欢迎贡献!请随意提交Pull Request。

  1. 分叉仓库
  2. 创建你的功能分支(git checkout -b feature/amazing-feature
  3. 提交更改(git commit -m '添加一些惊人的功能'
  4. 推送到分支(git push origin feature/amazing-feature
  5. 打开Pull Request

许可证

本项目采用MIT许可证——详情见LICENSE文件。 </中文翻译>