$npx -y skills add czlonkowski/n8n-skills --skill n8n-mcp-tools-expertExpert guide for using n8n-mcp MCP tools effectively. Use when searching for nodes, validating configurations, accessing templates, managing workflows, managing credentials, auditing instance security, or using any n8n-mcp tool. Provides tool selection guidance, parameter formats
| 1 | # n8n MCP Tools Expert |
| 2 | |
| 3 | Master guide for using n8n-mcp MCP server tools to build workflows. |
| 4 | |
| 5 | --- |
| 6 | |
| 7 | ## Tool Categories |
| 8 | |
| 9 | n8n-mcp provides tools organized into categories: |
| 10 | |
| 11 | 1. **Node Discovery** → [SEARCH_GUIDE.md](SEARCH_GUIDE.md) |
| 12 | 2. **Configuration Validation** → [VALIDATION_GUIDE.md](VALIDATION_GUIDE.md) |
| 13 | 3. **Workflow Management** → [WORKFLOW_GUIDE.md](WORKFLOW_GUIDE.md) |
| 14 | 4. **Template Library** - Search and deploy 2,700+ real workflows |
| 15 | 5. **Data Tables** - Manage n8n data tables and rows (`n8n_manage_datatable`) |
| 16 | 6. **Credential Management** - Full credential CRUD + schema discovery (`n8n_manage_credentials`) |
| 17 | 7. **Security & Audit** - Instance security auditing with custom deep scan (`n8n_audit_instance`) |
| 18 | 8. **Documentation & Guides** - Tool docs, AI agent guide, Code node guides |
| 19 | |
| 20 | --- |
| 21 | |
| 22 | ## Quick Reference |
| 23 | |
| 24 | ### Most Used Tools (by success rate) |
| 25 | |
| 26 | | Tool | Use When | Speed | |
| 27 | |------|----------|-------| |
| 28 | | `search_nodes` | Finding nodes by keyword | <20ms | |
| 29 | | `get_node` | Understanding node operations (detail="standard") | <10ms | |
| 30 | | `validate_node` | Checking configurations (mode="full") | <100ms | |
| 31 | | `n8n_create_workflow` | Creating workflows | 100-500ms | |
| 32 | | `n8n_update_partial_workflow` | Editing workflows (MOST USED!) | 50-200ms | |
| 33 | | `validate_workflow` | Checking complete workflow | 100-500ms | |
| 34 | | `n8n_deploy_template` | Deploy template to n8n instance | 200-500ms | |
| 35 | | `n8n_manage_datatable` | Managing data tables and rows | 50-500ms | |
| 36 | | `n8n_manage_credentials` | Credential CRUD + schema discovery | 50-500ms | |
| 37 | | `n8n_audit_instance` | Security audit (built-in + custom scan) | 500-5000ms | |
| 38 | | `n8n_autofix_workflow` | Auto-fix validation errors | 200-1500ms | |
| 39 | |
| 40 | --- |
| 41 | |
| 42 | ## Tool Selection Guide |
| 43 | |
| 44 | ### Finding the Right Node |
| 45 | |
| 46 | **Workflow**: |
| 47 | ``` |
| 48 | 1. search_nodes({query: "keyword"}) |
| 49 | 2. get_node({nodeType: "nodes-base.name"}) |
| 50 | 3. [Optional] get_node({nodeType: "nodes-base.name", mode: "docs"}) |
| 51 | ``` |
| 52 | |
| 53 | **Example**: |
| 54 | ```javascript |
| 55 | // Step 1: Search |
| 56 | search_nodes({query: "slack"}) |
| 57 | // Returns: nodes-base.slack |
| 58 | |
| 59 | // Step 2: Get details |
| 60 | get_node({nodeType: "nodes-base.slack"}) |
| 61 | // Returns: operations, properties, examples (standard detail) |
| 62 | |
| 63 | // Step 3: Get readable documentation |
| 64 | get_node({nodeType: "nodes-base.slack", mode: "docs"}) |
| 65 | // Returns: markdown documentation |
| 66 | ``` |
| 67 | |
| 68 | **Common pattern**: search → get_node (18s average) |
| 69 | |
| 70 | ### Validating Configuration |
| 71 | |
| 72 | **Workflow**: |
| 73 | ``` |
| 74 | 1. validate_node({nodeType, config: {}, mode: "minimal"}) - Check required fields |
| 75 | 2. validate_node({nodeType, config, profile: "runtime"}) - Full validation |
| 76 | 3. [Repeat] Fix errors, validate again |
| 77 | ``` |
| 78 | |
| 79 | **Common pattern**: validate → fix → validate (23s thinking, 58s fixing per cycle) |
| 80 | |
| 81 | ### Managing Workflows |
| 82 | |
| 83 | **Workflow**: |
| 84 | ``` |
| 85 | 1. n8n_create_workflow({name, nodes, connections}) |
| 86 | 2. n8n_validate_workflow({id}) |
| 87 | 3. n8n_update_partial_workflow({id, operations: [...]}) |
| 88 | 4. n8n_validate_workflow({id}) again |
| 89 | 5. n8n_update_partial_workflow({id, operations: [{type: "activateWorkflow"}]}) |
| 90 | ``` |
| 91 | |
| 92 | **Common pattern**: iterative updates (56s average between edits) |
| 93 | |
| 94 | ### Critical: Node JSON Hygiene When Creating Workflows |
| 95 | |
| 96 | Three structural mistakes in generated node JSON break the n8n UI even when the workflow validates: |
| 97 | |
| 98 | 1. **Never emit a `credentials` block with a placeholder ID.** A fake ID like `"id": "REPLACE_ME"` renders the credential selector permanently disabled and non-clickable in the n8n UI ("No credentials yet") — the user has to recreate the node from scratch. If you don't know the real credential ID, **omit the `credentials` block entirely**; an absent block shows a normal empty dropdown the user can click. Use `n8n_manage_credentials({action: "list"})` to discover real credential IDs first. |
| 99 | |
| 100 | ```javascript |
| 101 | // ❌ Breaks the credential selector |
| 102 | "credentials": {"httpHeaderAuth": {"id": "REPLACE_ME", "name": "My API Key"}} |
| 103 | |
| 104 | // ✅ Unknown ID → omit credentials block; user picks in UI |
| 105 | // ✅ Known ID (from n8n_manage_credentials list) → use the real ID |
| 106 | ``` |
| 107 | |
| 108 | 2. **Generate UUID v4 values for node `id`** — not human-readable strings like `"http-list-node"`. n8n's frontend uses node IDs for form binding and credential component initialization; non-UUID IDs cause subtle UI breakage. |
| 109 | |
| 110 | 3. **Use the current `typeVersion`** for each node — check `get_node` rather than hardcoding remembered versions (e.g. httpRequest is at 4.4+, not 4.2). |
| 111 | |
| 112 | --- |
| 113 | |
| 114 | ## Critical: no |