Skip to main content
Glama

n8n_test_workflow

Destructive

Execute n8n workflows automatically via webhook, form, or chat triggers, or run them directly through n8n's MCP server with pinned data and custom inputs.

Instructions

Run a workflow. method=auto (default) triggers it over HTTP through its webhook/form/chat trigger. Workflows without such a trigger need n8n's MCP server: method=prepare lists the nodes that need pinned data, method=pinned runs the workflow with that data, method=direct starts a run with optional inputs. The official methods need N8N_MCP_ACCESS_TOKEN and the workflow's "Available in MCP" setting (exposeToMcp: true enables it after you confirm with the user).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
dataNoInput data/payload for webhook, form fields, or execution data
methodNoHow to run it. auto (default): trigger over HTTP when the workflow has a webhook/form/chat trigger, otherwise report that it cannot be triggered - auto never runs through n8n's MCP server. trigger: force the HTTP path. prepare: list the nodes needing pinned data (read-only). pinned: run with pinData through n8n's MCP server. direct: start a run through n8n's MCP server, with optional inputs.
headersNoCustom HTTP headers
messageNoFor chat: message to send (required for chat triggers)
pinDataNoFor method=pinned (required, non-empty): pinned trigger data keyed by node name. Each value is an array of ITEMS, and every item must be wrapped as { "json": { ... } } - e.g. {"Webhook": [{"json": {"id": "123"}}]}, never a flat object. Get the node list from method=prepare.
timeoutNoTimeout in ms (default: 120000). HTTP trigger path only (method auto/trigger) — the official methods (prepare/pinned/direct) use timeoutMs instead.
sessionIdNoFor chat: session ID for conversation continuity
timeoutMsNoClient-side deadline for the official call (default: 30000 for prepare, 300000 for pinned/direct)
httpMethodNoFor webhook: HTTP method (default: from workflow config or POST)
workflowIdYesWorkflow ID to execute (required)
exposeToMcpNoFor the official methods: enable the workflow's persistent "Available in MCP" setting when n8n refuses the call. Confirm with the user first.
triggerTypeNoTrigger type. Auto-detected if not specified. Workflow must have a matching trigger node.
webhookPathNoFor webhook: override the webhook path
executionModeNoFor method=direct: manual (default) runs it as a manual execution; production runs it through the production execution path. Both execute the workflow's nodes for real - this only changes the execution context. Never chosen implicitly.
triggerNodeNameNoFor method=pinned/direct: which trigger node to start from. Defaults to the detected trigger node. Required by n8n when inputs are given.
waitForResponseNoWait for workflow completion (default: true)

Schema Changelog

Changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. Changed7 schema fields changedv2.77.0
    • addedInput schema / properties / executionMode
      Added value: +{
      +  "description": "For method=direct: manual (default) runs it as a manual execution; production runs it through the production execution path. Both execute the workflow's nodes for real - this only changes the execution context. Never chosen implicitly.",
      +  "enum": [
      +    "manual",
      +    "production"
      +  ],
      +  "type": "string"
      +}
    • addedInput schema / properties / exposeToMcp
      Added value: +{
      +  "description": "For the official methods: enable the workflow's persistent \"Available in MCP\" setting when n8n refuses the call. Confirm with the user first.",
      +  "type": "boolean"
      +}
    • addedInput schema / properties / method
      Added value: +{
      +  "description": "How to run it. auto (default): trigger over HTTP when the workflow has a webhook/form/chat trigger, otherwise report that it cannot be triggered - auto never runs through n8n's MCP server. trigger: force the HTTP path. prepare: list the nodes needing pinned data (read-only). pinned: run with pinData through n8n's MCP server. direct: start a run through n8n's MCP server, with optional inputs.",
      +  "enum": [
      +    "auto",
      +    "trigger",
      +    "prepare",
      +    "pinned",
      +    "direct"
      +  ],
      +  "type": "string"
      +}
    • addedInput schema / properties / pinData
      Added value: +{
      +  "description": "For method=pinned (required, non-empty): pinned trigger data keyed by node name. Each value is an array of ITEMS, and every item must be wrapped as { \"json\": { ... } } - e.g. {\"Webhook\": [{\"json\": {\"id\": \"123\"}}]}, never a flat object. Get the node list from method=prepare.",
      +  "type": "object"
      +}
    • changedInput schema / properties / timeout / description
      Previous value: -"Timeout in ms (default: 120000)"New value: +"Timeout in ms (default: 120000). HTTP trigger path only (method auto/trigger) — the official methods (prepare/pinned/direct) use timeoutMs instead."
    • addedInput schema / properties / timeoutMs
      Added value: +{
      +  "description": "Client-side deadline for the official call (default: 30000 for prepare, 300000 for pinned/direct)",
      +  "maximum": 600000,
      +  "minimum": 5000,
      +  "type": "integer"
      +}
    • addedInput schema / properties / triggerNodeName
      Added value: +{
      +  "description": "For method=pinned/direct: which trigger node to start from. Defaults to the detected trigger node. Required by n8n when inputs are given.",
      +  "type": "string"
      +}
  2. Addedv2.66.2
  3. Removedv2.65.2
  4. Addedv2.56.0
  5. Removedv2.55.0
  6. Addedv1.0.0

TDQS

A4.2/5.0
Behavior5/5

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

The annotations only flag non-read-only, open-world, and potentially destructive behavior; the description adds the auth prerequisite (N8N_MCP_ACCESS_TOKEN), the side effect of toggling the persistent 'Available in MCP' setting with explicit user confirmation, the read-only nature of prepare, and the failure mode where auto reports that it cannot be triggered. No contradiction with annotations — the per-method read-only qualifier is consistent with a whole-tool destructiveHint=true.

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

Conciseness4/5

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

Three sentences carry the whole method model, the default behavior, and the auth prerequisite, front-loading 'Run a workflow' and method=auto. The middle sentence is dense with three methods packed into one clause, but for a 16-param, 5-method tool every clause earns its place and nothing is wasted.

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

Completeness3/5

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

For a tool this complex, the description plus a 100%-covered schema resolve almost every invocation decision: method selection, auth, prerequisites, and side-effect confirmation are all present. The notable gap is return-value semantics — with no output schema, the agent never learns what a run returns (execution ID? result data? error shape?), which matters when a workflow run starts a chained task.

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%, so every parameter already carries a precise semantic description, including pinData's wrapping rule, the timeout vs timeoutMs scoping, and executionMode's 'never chosen implicitly' caveat. The description adds the connecting glue — the method model and auth context — but the schema does the heavy lifting, so baseline 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?

'Run a workflow' pairs a specific verb with a clear resource and is immediately differentiated from the 28 siblings (create/get/update/delete/list workflows). The method breakdown makes explicit that this tool executes, never manages, workflow definitions, and the trigger/HTTP vs MCP-server distinction removes ambiguity about what 'run' means here.

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 gives explicit routing logic: workflows with webhook/form/chat triggers use auto/trigger over HTTP, while triggerless workflows require prepare/pinned/direct through n8n's MCP server. It also states the fallback behavior (use exposeToMcp when n8n refuses) and the prepare-first requirement before pinned. It doesn't name exclusion conditions against sibling tools, but within the tool the when-to-use decision is unambiguous.

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

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/czlonkowski/n8n-mcp'

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