Skip to main content
Glama
arose26

make-audit-mcp

by arose26

make-audit-mcp

An MCP server that audits Make.com (Integromat) scenario blueprints before you import them. Blueprints are shared everywhere — template galleries, forums, "1000 automation" bundles — and importing one means importing its webhooks, HTTP calls, and whatever credential-shaped strings the author left inside.

  • "What's in this blueprint?" — modules, apps, trigger, routers, error handling, scenario settings

  • "Is it safe to import?" — hardcoded tokens (masked in output), plain-http:// calls, dangling module references, unfiltered router routes, missing error handling, log-retention settings

  • "What feeds module 5?" — mapping-reference tracing in both directions

Make's official MCP runs your scenarios; this one reviews the files before they become scenarios. Local files only.

Quick start

Claude Code

claude mcp add make-audit -- npx -y make-audit-mcp

Claude Desktop — add to claude_desktop_config.json:

{
  "mcpServers": {
    "make-audit": {
      "command": "npx",
      "args": ["-y", "make-audit-mcp"]
    }
  }
}

Then: "Audit C:\Downloads\lead-intake.blueprint.json before I import it."

Related MCP server: mcp-heimdall

Tools

Tool

What it does

inspect_blueprint

Scenario overview: modules, apps, trigger, routers, error handlers, settings

trace_module

One module in detail — parameters/mappings (secrets masked), references out and in

audit_blueprint

Findings report: errors / warnings / info

What the auditor checks

  • Credential-shaped literals in parameters or mappings (api_key, token, Authorization, Bearer …) — connections are stripped on export, so any literal secret is exactly what shouldn't be in a shared file. Values are masked (supe… (18 chars)) everywhere, including in findings — the auditor never amplifies a leaked token into the model's context.

  • Dangling references — mappings like {{99.output}} pointing at modules that don't exist (common after hand-editing or merging blueprints). The extractor understands Make's expression syntax: {{formatDate(2.date; "X")}} references module 2, while {{parseNumber(3.14)}} references nothing.

  • Plain-http:// URLs, webhook triggers (anyone with the URL can invoke), routers where no route is filtered, disabled-but-present modules, no error handlers with DLQ off, confidential=false log retention.

Known limitation: execution-order validation across router branches is not attempted — reference checks are existence-only.

Development

npm install
npm test                 # offline tests — synthetic blueprints built in-suite
npm run build            # tsc → dist/
node scripts/smoke.mjs   # end-to-end: generates a blueprint, drives the server over stdio

Architecture: src/blueprint.ts (recursive module walk, reference extraction, secret masking) and src/audit.ts (checks) are pure logic; src/index.ts is the MCP wiring. Zero runtime deps beyond the MCP SDK.

Not affiliated with or endorsed by Make / Celonis.

License

MIT

Available Tools

3 tools
audit_blueprintAudit the blueprintA

Risk report before importing: hardcoded credential-shaped values, dangling module references, plain-http URLs, unfiltered router routes, missing error handling, log-retention settings. Secrets are masked in the output.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathYesPath to a Make.com scenario blueprint (.json export)

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It adds significant value by stating that 'Secrets are masked in the output' and enumerating the checks performed. It does not explicitly state whether the tool modifies the blueprint, but 'Risk report before importing' implies non-destructive analysis.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, well-structured sentence that front-loads the core purpose ('Risk report before importing') followed by a concise colon-separated list of risk categories. No wasted words, and all content adds value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (one parameter, no annotations), the description covers the purpose, usage timing, specific checks, and output masking. It does not detail the exact report format or return values, but for a single-parameter tool, this is reasonably complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% coverage for the single 'path' parameter, fully describing it as a path to a Make.com scenario blueprint. The description does not add further parameter details, but since the schema is complete, the baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool performs a 'Risk report before importing', identifying specific risk categories (hardcoded credential-shaped values, dangling module references, plain-http URLs, etc.). This distinguishes it from sibling tools like inspect_blueprint or trace_module by focusing on security/risk auditing rather than general inspection or tracing.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly says 'before importing', providing clear context for when to use the tool. However, it does not mention when not to use it or name alternative tools, so it stops short of exhaustive comparative guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

inspect_blueprintInspect a Make blueprintA

