Back to MCP directory
publicPublicdnsLocal runtime

shieldops

基于Archestra MCP平台构建的自主多代理安全运营中心,通过真实MCP工具调用实现告警分类、威胁调查、自动化响应和合规报告生成。

article

README

🚀 ShieldOps

ShieldOps是一个基于Archestra MCP平台构建的自主多智能体安全运营中心(SOC)。它能够对警报进行分类,调查指标,执行遏制策略,并通过真实的MCP工具调用和PostgreSQL证据链生成符合合规要求的报告。

🚀 快速开始

git clone https://github.com/SaaiAravindhRaja/shieldops.git
cd shieldops
cp .env.example .env

# 启动基础设施
Docker compose up -d

# 启动仪表盘(独立或实时)
cd dashboard
npm install
npm run dev

仪表盘地址:http://localhost:3001
Archestra用户界面地址:http://localhost:3000

| 服务 | 端口 | 用途 | | --- | --- | --- | | 仪表盘 | 3001 | 安全运营中心用户界面 | | Archestra用户界面 | 3000 | MCP编排 | | Archestra API | 9000 | 智能体管理 | | PostgreSQL | 5432 | 事件数据库 | | Prometheus | 9090 | 指标监控 | | Grafana | 3002 | 可观测性 |

✨ 主要特性

  • 真实的MCP执行:模拟触发针对MCP服务器的实时工具调用(非脚本化的用户界面)。
  • 5个专业智能体:每个阶段(分类 → 调查 → 响应 → 报告 → 监督)采用最小权限工具访问。
  • 防篡改证据链:每个事件显示时间线和证据哈希。
  • 生产级技术栈:PostgreSQL、Prometheus、Grafana,并通过Terraform实现基础设施即代码(IaC)。
  • 零成本演示路径:可使用模拟数据或通过Docker栈实时运行。

💻 使用示例

基础用法

git clone https://github.com/SaaiAravindhRaja/shieldops.git
cd shieldops
cp .env.example .env

# 启动基础设施
Docker compose up -d

# 启动仪表盘(独立或实时)
cd dashboard
npm install
npm run dev

高级用法

实时模拟演示

打开 /simulate 并运行任何场景。每个步骤都会执行一次真实的MCP工具调用,并显示JSON - RPC协议消息。

流水线预览:

  1. Sentinel 对警报进行分类 → incident-db/create_incident
  2. Sherlock 进行调查 → threat-intel/* 查找
  3. Overseer 批准高风险操作
  4. Responder 进行遏制 → security-playbook/*
  5. Chronicler 生成报告 → 事件关闭并进行合规检查

📚 详细文档

架构

shieldops/
├── dashboard/               # Next.js 16 + Tailwind v4 + Recharts
│   ├── app/                 # 用户界面 + API路由
│   ├── components/          # 侧边栏、命令栏
│   └── lib/                 # MCP引擎、数据钩子、实用工具
├── mcp-servers/
│   ├── incident-db/         # 事件生命周期 + 证据链
│   ├── threat-intel/        # AbuseIPDB / VirusTotal / NVD
│   └── security-playbook/   # 遏制操作 + 策略
├── terraform/               # Archestra基础设施即代码
├── grafana/                 # 预配置的仪表盘
├── scripts/                 # 数据库初始化 + 种子数据
└── docker-compose.yml

智能体

| 智能体 | 阶段 | 模型 | MCP工具 | | --- | --- | --- | --- | | Sentinel | 分类 | Gemini 2.5 Flash | create_incident, list_incidents, get_incident_stats | | Sherlock | 调查 | Gemini 2.5 Pro | check_ip, check_hash, check_domain, check_cve, bulk_check_ips, get_incident, add_evidence, update_incident | | Responder | 遏制 | Gemini 2.5 Flash | block_ip, isolate_pod, isolate_host, revoke_token, quarantine_user, execute_playbook | | Chronicler | 报告 | Gemini 2.5 Flash | get_incident, update_incident, add_evidence, get_incident_stats | | Overseer | 编排 | Gemini 2.5 Pro | 所有工具(审批权限) |

MCP服务器(18个工具)

| 服务器 | 工具 | 传输方式 | 功能 | | --- | --- | --- | --- | | incident-db | 6 | stdio | 基于PostgreSQL的事件生命周期 + 证据链 | | threat-intel | 5 | stdio | AbuseIPDB、VirusTotal、NVD集成 | | security-playbook | 7 | stdio | 遏制操作 + 策略执行 |

网络钩子摄入

ShieldOps通过以下方式接收警报:

curl -X POST http://localhost:3001/api/webhook/alert \
  -H "Content-Type: application/json" \
  -d '{"title":"Suspicious login from new country","severity":"P2","type":"unauthorized_access","source":"auth-service"}'

也支持Prometheus AlertManager格式。

🔧 技术细节

ShieldOps基于Archestra MCP平台构建,利用PostgreSQL作为事件数据库,通过真实的MCP工具调用实现警报分类、调查、遏制和报告等功能。智能体采用不同的Gemini模型,根据不同阶段的需求调用相应的MCP工具。系统使用Terraform实现基础设施即代码,结合Prometheus和Grafana进行指标监控和可观测性管理。

📄 许可证

本项目采用MIT许可证。

⚠️ 重要提示

  • 如果数据库不可用,可完全使用模拟数据运行。
  • 若要进行实时威胁情报查找,请在 .env 中提供API密钥。
  • 本项目旨在用于演示、黑客马拉松和概念验证部署。
help

Runtime guide

cloud

Hosted runtime

Hosted servers run from a provider-managed environment. You usually connect the MCP client to the hosted endpoint or follow the provider's authorization flow, without keeping a local process alive

  1. Open provider connection page
  2. Authorize or copy endpoint
  3. Connect from your MCP client
terminal

Local runtime / other methods

Local servers run on your own machine or infrastructure. You normally copy the server_config into your MCP client, install the required package, and provide env variables from env_schema when needed

  1. Copy server_config
  2. Install required package
  3. Fill env variables and restart client