Automation Auditor MCP

io.github.ahamdjin由 GitHub 帳號 ahamdjin 發布v0.1.0更新於 Oct 26, 2026

Inspect n8n, Dify, Trigger.dev and Activepieces automation exports before deployment.

已驗證STDIO僅桌面效率與工作流開發者工具

概覽

AI 產生的概覽

對匯出的 n8n、Dify、Trigger.dev 與 Activepieces 自動化工作流程、OpenAPI 規格及 URL 做唯讀靜態檢查,回傳結構化問題清單。

可以做什麼
  • 稽核自動化匯出:傳入 n8n、Dify、Trigger.dev 或 Activepieces 匯出的完整文字,取得帶規則編號的發現,例如中斷的連線、重複或缺漏的節點 ID、缺少觸發器。
  • 檢查 OpenAPI 規格:對 JSON 格式的 OpenAPI 文件做盡力而為的 GPT Tools 整合檢查。
  • 篩檢 URL:辨識已知不安全的 URL 協定與位址,不做 DNS 查詢也不發出請求。
  • 列出支援的平台:說明確切支援的格式及其限制。
適用情境
適合在部署前對自動化工作流程匯出做一次結構複核,或快速檢查 OpenAPI 規格與 URL 的語法風險。它是唯讀靜態檢查器,適用於上線前審查,而非即時除錯或執行期驗證。
執行需求
以 Python 套件形式透過 stdio 在本機執行(需 Python 3.11+),通常以 uvx 啟動,因此需要 uv。未宣告任何帳號、API 金鑰或環境變數。README 說明此套件尚未發布到 PyPI,MCP 傳輸也尚未在真實宿主上做端對端測試,因此 uvx 設定在發布前僅為範例。
安裝前請注意
專案自述為起步實作,尚未發布,也未與宿主做端對端測試。檢查皆為靜態且偏啟發式:Trigger.dev 分析以正規表示式為基礎、信心度低,OpenAPI 檢查為盡力而為,沒有發現並不等於安全。URL 預檢無法防止 SSRF,manual_review 也不代表安全。它不會依路徑讀取檔案,必須提供完整匯出文字;MCP 宿主可能另行記錄輸入或報告。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Automation Auditor MCP,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

Automation Auditor MCP

One MCP server, several real automation export formats. Built and maintained by Ahmad Yar.

This is an early-stage implementation. See the PyPI package and MCP Registry entry for current publishing and version details. Host compatibility and real-client MCP behavior should be verified before production use. It performs read-only static checks on supplied text; it never reads your repo on its own, contacts automation accounts, runs JS, or connects to API endpoints.

Supported inputs and honest limitations

PlatformInputChecksBoundary
n8nExported workflow JSONMissing/duplicate node names or IDs, broken connections, missing webhook pathsStatic structure; no credential or live execution checks
DifyExported workflow DSL YAML/JSONMissing or duplicate node IDs, broken edges, start/end checksYAML DSL varies with releases; no runtime/model validation
Trigger.devSource of task definitions (TypeScript/JS)Literal task IDs, duplicates, advisory duration notesHeuristics only; run TypeScript and Trigger.dev build/tests
ActivepiecesFlow JSON or flow version objectTrigger presence, duplicate step names, invalid-marked stepsCommon nextAction/branches only; not an exhaustive flow validator
OpenAPIJSON specExisting GPT Tools integration checkerBest effort, not complete OpenAPI schema validation
URL preflightHTTPS URLKnown unsafe URL schemes/addresses using GPT ToolsNo DNS or fetch. "manual_review" is not "safe."

"Any automation platform" is not possible without an adapter for its native format. Unsupported platforms are reported as unsupported, rather than passing a meaningless check. You can add adapters to the registry in core.py and corresponding tests. Make, Zapier and Pipedream are not advertised as supported in v0.1.

Install

Install with Python 3.11+:

pip install automation-auditor-mcp

Configure a compatible MCP client:

json
{  "mcpServers": {    "automation-auditor": {      "command": "uvx",      "args": ["automation-auditor-mcp"]    }  }}

uvx requires uv. Confirm the package's current published version on PyPI and test the configuration with your MCP host before production use.

For development from source:

python -m pip install -e .python -m unittest discover -s tests -vautomation-audit examples/n8n-valid.json --platform n8nautomation-auditor-mcp

The last command runs the MCP stdio server and waits for a connected client. Use a host or MCP Inspector to communicate with it; starting from an ordinary terminal should not print output.

MCP tool API

  • audit_workflow(platform, source): Pass the full text contents of an export or Trigger.dev source file. platform is auto, n8n, dify, trigger, trigger.dev, or activepieces. Max 250,000 characters. The server does not read files by path.
  • audit_openapi(spec_json): JSON OpenAPI document; uses the existing ahmad-yar-gpt-tools library.
  • preflight_url(url): Pure URL screening; never performs DNS lookup or HTTP request. A permitted syntax becomes manual_review because real fetching requires request-time controls.
  • list_supported_platforms(): Exact supported formats and known limitations.

Findings include a stable rule ID, severity, location, brief message, recommendation and confidence. They intentionally do not echo node names, raw URLs, credentials or source snippets. A report of no_findings_detected is not proof of safety.

Example: detect a broken n8n connection

The MCP client passes exported workflow JSON to audit_workflow("n8n", source). If a connection points to a deleted node, the structured report includes rule N8N009 with severity error. The assistant can explain the error and request the user to fix it. This tool never edits workflow files itself.

Tests

python -m unittest discover -s tests -v

Test fixtures use only fictional metadata; no API keys or customer information. The core format inspectors require no network and do not import MCP at test time; MCP SDK integration requires installing dependencies.

Release and registry maintenance checklist

  1. Keep the public source repository and installation instructions synchronized with released artifacts.
  2. Run all tests and verify MCP Inspector calls in a real MCP client for each release. Improve Trigger.dev analysis with a TypeScript AST parser before describing it as comprehensive.
  3. For each release, verify the published version and metadata on PyPI, including its source and homepage links.
  4. Preserve the README marker mcp-name: io.github.ahamdjin/automation-auditor-mcp inside the PyPI long description for Registry package ownership verification.
  5. When releasing a new version, validate server.json using the official MCP Registry publisher, and keep its PyPI identifier, version and stdio transport accurate.
  6. Verify Registry metadata after each release using the official Registry API. The Registry hosts metadata, not the package itself.

The Registry's official publishing requirements explain PyPI ownership verification.

Security, licensing and attribution

No source content is intentionally stored, sent externally, executed, or used for model inference. The MCP host may log inputs or reports separately. YAML aliases are refused, duplicate JSON/YAML fields are rejected, and input size is bounded. Trigger.dev regex checks have low confidence; a source audit cannot guarantee runtime behavior. Never treat URL preflight as SSRF prevention.

License: Apache-2.0. Upstream ahmad-yar-gpt-tools also uses Apache-2.0.

Source (after repository creation): https://github.com/ahamdjin/automation-auditor-mcp Creator: https://www.ahmadyar.co/

來源:README.md,提交 d00178b

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

1
  1. v0.1.0最新Oct 20, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分