Overview of a Make.com scenario blueprint before importing it: modules, apps used, trigger, routers, error handlers, scenario settings.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathYesPath to a Make.com scenario blueprint (.json export)

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden. It implies a read-only operation ('before importing') but does not explicitly state that it avoids modifications, nor does it describe return format or validation behavior. This is adequate but not rich.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, concise sentence that front-loads the purpose and lists key elements. Every word earns its place with no redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

This is a simple one-parameter tool with no output schema. The description covers the tool's purpose and scope adequately. It does not describe the return structure, but 'overview' implies a summary, making it sufficiently complete for its complexity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and the lone parameter 'path' is already well-described in the schema. The tool description adds no additional parameter meaning, so the baseline of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a clear, specific purpose: providing an overview of a Make.com scenario blueprint before importing. It enumerates the aspects covered (modules, apps used, trigger, routers, error handlers, scenario settings), which differentiates it from the sibling tools trace_module and audit_blueprint.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The phrase 'before importing it' gives clear contextual timing for when to use this tool. However, it does not explicitly mention alternatives or exclusions, so it earns a 4 rather than a 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

trace_moduleTrace a moduleA

One module in detail: type, parameters and mappings (credential-shaped values masked), which modules it references, and which modules reference it.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesModule id (shown by inspect_blueprint and audit findings)
pathYesPath to a Make.com scenario blueprint (.json export)

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It discloses a key behavior: credential-shaped values are masked, which is useful for the agent to know about output handling. However, it does not explicitly state that the tool is read-only or non-destructive, which is relevant given it takes a blueprint path and id.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, well-structured sentence that leads with the core purpose and then enumerates the key details. Every phrase adds value, and there is no redundancy or fluff.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description compensates by clearly listing the return contents: type, parameters, mappings, and both incoming and outgoing references. It also provides the crucial context that the id comes from sibling tools. The only minor gap is the lack of explicit mention of error cases or file-read behavior, but the overall purpose is well-covered.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage for both parameters is 100%: id and path have clear descriptions in the schema itself. The tool description adds no additional parameter context, so the baseline score of 3 applies per the rubric.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The title explicitly says 'Trace a module' and the description details exactly what it provides: type, parameters, mappings, and dependency references. This clearly distinguishes it from sibling tools like inspect_blueprint and audit_blueprint, which operate on the whole blueprint or audit findings respectively.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies a prerequisite: the module id is obtained from inspect_blueprint or audit findings, as noted in the id parameter description. This gives clear context for when to use the tool, but it stops short of explicitly stating when not to use it or directly naming alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 3 tool updatesv0.1.0
    • First observedaudit_blueprint
    • First observedinspect_blueprint
    • First observedtrace_module

TDQS

A4.4/5.0
Disambiguation5/5

Each tool has a clearly distinct purpose: inspect_blueprint provides a high-level overview, trace_module dives into a specific module, and audit_blueprint identifies risks. There is no overlap that would confuse an agent.

Naming Consistency5/5

All tool names follow the verb_noun snake_case pattern (inspect_blueprint, trace_module, audit_blueprint), making the naming perfectly consistent and predictable.

Tool Count5/5

With only 3 tools, the set is well-scoped for an audit-focused server. Each tool covers a necessary step in the workflow (overview, detail, risk assessment), and no tool feels extraneous.

Completeness5/5

The tools cover the full audit flow: inspect the blueprint for structure, trace modules for detail, and audit for risks. There are no obvious gaps, and the workflow is complete without dead ends.

Maintenance

ActivityMaintained
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    A
    maintenance
    Local-only GitHub Actions and CI maintenance scanner for AI-built apps. Exposes scan, explanation, and fix-planning tools to MCP clients; modifies nothing and makes no outbound requests by default.
    3
    84
    2
    MIT
  • A
    license
    Not graded
    quality
    A
    maintenance
    Security scanner for MCP servers — vet an MCP before you wire it into an agent. Detects prompt-injection, credential exfiltration (via taint analysis), RCE, and supply-chain risks, and catches cross-server exfil chains no single server reveals. Zero-dependency local CLI, SARIF output, CI-gateable, no account.
    65
    MIT
  • F
    license
    Not graded
    quality
    D
    maintenance
    Audits GitHub Actions workflow files for supply-chain risks like script injection, leaked tokens, unpinned actions, and broad permissions.
    -

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/arose26/make-audit-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server