AI代理审计工具

SentinelMCP是一个基于MCP的AI代理活动审计工具,用于检测成本激增、安全问题、速率限制和异常行为,适用于AI代理的治理和监控。

  • by incruder1
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 incruder1/sentinel_mcp

使用说明

SentinelMCP–人工智能代理审计员

基于MCP的人工智能代理治理:对成本飙升、安全问题、速率限制和异常情况的活动日志进行审计。为 2快速2 MCP 编程马拉松;与集成 阿奇斯特拉 作为MCP服务器。

现场演示: sentinel-mcp-auditor.onrender.com
代表: github/incruder1/sentinel_mcp


它的作用

您发送代理活动日志(纯文本)。SentinelMCP返回结构化报告:

  • 风险评分 (0–100)
  • 冲突 包括类型(成本、安全、费率、异常)、严重程度、描述和建议
  • 受审核的代理人 以及简短的总结

它作为REST API和MCP服务器运行,因此Archestra(或任何MCP客户端)可以调用审计工具。


技术栈

  • Python 3.10+, 快速API, 派丹蒂克, Uvicorn
  • MCP-SDK 面向Archestra的服务器
  • 开放人工智能 (可选)用于设置基于LLM的审核 OPENAI_API_KEY

架构: 两个入口。 main.py 运行web应用程序和REST API(例如在Render上)。 mcp_server.py 运行MCP服务器(例如,Archestra的本地服务器)。两者都使用相同的审计逻辑 tools.py默认情况下,审计是基于规则的;可选的 use_ai=true 使用LLM处理更混乱的日志。

建筑

SentinelMCP之前

Archestra Platform
  ├─ Agent A → calls gpt-4 500x → burns $450 💸
  ├─ Agent B → accesses prod DB → security risk 🔓
  └─ Agent C → infinite loop → nobody notices ♾️

使用SentinelMCP

┌────────────────────────────────────────────────────────────┐
│                  Archestra Control Plane                    │
│         Central execution • Permissions • Observability     │
└────────────────────────────────────────────────────────────┘
                             │
        ┌────────────────────┼────────────────────┐
        ▼                    ▼                    ▼
  ┌─────────┐          ┌─────────┐         ┌─────────┐
  │ Agent A │          │ Agent B │         │ Agent C │
  │ (App)   │          │ (App)   │         │ (App)   │
  └─────────┘          └─────────┘         └─────────┘
        │                    │                    │
        └────────────────────┼────────────────────┘
                             │ activity logs
                             ▼
                    ┌─────────────────┐
                    │  SentinelMCP    │
                    │    (Auditor)    │
                    └─────────────────┘
                             │
                             ▼
                  ┌─────────────────────┐
                  │   Audit Report      │
                  │ • Risk Score: 95/100│
                  │ • 3 CRITICAL issues │
                  │ • Recommendations   │
                  └─────────────────────┘

密钥: SentinelMCP运行 Archestra内部 作为治理层。所有代理活动都经过审计检查。


安全和治理功能

功能 实现
工具级隔离 SentinelMCP有一个功能: audit_agent_activity()
只读 仅读取日志;无法修改代理或基础结构
结构化输出 Pydantic模型;没有自由形式的代理操作
多智能体可观察性 在一份报告中跟踪所有代理的违规行为
费用控制 在账单爆炸之前标记支出阈值
安全执行 检测未经授权的访问、凭据泄漏
Archestra原住民 设计为控制平面组件,而非独立组件

快速开始

本地

git clone https://github.com/incruder1/sentinel_mcp.git
cd sentinel_mcp
python3 -m venv .venv
source .venv/bin/activate   # Windows: .venv\Scripts\activate
pip install -r requirements.txt
python main.py

打开 http://localhost:10000 对于UI,或者调用API:

curl http://localhost:10000/health
curl -X POST http://localhost:10000/audit -H "Content-Type: application/json" \
  -d '{"activity_logs": "Agent-X: cost $500 in 1hr\nAgent-Y: API_KEY exposed in logs"}'

快速演示(CLI): 随着服务器的运行, python demo.py 针对API运行多个审核场景。对于多代理编排器: python orchestrator.py (使用相同 /audit 端点)。


项目结构

路径 目的
main.py FastAPI应用程序:web UI, /audit, /health, /mock-data
mcp_server.py Archestra的独立MCP服务器(端口10001)
tools.py 审计逻辑:规则+可选LLM审计
static/index.html 实时审计演示前端
demo.py CLI脚本:针对API运行预设方案
orchestrator.py 运行模拟代理并审核其输出
agents/*.py 编排器使用的模拟代理
render.yaml 绘制蓝图; Dockerfile 用于容器部署

Archestra集成

  1. 运行MCP服务器: python mcp_server.py (在端口10001上侦听)。
  2. 在Archestra中,添加一个带有URL的MCP服务器 http://host.docker.internal:10001/mcp (或您的主机:10001/mcp)。
  3. 这 audit_agent_activity_tool 出现在工具列表中;客服或聊天室可以拨打电话 activity_logs 并获得审计报告。

API

端点 方法 描述
/ GET Web用户界面
/health GET 健康检查
/audit POST 正文: { "activity_logs": "..." }.可选: "use_ai": true 法学硕士审计(需求 OPENAI_API_KEY).
/mock-data GET 测试日志示例

违规类型

类型 示例
COST_SPIKE 高支出、金额、计费关键字
安全 未经授权的访问、凭据、数据库写入、管理员
RATE_LIMIT 429,限制,配额,请求过多
异常 同一工具多次、连续错误、重试、卡住/崩溃

部署(渲染)

将仓库连接到“作为Web服务呈现”。构建: pip install -r requirements.txt.开始: uvicorn main:app --host 0.0.0.0 --port $PORT.健康路径: /health。参见 render.yaml 为蓝图。


未来路线图

  • 实时流媒体: 实时审计提要的WebSocket端点
  • 警报集成: Slack/PagerDuty钩子用于严重违规
  • 历史分析: 跟踪代理随时间的行为、成本趋势
  • 策略引擎: 每个组织的自定义审计规则(例如,“如果Agent-X每天花费>100美元,则标记”)
  • 自动修复: 暂停严重违规的代理(通过审批工作流程)