关于 Automation Auditor MCP
Automation Auditor MCP 是面向自动化开发与部署人员的只读静态检查服务,可分析 n8n、Dify、Trigger.dev 和 Activepieces 导出内容。它还提供 OpenAPI 检查与 URL 预检,并明确报告各格式的检查边界。
主要功能
- 01检查 n8n、Dify 工作流结构
- 02分析 Trigger.dev 任务源码
- 03检查 Activepieces 流程
- 04检查 OpenAPI 文档
- 05预检 HTTPS URL
- 06返回带规则和严重性的发现
适用场景
- 01部署前查找工作流断链
- 02检查任务 ID 重复或缺失
- 03评估 OpenAPI 集成配置
- 04筛查 URL 格式风险
MCP 相关
它通过 MCP 暴露工作流审计、OpenAPI 检查、URL 预检和支持格式查询工具。客户端需将完整文本传入;服务不会自行读取文件或执行工作流。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
4收录的工具列表 · 更新于 2 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| source | string | 是 | |
| platform | string | 是 |
详细介绍
Automation Auditor MCP
一个 MCP 服务,支持多种真实的自动化导出格式。 由 Ahmad Yar 构建和维护。
这是一个早期实现。有关当前的发布和版本详情,请参阅 PyPI 软件包 和 MCP Registry 条目。投入生产使用前,应验证主机兼容性和真实客户端中的 MCP 行为。它只会对提供的文本执行只读静态检查;不会自行读取你的代码库、联系自动化账户、运行 JS 或连接 API 端点。
支持的输入和真实限制
| 平台 | 输入 | 检查内容 | 限制 |
|---|---|---|---|
| n8n | 导出的工作流 JSON | 缺失或重复的节点名称或 ID、无效连接、缺失的 webhook 路径 | 静态结构;不检查凭据或实时执行 |
| Dify | 导出的工作流 DSL YAML/JSON | 缺失或重复的节点 ID、无效边、开始/结束检查 | YAML DSL 会随版本变化;不验证运行时或模型 |
| Trigger.dev | 任务定义源代码(TypeScript/JS) | 字面量任务 ID、重复项、时长提示 | 仅为启发式检查;请运行 TypeScript 和 Trigger.dev 构建/测试 |
| Activepieces | Flow JSON 或 Flow 版本对象 | 触发器是否存在、重复步骤名称、标记为无效的步骤 | 仅检查常见的 nextAction/分支;不是全面的 Flow 验证器 |
| OpenAPI | JSON 规范 | 现有的 GPT Tools 集成检查器 | 尽力检查,不是完整的 OpenAPI 架构验证 |
| URL 预检 | HTTPS URL | 使用 GPT Tools 检查已知的不安全 URL 方案/地址 | 不执行 DNS 查询或抓取。“manual_review”不等于“安全”。 |
没有针对其原生格式的适配器,就无法支持“任何自动化平台”。 对于不支持的平台,会报告为不支持,而不是执行毫无意义的检查。你可以在 core.py 中向注册表添加适配器,并添加相应测试。v0.1 不宣称支持 Make、Zapier 和 Pipedream。
安装
使用 Python 3.11+ 安装:
pip install automation-auditor-mcp
配置兼容的 MCP 客户端:
{
"mcpServers": {
"automation-auditor": {
"command": "uvx",
"args": ["automation-auditor-mcp"]
}
}
}
uvx 需要 uv。请在 PyPI 上确认软件包当前发布的版本,并在投入生产使用前使用你的 MCP 主机测试配置。
从源代码进行开发:
python -m pip install -e .
python -m unittest discover -s tests -v
automation-audit examples/n8n-valid.json --platform n8n
automation-auditor-mcp
最后一条命令会启动 MCP stdio 服务,并等待客户端连接。请使用主机或 MCP Inspector 与其通信;从普通终端启动时不应打印任何输出。
MCP 工具 API
audit_workflow(platform, source):传入导出内容或 Trigger.dev 源文件的完整文本内容。platform可以是auto、n8n、dify、trigger、trigger.dev或activepieces。最多 250,000 个字符。服务不会按路径读取文件。audit_openapi(spec_json):JSON OpenAPI 文档;使用现有的ahmad-yar-gpt-tools库。preflight_url(url):纯 URL 筛查;绝不执行 DNS 查询或 HTTP 请求。符合条件的语法会被标记为manual_review,因为实际抓取需要请求时控制。list_supported_platforms():列出确切支持的格式和已知限制。
发现项包含稳定的规则 ID、严重性、位置、简短消息、建议和置信度。它们不会回显节点名称、原始 URL、凭据或源代码片段。报告 no_findings_detected 并不能证明安全。
示例:检测损坏的 n8n 连接
MCP 客户端将导出的工作流 JSON 传递给 audit_workflow("n8n", source)。如果某个连接指向已删除的节点,结构化报告会包含规则 N8N009,严重级别为 error。助手可以解释错误并请求用户修复。此工具本身不会编辑工作流文件。
测试
python -m unittest discover -s tests -v
测试固件仅使用虚构的元数据;不包含 API 密钥或客户信息。核心格式检查器无需网络,也不会在测试时导入 MCP;MCP SDK 集成则需要安装依赖项。
发布与注册表维护清单
- 确保公开源代码仓库和安装说明与已发布的制品保持同步。
- 每次发布时运行所有测试,并在真实 MCP 客户端中使用 MCP Inspector 验证调用。在将 Trigger.dev 分析描述为全面分析之前,先通过 TypeScript AST 解析器改进该分析。
- 每次发布时,验证 PyPI 上发布的版本和元数据,包括源代码和主页链接。
- 在 PyPI 长描述中保留 README 标记
mcp-name: io.github.ahamdjin/automation-auditor-mcp,以供注册表验证软件包所有权。 - 发布新版本时,使用官方 MCP 注册表发布工具验证
server.json,并确保其中的 PyPI 标识符、版本和 stdio 传输信息准确无误。 - 每次发布后,使用官方注册表 API 验证注册表元数据。注册表托管的是元数据,而非软件包本身。
注册表的官方发布要求说明了 PyPI 所有权验证。
安全性、许可与署名
不会有意存储、外发、执行源内容,也不会将其用于模型推理。MCP 主机可能会单独记录输入或报告。拒绝 YAML 别名,拒绝重复的 JSON/YAML 字段,并限制输入大小。Trigger.dev 正则表达式检查的置信度较低;源代码审计无法保证运行时行为。切勿将 URL 预检视为 SSRF 防护措施。
**许可证:**Apache-2.0。上游 ahmad-yar-gpt-tools 也采用 Apache-2.0 许可证。
源代码(仓库创建后):https://github.com/ahamdjin/automation-auditor-mcp 创建者:https://www.ahmadyar.co/
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。