Skip to main content
Glama
Automation Auditor MCP

Automation Auditor MCP

by ahamdjin

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

Platform

Input

Checks

Boundary

n8n

Exported workflow JSON

Missing/duplicate node names or IDs, broken connections, missing webhook paths

Static structure; no credential or live execution checks

Dify

Exported workflow DSL YAML/JSON

Missing or duplicate node IDs, broken edges, start/end checks

YAML DSL varies with releases; no runtime/model validation

Trigger.dev

Source of task definitions (TypeScript/JS)

Literal task IDs, duplicates, advisory duration notes

Heuristics only; run TypeScript and Trigger.dev build/tests

Activepieces

Flow JSON or flow version object

Trigger presence, duplicate step names, invalid-marked steps

Common nextAction/branches only; not an exhaustive flow validator

OpenAPI

JSON spec

Existing GPT Tools integration checker

Best effort, not complete OpenAPI schema validation

URL preflight

HTTPS URL

Known unsafe URL schemes/addresses using GPT Tools

No 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.

Related MCP server: toolfence

Install

Install with Python 3.11+:

pip install automation-auditor-mcp

Configure a compatible MCP client:

{
  "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 -v
automation-audit examples/n8n-valid.json --platform n8n
automation-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/

Available Tools

4 tools
audit_openapiB

Check an OpenAPI 3.x JSON spec for common tool integration mistakes.

JSON only in this v1 tool. Not a full OpenAPI validation or a security audit.

Inputs: spec_json (required).

audit_workflowA

Read-only checks on n8n JSON, Dify DSL, Activepieces JSON or Trigger.dev code.

platform: n8n | dify | activepieces | trigger | auto. Paste an export/source string; no filesystem access, no external calls, no execution. Trigger.dev findings are heuristic and not a substitute for TypeScript checks.

Inputs: source (required), platform (required).

list_supported_platformsC

List exact export types and limitations; unsupported platforms are never called safe.

Inputs: no named parameters.

preflight_urlA

Evaluate syntax and literal IP red flags without fetching a URL.

For domain names, request-time DNS and HTTP redirects remain unchecked. A manual_review result NEVER means safe to fetch.

Inputs: url (required).

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A3.7/5.0

    Scored across 4 tools

    Disambiguation5/5

    Each tool targets a clearly distinct artifact or operation: workflow exports, platform capabilities, OpenAPI specs, and URL preflight. No two tools overlap in purpose, and the descriptions explicitly separate their scopes.

    Naming Consistency5/5

    All tool names use lowercase snake_case with a verb_noun structure: audit_workflow, list_supported_platforms, audit_openapi, preflight_url. The pattern is predictable and consistent throughout.

    Tool Count5/5

    Four tools is well-scoped for a focused, read-only auditor. Each tool earns its place by covering a distinct audit target without redundancy or unnecessary surface area.

    Completeness4/5

    The surface covers the core auditing tasks: workflow platforms, OpenAPI, and URL preflight, with a helper to list supported platforms. Minor gaps exist—no batch reporting or deeper security/runtime checks—but these are documented limitations rather than missing tools for the stated v1 purpose.

    Maintenance

    ActivityMaintained
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      Not graded
      quality
      B
      maintenance
      Audits MCP server configurations for security risks including capability inventory, SSRF, prompt injection, and drift detection. Works in read-only mode and can also be used as an MCP server to let AI agents audit their own attack surface.
      259 PyPI
      4
      MIT
    • A
      license
      A
      quality
      B
      maintenance
      Enables agents and CI pipelines to audit MCP servers and agent tool-chains by statically scanning repositories, local checkouts, tools/list exports, or live endpoints for risks such as destructive actions without confirmation, mismatched safety annotations, injection surfaces, credential or PII exposure, and unguarded command, path, or URL sinks. All checks are read-only and never execute the scanned code or call tools/call.
      3
      MIT
    • A
      license
      Not graded
      quality
      B
      maintenance
      Enables MCP-compatible agent hosts to delegate governed, read-only security audits and reviews of code, applications, agents, prompts, MCP configurations, and cloud environments through evidence-first findings and stable schemas.
      2
      Apache 2.0
    • A
      license
      Not graded
      quality
      B
      maintenance
      Enables MCP clients to run deterministic, read-only local repository audits for risky GitHub workflows, undocumented environment variables, possible credentials, and conflicting dependency configuration, returning structured findings without sending source code to a service.
      50 npm
      MIT