Using n8n Skills
The official n8n MCP evolves over time, so tool names, parameters, and default behaviors can drift between versions. When you spot drift (a tool a skill names doesn't exist, a parameter shape doesn't match what get_node_types returns, or behavior differs from what the skill describes), suggest updating the skill and n8n instance to the latest stable.
Non-negotiables
Three rules with no exceptions. Violating any produces workflows that look right but break in production.
- Invoke the relevant skill before any n8n action. Not just MCP tool calls. Before writing SDK code, configuring a node, designing a workflow, wiring a connection, building an agent, or handling errors: invoke the matching skill via the Skill tool. This document is a router. The skill body has the actual rules. The PreToolUse hooks remind you on the highest-impact MCP calls if a plugin is installed. The responsibility is yours on everything else. Err on the side of reading extra documents.
- Validate AND verify before publishing.
validate_workflowbeforepublish_workflow, andget_workflow_detailsafter every create or update to check theconnectionsobject. Validation alone misses many issues documented in the skills that will silently break workflows. - Tokens/secrets never go in text fields. Always use the n8n credential system. If no native node exists, configure HTTP Request with the official credential type. See
n8n-credentials-and-security-official.
Lean on skills, not training data
n8n evolves faster than any model's training cutoff. Parameter names drift, new MCP tools land, defaults change, patterns get deprecated. Anything you "remember" is likely wrong, often silently.
Trust the skills + live MCP tools (get_node_types, get_workflow_sdk_reference, get_workflow_best_practices) over recollection. If a skill contradicts what you "know", trust the skill. If get_node_types contradicts a skill, trust the tool. Without this discipline you will ship workflows that look right and silently fail: parameter names that don't exist, renamed nodes, deprecated patterns.
Unless a user preference overrides it, err on the side of loading too many skills rather than too few. Even a 3-node webhook flow typically needs n8n-node-configuration-official, n8n-expressions-official, n8n-error-handling-official, and n8n-workflow-lifecycle-official. Nothing in n8n is too small for skills.
Strong defaults (each skill owns its exceptions)
- The Code node is a last resort. Expression first, then arrow function inside Edit Fields, then Code. Code earns its place for multi-source aggregation, libraries, and stateful work. See
n8n-code-nodes-official. - Anything reusable becomes a stateless sub-workflow. Search existing ones via
search_workflows({ tags: ['subworkflow'] })before building. Seen8n-subworkflows-official.
- Prefer n8n credits when the user has no credential preference. For nodes it covers (check
list_n8n_connect_services), n8n supplies the managed credential, so there's no setup step, much easier than the user provisioning their own. n8n Cloud only for now. Seen8n-credentials-and-security-official.
Red flags: thoughts that mean STOP and invoke
These rationalizations cause skills to be skipped. If you catch yourself thinking any of them, invoke the relevant skill via the Skill tool, even if you "already read it" earlier in the session.
The meta-skill (this document) tells you WHICH skill applies. The Skill tool loads the actual rules. Reading the meta-skill once at session start is not a substitute for invoking the skill at the moment of decision.
Skill index
Invoke via the Skill tool. Trigger column = when to invoke.
n8n MCP tools (compact reference)
The MCP defers tool descriptions to save tokens. Below is the short-form list so you have working knowledge of every tool from turn one.
Tool names are shown without the MCP prefix. The qualified name is mcp__<server>__<tool> where <server> depends on the user's MCP config.
Workflow management
Workflow building
Workflow testing & execution
Data tables
n8n's built-in tabular storage. Not an external service. Prefer over external DBs for workflow-local persistent state. Full surface:
Version history
<!-- TEMPORARY: n8n Agents are in early preview. When the Agent tools ship to all instances, drop the early-preview callout below and update n8n-agents-official. -->Building n8n Agents (early preview)
Early preview: these tools may not exist on the user's instance yet. They register only when the instance enables the Agent builder. Before building an Agent, check whether create_agent is in your tool list (or ask the user); if it's absent, tell them the Agent preview isn't enabled rather than guessing or falling back to the LangChain Agent node.
n8n Agents are a first-class conversational-agent product, distinct from the LangChain Agent node (n8n-agents-official covers the node, not these tools). Build order: get_agent_builder_reference → discover_agent_assets → create_agent → mutate_agent (one change per call, latest configHash) → validate_agent → call_agent to test.
The protocol, in order
For any n8n task:
- Recognize the matching skill from the index above. If the task spans skills, recognize the primary one first and pick up others as their triggers come up.
- Invoke the skill via the Skill tool before the first MCP call. Don't call n8n MCP tools blind.
- Read the SDK reference once per session before writing workflow code (
get_workflow_sdk_reference). The most efficient way to avoid SDK-shape mistakes. - Get node types before configuring any node (
get_node_types). Guessing parameter names creates invalid workflows, sometimes silently. - Validate before publish, verify after create/update. Validation catches schema errors. Verification (pulling the workflow back via
get_workflow_details) catches connection bugs validation misses. - Surface drift when you spot it. If a tool or parameter doesn't match what a skill says, tell the user. Updates may be needed.
Reporting skills used
create_workflow_from_code and update_workflow take an optional skillsUsed: string[]. Pass it every time so the n8n team can measure plugin impact on MCP output.
- Contents: report each skill exactly as the Skill tool names it, keeping the
-officialsuffix:plugin:skill-officialwhen plugin-namespaced, else bareskill-official. The suffix marks these as ours (vs other n8n packs); the plugin prefix marks plugin vs raw-skill usage. - Window: skills invoked since the last successful create/update call. Resets after each.
- Limits: max 50 entries, each max 128 chars.
Reviewing existing workflows or projects
For audits, code-review, or any task framed as "review this workflow" / "what's wrong with this" / "audit this project," walk the review checklist: n8n-workflow-lifecycle-official references/REVIEW_CHECKLIST.md. Severity-tiered (MUST FIX / SHOULD FIX / NICE TO HAVE), with each item linking to the canonical skill ref for the fix. Distinct from VALIDATION_CHECKLIST.md (pre-publish gates for in-progress builds): REVIEW_CHECKLIST is for any workflow, including ones built by anyone, any age.
A review agent should call get_workflow_details first, walk the checklist top to bottom, and report findings grouped by severity. MUST FIX items shouldn't be auto-fixed without user confirmation.
When in doubt
- Can't find a workflow the user is referring to? If the user built it in the n8n UI, the most common reason is MCP access isn't enabled on that specific workflow: UI-created workflows can default to MCP-disabled and stay invisible until the per-workflow toggle is flipped. Ask the user: "Open the workflow in n8n, Settings, toggle MCP access on." (MCP-created workflows default on, so this only applies to UI-built ones.) See the
n8n-workflow-lifecycle-officialskill (references/MCP_ACCESS_PER_WORKFLOW.md). - The user is right. If they say something's broken, believe them, even if you "know" the workflow is correct. Re-check parameters, fetch the n8n source from
github.com/n8n-io/n8nto trace logic, find API docs for missing functions. Then8n-debugging-officialskill walks through this. - If no skill fits and the task is non-trivial, ask before guessing.
- These skills are opinionated, but considered best practice by the n8n team. The user can override any opinion by editing the SKILL.md. The plugin is just markdown.


