n8n
Complete skill for building, managing, and administering n8n workflows.
How to Use This Skill
This skill covers 9 domains. Each has its own reference file with detailed guidance.
| Domain |
Reference |
When to use |
| Workflow Patterns |
czlonkowski/skills/n8n-workflow-patterns/SKILL.md |
Building new workflows, choosing architecture (webhook, HTTP API, database, AI agent, scheduled) |
| Node Configuration |
czlonkowski/skills/n8n-node-configuration/SKILL.md |
Configuring nodes, understanding property dependencies, required fields by operation |
| Code — JavaScript |
czlonkowski/skills/n8n-code-javascript/SKILL.md |
Writing JS in Code nodes, $input/$json/$node syntax, $helpers.httpRequest(), DateTime |
| Code — Python |
czlonkowski/skills/n8n-code-python/SKILL.md |
Writing Python in Code nodes, _input/_json syntax, standard library, limitations |
| Expression Syntax |
czlonkowski/skills/n8n-expression-syntax/SKILL.md |
Writing {{ }} expressions, $json/$node variables, fixing expression errors |
| Validation |
czlonkowski/skills/n8n-validation-expert/SKILL.md |
Interpreting validation errors/warnings, false positives, validation profiles |
| MCP Tools |
czlonkowski/skills/n8n-mcp-tools-expert/SKILL.md |
Using n8n MCP tools effectively — tool selection, parameter formats, common patterns |
Additional Domains
| Domain |
Reference |
When to use |
| Credentials |
credentials/SKILL.md |
Credential types, REST API credential CRUD, HTTP Request auth modes, httpCustomAuth JSON format, predefinedCredentialType vs genericCredentialType |
| Administration |
administration/SKILL.md |
Instance operations the MCP doesn't cover — Docker, backup/restore, CLI commands, internal API, community packages, SSO, upgrades, troubleshooting |
Quick Decision: Which Tool to Use
| You want to... |
Tool |
| Create/edit/delete workflows |
MCP (n8n_create_workflow, n8n_update_partial_workflow) |
| Search nodes, get schema |
MCP (search_nodes, get_node) |
| Validate workflow or node |
MCP (n8n_validate_workflow, validate_node) |
| Auto-fix workflow issues |
MCP (n8n_autofix_workflow) |
| Deploy a template |
MCP (n8n_deploy_template) |
| Test/trigger a workflow |
MCP (n8n_test_workflow) |
| Manage executions |
MCP (n8n_executions) |
| Create/update credentials |
Public REST API (/api/v1/credentials) |
| Test a credential |
Internal API (POST /credentials/test) — see credentials |
| Install community packages |
Internal API (POST /community-packages) — see administration |
| Export decrypted credentials |
CLI (n8n export:credentials --decrypted) — see administration |
| Backup/restore database |
CLI / Docker — see administration |
| Upgrade n8n |
Docker — see administration |
Priority: MCP → Public API → Internal API → CLI → Docker/Infra.
Core Concepts (Quick Reference)
Webhook Data Access
// CRITICAL: webhook data is nested under .body
const data = $input.first().json.body; // NOT $input.first().json
Code Node Return Format
// MUST return array of {json: {...}} objects
return items.map(item => ({
json: { ...item.json, processed: true }
}));
Expression Syntax
{{ $json.fieldName }} // Current item field
{{ $node["NodeName"].json }} // Another node's output
{{ $now.toISO() }} // Current timestamp
{{ $env.MY_VAR }} // Environment variable
Credential Linking (in workflow JSON)
{
"credentials": {
"httpHeaderAuth": { "id": "CRED_ID", "name": "My API Key" }
}
}
1---2name: n8n3description: Complete n8n skill — workflow building, node configuration, JavaScript/Python code nodes, expression syntax, validation, MCP tools, credentials, administration, Docker deployment, backup/restore, internal API, and troubleshooting. Auto-triggers on any n8n task including workflow creation, node configuration, code nodes, expressions, validation errors, credential management, instance administration, n8n setup, n8n upgrade, n8n backup, and n8n API usage.4---56# n8n78Complete skill for building, managing, and administering n8n workflows.910---1112## How to Use This Skill1314This skill covers 9 domains. Each has its own reference file with detailed guidance.1516### Workflow Building (from [czlonkowski/n8n-skills](https://github.com/czlonkowski/n8n-skills))1718| Domain | Reference | When to use |19|--------|-----------|-------------|20| **Workflow Patterns** | [czlonkowski/skills/n8n-workflow-patterns/SKILL.md](czlonkowski/skills/n8n-workflow-patterns/SKILL.md) | Building new workflows, choosing architecture (webhook, HTTP API, database, AI agent, scheduled) |21| **Node Configuration** | [czlonkowski/skills/n8n-node-configuration/SKILL.md](czlonkowski/skills/n8n-node-configuration/SKILL.md) | Configuring nodes, understanding property dependencies, required fields by operation |22| **Code — JavaScript** | [czlonkowski/skills/n8n-code-javascript/SKILL.md](czlonkowski/skills/n8n-code-javascript/SKILL.md) | Writing JS in Code nodes, `$input/$json/$node` syntax, `$helpers.httpRequest()`, DateTime |23| **Code — Python** | [czlonkowski/skills/n8n-code-python/SKILL.md](czlonkowski/skills/n8n-code-python/SKILL.md) | Writing Python in Code nodes, `_input/_json` syntax, standard library, limitations |24| **Expression Syntax** | [czlonkowski/skills/n8n-expression-syntax/SKILL.md](czlonkowski/skills/n8n-expression-syntax/SKILL.md) | Writing `{{ }}` expressions, `$json/$node` variables, fixing expression errors |25| **Validation** | [czlonkowski/skills/n8n-validation-expert/SKILL.md](czlonkowski/skills/n8n-validation-expert/SKILL.md) | Interpreting validation errors/warnings, false positives, validation profiles |26| **MCP Tools** | [czlonkowski/skills/n8n-mcp-tools-expert/SKILL.md](czlonkowski/skills/n8n-mcp-tools-expert/SKILL.md) | Using n8n MCP tools effectively — tool selection, parameter formats, common patterns |2728### Additional Domains2930| Domain | Reference | When to use |31|--------|-----------|-------------|32| **Credentials** | [credentials/SKILL.md](credentials/SKILL.md) | Credential types, REST API credential CRUD, HTTP Request auth modes, httpCustomAuth JSON format, predefinedCredentialType vs genericCredentialType |33| **Administration** | [administration/SKILL.md](administration/SKILL.md) | Instance operations the MCP doesn't cover — Docker, backup/restore, CLI commands, internal API, community packages, SSO, upgrades, troubleshooting |3435---3637## Quick Decision: Which Tool to Use3839| You want to... | Tool |40|----------------|------|41| Create/edit/delete workflows | MCP (`n8n_create_workflow`, `n8n_update_partial_workflow`) |42| Search nodes, get schema | MCP (`search_nodes`, `get_node`) |43| Validate workflow or node | MCP (`n8n_validate_workflow`, `validate_node`) |44| Auto-fix workflow issues | MCP (`n8n_autofix_workflow`) |45| Deploy a template | MCP (`n8n_deploy_template`) |46| Test/trigger a workflow | MCP (`n8n_test_workflow`) |47| Manage executions | MCP (`n8n_executions`) |48| Create/update credentials | Public REST API (`/api/v1/credentials`) |49| Test a credential | Internal API (`POST /credentials/test`) — see [credentials](credentials/SKILL.md) |50| Install community packages | Internal API (`POST /community-packages`) — see [administration](administration/SKILL.md) |51| Export decrypted credentials | CLI (`n8n export:credentials --decrypted`) — see [administration](administration/SKILL.md) |52| Backup/restore database | CLI / Docker — see [administration](administration/SKILL.md) |53| Upgrade n8n | Docker — see [administration](administration/SKILL.md) |5455**Priority: MCP → Public API → Internal API → CLI → Docker/Infra.**5657---5859## Core Concepts (Quick Reference)6061### Webhook Data Access62```javascript63// CRITICAL: webhook data is nested under .body64const data = $input.first().json.body; // NOT $input.first().json65```6667### Code Node Return Format68```javascript69// MUST return array of {json: {...}} objects70return items.map(item => ({71 json: { ...item.json, processed: true }72}));73```7475### Expression Syntax76```77{{ $json.fieldName }} // Current item field78{{ $node["NodeName"].json }} // Another node's output79{{ $now.toISO() }} // Current timestamp80{{ $env.MY_VAR }} // Environment variable81```8283### Credential Linking (in workflow JSON)84```json85{86 "credentials": {87 "httpHeaderAuth": { "id": "CRED_ID", "name": "My API Key" }88 }89}90```