mcpField
A
Automation Auditor MCP

Automation Auditor MCP

本地服务
ahmadyar.co开发工具01 周前更新

关于 Automation Auditor MCP

Automation Auditor MCP 是面向自动化开发与部署人员的只读静态检查服务,可分析 n8n、Dify、Trigger.dev 和 Activepieces 导出内容。它还提供 OpenAPI 检查与 URL 预检,并明确报告各格式的检查边界。

主要功能

  1. 01检查 n8n、Dify 工作流结构
  2. 02分析 Trigger.dev 任务源码
  3. 03检查 Activepieces 流程
  4. 04检查 OpenAPI 文档
  5. 05预检 HTTPS URL
  6. 06返回带规则和严重性的发现

适用场景

  1. 01部署前查找工作流断链
  2. 02检查任务 ID 重复或缺失
  3. 03评估 OpenAPI 集成配置
  4. 04筛查 URL 格式风险

MCP 相关

它通过 MCP 暴露工作流审计、OpenAPI 检查、URL 预检和支持格式查询工具。客户端需将完整文本传入;服务不会自行读取文件或执行工作流。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"ahamdjin-automation-auditor": {
"command": "uvx",
"args": [
"automation-auditor-mcp"
]
}
}
}
启动命令uvx automation-auditor-mcp

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
pypiautomation-auditor-mcp0.1.0

工具

4

收录的工具列表 · 更新于 2 周前

参数类型必填说明
sourcestring是
platformstring是

详细介绍

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 构建/测试
ActivepiecesFlow JSON 或 Flow 版本对象触发器是否存在、重复步骤名称、标记为无效的步骤仅检查常见的 nextAction/分支;不是全面的 Flow 验证器
OpenAPIJSON 规范现有的 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 集成则需要安装依赖项。

发布与注册表维护清单

  1. 确保公开源代码仓库和安装说明与已发布的制品保持同步。
  2. 每次发布时运行所有测试,并在真实 MCP 客户端中使用 MCP Inspector 验证调用。在将 Trigger.dev 分析描述为全面分析之前,先通过 TypeScript AST 解析器改进该分析。
  3. 每次发布时,验证 PyPI 上发布的版本和元数据,包括源代码和主页链接。
  4. 在 PyPI 长描述中保留 README 标记 mcp-name: io.github.ahamdjin/automation-auditor-mcp,以供注册表验证软件包所有权。
  5. 发布新版本时,使用官方 MCP 注册表发布工具验证 server.json,并确保其中的 PyPI 标识符、版本和 stdio 传输信息准确无误。
  6. 每次发布后,使用官方注册表 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/

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。