安全副本和哨兵MCP服务器
基于Python的MCP服务器,使用FastMCP库,使用Azure身份验证提供与Microsoft Security Copilot和Microsoft Sentinel的集成。 Diagram
概述
此项目实现了一个MCP服务器,该服务器支持:
- 对Microsoft Sentinel运行KQL查询
- 上传/更新Microsoft Security Copilot技能集/插件
- 在Microsoft Security Copilot中运行提示和技巧
服务器充当开发环境和Microsoft Security Copilot之间的桥梁,允许测试、部署和执行技能和插件。它使用SSE作为MCP服务器的传输层。 当前集成有许多用例。其中最有趣的是支持安全副驾驶KQL技能的开发、测试和部署。
特性
- Sentinel集成:对Sentinel工作区执行KQL查询
- 安全副驾驶管理:
- 列出现有技能/插件 - 上传新的或更新现有的技能集/插件 - 在Security Copilot中运行提示或技能
- 身份验证支持:多种身份验证方法,包括交互式浏览器、客户端密钥和托管身份
路线图
接下来的功能将包括:
- Promptbook测试和更新
- 在Defender XDR中运行高级狩猎查询
先决条件
- Python 3.8+
- Microsoft Sentinel工作区
- Microsoft安全副本访问
- Sentinel和安全副本的适当Azure权限
安装
- 克隆存储库:
git clone https://github.com/jguimera/SecurityCopilotMCPServer.git
cd SecurityCopilotMCPServer- 安装依赖项:
pip install -r requirements.txt- 创建一个
.env具有以下配置的文件:
#Add App Reg to use ClientID and Secret authentication
#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
#Authentication Options: interactive, client_secret
AUTHENTICATION_TYPE=interactive用法
启动服务器
运行MCP服务器:
python server.py要在启动服务器之前运行测试,请执行以下操作:
python server.py --run-tests可用工具
MCP服务器提供以下工具:
- run_sentinel_query:在Sentinel中执行KQL查询
- get_skillsets:列出安全副驾驶中的技能
- upload_plugin:上传或更新技能集/插件
- run_prompt:在Security Copilot中运行提示或技能
游标的MCP客户端配置
您可以从您选择的客户端使用此MCP服务器。在这个仓库中,您可以找到Cursor的说明和配置文件。
在客户端项目中添加.cursor文件夹以启用MCP工具。 此文件夹包含两个文件:
- 游标项目规则(securitycopilotdev.mdc):此文件包含一些自定义游标规则,以帮助代理进行流程定义和理解用户提示。
- MCP客户端配置(MCP.json):将Cursor连接到MCP服务器的文件。
您可以使用/tool_name parameter1=“工具参数的值”直接调用该工具 例如:/run_prompt content=“列出最近有风险的用户”
更多信息:https://docs.cursor.com/context/model-context-protocol#configuring-mcp服务器
贡献
欢迎投稿!请随时提交拉取请求。
- 分叉存储库
- 创建功能分支(
git checkout -b feature/amazing-feature) - 提交您的更改(
git commit -m 'Add some amazing feature') - 推到分支(
git push origin feature/amazing-feature) - 打开拉取请求
许可证
此项目根据MIT许可证获得许可-有关详细信息,请参阅许可证文件。
