Loading...
Loading...
Use when working with n8n workflows in any capacity. The always-on protocol for the n8n-skills plugin, loaded by the SessionStart hook every session. Routes to the right skill, summarizes every n8n MCP tool (closing the deferred-description gap), and lists the cross-cutting rules.
npx skill4agent add n8n-io/skills using-n8n-skillsget_node_typesvalidate_workflowpublish_workflowget_workflow_detailsconnectionsn8n-credentials-and-securityn8n-code-nodessearch_workflows({ query: 'Subworkflow' })n8n-subworkflows| Thought | Action |
|---|---|
| "This workflow is simple, I'll just build it" | Invoke |
| "I'll add a Set node here to map these fields" | Invoke |
| "I'll just use a Code node, it's easier" | Invoke |
| "Validation passed, I'm ready to publish" | Invoke |
| "The agent is wired up, the tool descriptions look fine" | Invoke |
| "I'll set this sub-workflow trigger to passthrough" | Invoke |
| "I'll use passthrough so binary works, then branch internally on which input shape arrived" | Invoke |
| "I should ask the user what their credential is named" | Don't. The string in |
| "The user mentioned data analysis, I'll write Python" | Invoke |
| "I'll add a Loop Over Items here to process each row" | Invoke |
| "Date math, I'll use a DateTime node" | Invoke |
| "I'll wrap this in a Merge with 3 sources" | Invoke |
| "User said which project, I'll just build it" | Invoke |
"I'll just run | Invoke |
| Skill | Trigger |
|---|---|
| Starting, designing, organizing, or finishing a workflow. Covers sticky-note conventions, descriptions that capture the why, naming, validation checklist, folder limitations, MCP-access-per-workflow gotcha |
| Anything reusable, multi-step builds, or the user mentions reuse. Search before building, stateless patterns, naming-prefix convention for discovery |
| You need capabilities the MCP doesn't natively provide. Wrap n8n APIs as workflow tools, with user permission |
| Writing |
| Configuring any node. Operation-aware, property dependencies, never assume parameters |
| User reaches for a Code node, or custom logic is needed. Decision tree, JavaScript patterns when truly required |
| Wiring IF, Switch, Merge, error outputs, or any non-linear connection. Multi-IO traps, fan-out/fan-in, merge index rules |
| Multi-item data, batching, paginated APIs, "for each" or "loop over" mentions. Default per-item iteration, |
| LangChain Agent node, tool calling, system prompts, structured output, memory, RAG. Tool names/descriptions as part of the prompt, sub-workflow as tool, modular prompt design |
| Webhook-triggered or production-bound workflows. Error branch on every fallible node, 4xx for caller errors and 5xx for execution errors |
| Any auth, API key, or token mention. Credential system, custom credentials, HTTP Request with official creds |
| Files, images, attachments. Binary handling patterns, agent-tool boundary, CDN requirement for chat hub |
| Data Tables: schemas, default columns (id/createdAt/updatedAt), no-FK relational design, dedup, the no-JSON-only-primitives rule, the SDK-vs-UI manual-mapping quirk |
| Errors, unexpected behavior, "this isn't working". Believe the user, check parameters, fetch n8n source from GitHub |
mcp__<server>__<tool><server>| Tool | What it does |
|---|---|
| Search workflows across the instance by |
| Fetch a workflow's full JSON by ID. Use after every create/update to verify connections. |
| List folders. You cannot create or move folders. You can only place workflows into folders that already exist. |
| List projects. |
| Soft-delete / activate / deactivate. Validate before publish. |
| Tool | What it does |
|---|---|
| Fetch the n8n Workflow SDK reference. Read this before writing workflow code. Sections include |
| Discover nodes by capability (e.g. "gmail", "slack", "schedule trigger"). Returns IDs plus discriminators (resource/operation/mode). |
| Fetch exact TypeScript parameter definitions for node IDs. Required before configuring any node. Don't guess parameter names. |
| Curated recommendations by workflow technique category. |
| Save a workflow from SDK code. Always include a 1-2 sentence |
| Update an existing workflow by ID with new SDK code. Replaces the entire workflow definition: no partial updates. Saves a draft only; not live until |
| Validate SDK code before create/update. Necessary but not sufficient: won't catch the |
| Tool | What it does |
|---|---|
| Returns JSON Schemas (not data) for nodes that need pinning: triggers, credentialed nodes, and HTTP Request. You generate sample values. |
| Run with the pin data you supply. Auto-pins triggers, credentialed nodes, and HTTP Request. Code, Edit Fields, If, Data Tables, Execute Command, file ops, and sub-workflow calls run for real. Ask before running if any not-auto-pinned node has side effects. Pin data is per-execution only with no visual indicator in the execution viewer, so tell the user which nodes were pinned after the call. See |
| Production execution with the real trigger. Wire error handling first. Same side-effect rules as |
| Fetch a previous execution by ID. |
| Tool | What it does |
|---|---|
| Create a new Data Table. |
| Find existing Data Tables. |
| Rename. |
| Schema changes. |
| Append rows. |
get_sdk_referenceget_node_typesget_workflow_detailsn8n-workflow-lifecyclereferences/REVIEW_CHECKLIST.mdVALIDATION_CHECKLIST.mdget_workflow_detailsn8n-workflow-lifecyclereferences/MCP_ACCESS_PER_WORKFLOW.mdgithub.com/n8n-io/n8nn8n-debugging