关于 toxic-flow-auditor
toxic-flow-auditor 是供安全团队审查 MCP 工具目录或源代码的 MCP 服务,可识别不可信输入、敏感数据与外传或破坏操作的组合。它通过静态启发式规则评估风险,不调用实时工具。
主要功能
- 01扫描目录与源代码
- 02检测致命三要素
- 03检测危险能力组合
- 04识别 KVKK 相关敏感信息
- 05A–F 风险评级
适用场景
- 01部署前审查 MCP 工具目录
- 02扫描源文件中的工具注册
- 03生成 JSON 或 SARIF 审计结果
MCP 相关
它提供工具,可审计 tools/list 格式的 JSON、扫描源代码中的工具注册、检查文件与目录,并解释三要素模型。分析仅为静态检查,不会调用实时工具。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
5收录的工具列表 · 更新于 今天
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| label | string | 否 | 服务器/目录的可选标签 |
| catalog | string | 是 | 来自 tools/list 的工具 JSON 数组或 { tools: [...] } |
详细介绍
@guardbee/mcp-toxic-flow-auditor
🇬🇧 English | 🇹🇷 Türkçe | 🇨🇳 中文 | 🇯🇵 日本語 | 🇰🇷 한국어 | 🇧🇷 Português | 🇪🇸 Español | 🇩🇪 Deutsch
一个 MCP 服务,用于审计 MCP 工具目录中的有害流程——Simon Willison 提出的致命三要素:
- 不可信内容(获取、抓取、浏览、问题、信息源)
- 敏感/私人数据(保险库、数据库、机密、受 KVKK 监管的个人身份信息)
- 数据外传或销毁(发送、Webhook、导出、删除、丢弃)
当单个 MCP 服务同时暴露这三类能力时,一次提示词注入就可能将它们串联起来。主要对应 OWASP MCP10:2025。
遥测功能默认关闭。设置
GUARDBEE_TELEMETRY=1后,它会发送服务、工具、成功状态、持续时间,以及文件路径等简短参数值;较长的字符串以及content、token或password等字段会替换为占位符。参见@guardbee/mcp-telemetry。
Claude ──► toxic-flow-auditor ──► tools/list JSON or MCP server source
│
├─ lethal_trifecta (untrusted + sensitive + outbound)
├─ single_tool_trifecta (one tool alone spans all three)
├─ sensitive_plus_exfil
├─ untrusted_plus_exfil
└─ sensitive_plus_destruct
标记内容
- 目录级致命三要素。 在同一服务中,能获取不可信内容、访问保险库/数据库/个人身份信息,并向外发送数据或销毁数据的工具。
- 单个工具具备致命三要素。 某个注册工具的名称/描述本身涵盖全部三类能力。
- 危险组合。 敏感数据+外传、不可信内容+外传,或敏感数据+破坏性操作,即使不具备完整的致命三要素也会标记。
- 兼顾 KVKK 的启发式规则。 土耳其个人身份信息信号(
tc_kimlik、müşteri、KVKK)会被视为敏感数据。 - 逐词解析 snake_case 名称。
read_vault_secret和drop_table会按各个单词进行分类;发起拉取请求也会计为数据外传。
评级范围为 A–F。无需 API 密钥。仅进行静态/目录分析——不会调用实际运行的工具。
分类规则来自 @guardbee/guard-core;@guardbee/mcp-security-proxy 使用相同规则在运行时阻止有害流程。
工具
| 工具 | 用途 |
|---|---|
audit_catalog | 审计符合 tools/list 结构的 JSON 转储 |
scan_source | 从源文本中提取 .tool(...) 注册项 |
scan_file | 扫描一个源文件 |
scan_directory | 递归扫描;合并多个文件中的工具 |
explain_trifecta | 解释该模型 |
命令行界面
npx @guardbee/mcp-toxic-flow-auditor audit <tools.json> [--fail-on=any] [--format=text|json|sarif]
npx @guardbee/mcp-toxic-flow-auditor scan <path> [--fail-on=any] [--format=text|json|sarif]
目录示例:
{
"tools": [
{ "name": "fetch_page", "description": "Scrape a URL" },
{ "name": "read_vault_secret", "description": "Read API key from vault" },
{ "name": "send_slack_message", "description": "Post to webhook" }
]
}
反馈
有问题、想法或发现误报?请在 GitHub 讨论区发起讨论,或提交问题。如果 GuardBee 对你有帮助,请在代码仓库点亮 ⭐,帮助其他人发现它。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。