Automation Auditor MCP

io.github.ahamdjinPublished by GitHub account ahamdjinv0.1.0Updated Oct 26, 2026

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

Overview

AI-generated overview

Statically audits exported n8n, Dify, Trigger.dev and Activepieces automation workflows, OpenAPI specs and URLs, returning structured findings without running…

What you can do
  • Audit automation exports: pass the full text of an n8n, Dify, Trigger.dev or Activepieces export and get rule-ID findings on broken connections, duplicate or missing node IDs, missing triggers and similar structural issues.
  • Check OpenAPI specs: run a best-effort GPT Tools integration check on a JSON OpenAPI document.
  • Screen URLs: flag known unsafe URL schemes and addresses without any DNS lookup or fetch.
  • List supported platforms: report exactly which formats and limitations are covered.
When to use it
Useful when you want a second pair of eyes on an automation workflow export before deploying it, or a quick structural sanity check on an OpenAPI spec or a URL. It is a read-only static checker, so it suits pre-deployment review rather than live debugging or runtime validation.
Requirements
Runs locally over stdio as a Python package (Python 3.11+), typically launched with uvx, which requires uv. No accounts, API keys or environment variables are declared. The README states the package is not yet published to PyPI and the MCP transport has not been end-to-end tested against a host, so the uvx configuration is illustrative until release.
Before you install
The project describes itself as a starter implementation that is unpublished and not yet tested end to end with a host. Checks are static and heuristic: Trigger.dev analysis is regex-based with low confidence, OpenAPI checking is best effort, and a no-findings report is not proof of safety. URL preflight is not SSRF prevention and a manual_review result is not a safe verdict. It never reads files by path, so full export text must be supplied, and the MCP host may log inputs or reports.

Installation

In SourceWeft

  1. Open Automation Auditor MCP in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

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/

Source: README.md at commit d00178b

Tools

0
SourceWeft has not started this package in its sandbox yet, so its tools are not known.

Version history

1
  1. v0.1.0LatestOct 20, 2026

Score

50% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts