Install
$ agentstack add skill-czlonkowski-n8n-skills-n8n-mcp-tools-expert ✓ scanned · ✓ verified — works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
About
n8n MCP Tools Expert
Master guide for using n8n-mcp MCP server tools to build workflows.
Tool Categories
n8n-mcp provides tools organized into categories:
- Node Discovery → [SEARCHGUIDE.md](SEARCHGUIDE.md)
- Configuration Validation → [VALIDATIONGUIDE.md](VALIDATIONGUIDE.md)
- Workflow Management → [WORKFLOWGUIDE.md](WORKFLOWGUIDE.md)
- Template Library - Search and deploy 2,700+ real workflows
- Workflow Generation - Natural-language → workflow with proposal review (
n8n_generate_workflow, hosted-only) - Data Tables - Manage n8n data tables and rows (
n8n_manage_datatable) - Credential Management - Full credential CRUD + schema discovery (
n8n_manage_credentials) - Security & Audit - Instance security auditing with custom deep scan (
n8n_audit_instance) - Documentation & Guides - Tool docs, AI agent guide, Code node guides
Quick Reference
Most Used Tools (by success rate)
| Tool | Use When | Speed | |------|----------|-------| | search_nodes | Finding nodes by keyword | <20ms | | get_node | Understanding node operations (detail="standard") | <10ms | | validate_node | Checking configurations (mode="full") | <100ms | | n8n_create_workflow | Creating workflows | 100-500ms | | n8n_update_partial_workflow | Editing workflows (MOST USED!) | 50-200ms | | validate_workflow | Checking complete workflow | 100-500ms | | n8n_deploy_template | Deploy template to n8n instance | 200-500ms | | n8n_generate_workflow | NL → workflow (proposals → deploy), hosted-only | 2-15s | | n8n_manage_datatable | Managing data tables and rows | 50-500ms | | n8n_manage_credentials | Credential CRUD + schema discovery | 50-500ms | | n8n_audit_instance | Security audit (built-in + custom scan) | 500-5000ms | | n8n_autofix_workflow | Auto-fix validation errors | 200-1500ms |
Tool Selection Guide
Finding the Right Node
Workflow:
1. search_nodes({query: "keyword"})
2. get_node({nodeType: "nodes-base.name"})
3. [Optional] get_node({nodeType: "nodes-base.name", mode: "docs"})
Example:
// Step 1: Search
search_nodes({query: "slack"})
// Returns: nodes-base.slack
// Step 2: Get details
get_node({nodeType: "nodes-base.slack"})
// Returns: operations, properties, examples (standard detail)
// Step 3: Get readable documentation
get_node({nodeType: "nodes-base.slack", mode: "docs"})
// Returns: markdown documentation
Common pattern: search → get_node (18s average)
Validating Configuration
Workflow:
1. validate_node({nodeType, config: {}, mode: "minimal"}) - Check required fields
2. validate_node({nodeType, config, profile: "runtime"}) - Full validation
3. [Repeat] Fix errors, validate again
Common pattern: validate → fix → validate (23s thinking, 58s fixing per cycle)
Managing Workflows
Workflow:
1. n8n_create_workflow({name, nodes, connections})
2. n8n_validate_workflow({id})
3. n8n_update_partial_workflow({id, operations: [...]})
4. n8n_validate_workflow({id}) again
5. n8n_update_partial_workflow({id, operations: [{type: "activateWorkflow"}]})
Common pattern: iterative updates (56s average between edits)
Critical: Node JSON Hygiene When Creating Workflows
Three structural mistakes in generated node JSON break the n8n UI even when the workflow validates:
- Never emit a
credentialsblock 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 thecredentialsblock entirely; an absent block shows a normal empty dropdown the user can click. Usen8n_manage_credentials({action: "list"})to discover real credential IDs first.
// ❌ Breaks the credential selector
"credentials": {"httpHeaderAuth": {"id": "REPLACE_ME", "name": "My API Key"}}
// ✅ Unknown ID → omit credentials block; user picks in UI
// ✅ Known ID (from n8n_manage_credentials list) → use the real ID
- 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.
- Use the current
typeVersionfor each node — checkget_noderather than hardcoding remembered versions (e.g. httpRequest is at 4.4+, not 4.2).
Critical: nodeType Formats
Two different formats for different tools!
Format 1: Search/Validate Tools
// Use SHORT prefix
"nodes-base.slack"
"nodes-base.httpRequest"
"nodes-base.webhook"
"nodes-langchain.agent"
Tools that use this:
- search_nodes (returns this format)
- get_node
- validate_node
- validate_workflow
Format 2: Workflow Tools
// Use FULL prefix
"n8n-nodes-base.slack"
"n8n-nodes-base.httpRequest"
"n8n-nodes-base.webhook"
"@n8n/n8n-nodes-langchain.agent"
Tools that use this:
- n8ncreateworkflow
- n8nupdatepartial_workflow
Conversion
// search_nodes returns BOTH formats
{
"nodeType": "nodes-base.slack", // For search/validate tools
"workflowNodeType": "n8n-nodes-base.slack" // For workflow tools
}
Common Mistakes
Eight recurring mistakes. Two are worth showing in full because they silently corrupt structure:
// nodeType prefix (search/validate tools want the SHORT form)
get_node({nodeType: "slack"}) // ❌ missing prefix → "Node not found"
get_node({nodeType: "n8n-nodes-base.slack"}) // ❌ FULL prefix is for workflow tools
get_node({nodeType: "nodes-base.slack"}) // ✅
// credentials must be nested by type with {id, name} — not a flat string
updates: {credentials: "myApiKey"} // ❌
updates: {credentials: {httpHeaderAuth: {id: "abc123", name: "My API Key"}}} // ✅
| # | Mistake | Fix | |---|---------|-----| | 1 | Wrong nodeType format | SHORT nodes-base.* for search/validate; FULL n8n-nodes-base.* for workflow tools (see above) | | 2 | detail: "full" by default | Default standard covers 95%; reach for docs/search_properties instead of full | | 3 | No validation profile | Pass profile: "runtime" explicitly (minimal/ai-friendly/strict for other stages) | | 4 | Ignoring auto-sanitization | ALL nodes sanitized on ANY update (operator structures, IF/Switch metadata); it can't fix broken connections or branch-count mismatches | | 5 | Not using smart parameters | Use branch: "true" / case: 0 instead of fragile sourceIndex math | | 6 | Omitting intent | Always include intent on n8n_update_partial_workflow for better responses | | 7 | parameters instead of updates | updateNode takes updates: {...}, not parameters: {...} | | 8 | Wrong credential format | Nest by type with {id, name} (see above) |
Full WRONG/CORRECT examples for each: see [VALIDATIONGUIDE.md → Common Mistakes](VALIDATIONGUIDE.md).
Tool Usage Patterns
Three patterns dominate real usage. Worked, step-by-step examples for each live in the reference guides.
- Pattern 1 — Node Discovery (18s avg between steps):
search_nodes({query})→get_node({nodeType, includeExamples: true}). See [SEARCHGUIDE.md](SEARCHGUIDE.md). - Pattern 2 — Validation Loop (23s thinking, 58s fixing):
validate_node({profile: "runtime"})→ readerrors→ fix config → validate again until clean. See [VALIDATIONGUIDE.md](VALIDATIONGUIDE.md). - Pattern 3 — Workflow Editing (99.0% success, 56s avg between edits): iterate
n8n_update_partial_workflow(withintent) →n8n_validate_workflow→ finallyactivateWorkflow. Build iteratively, NOT one-shot. See [WORKFLOWGUIDE.md](WORKFLOWGUIDE.md).
Detailed Guides
Node Discovery Tools
See [SEARCHGUIDE.md](SEARCHGUIDE.md) for:
- search_nodes
- get_node with detail levels (minimal, standard, full)
- getnode modes (info, docs, searchproperties, versions)
Validation Tools
See [VALIDATIONGUIDE.md](VALIDATIONGUIDE.md) for:
- Validation profiles explained
- validate_node with modes (minimal, full)
- validate_workflow complete structure
- Auto-sanitization system
- Handling validation errors
Workflow Management
See [WORKFLOWGUIDE.md](WORKFLOWGUIDE.md) for:
- n8ncreateworkflow
- n8nupdatepartial_workflow (19 operation types including patchNodeField!)
- Smart parameters (branch, case)
- AI connection types (8 types)
- Workflow activation (activateWorkflow/deactivateWorkflow)
- n8ndeploytemplate, n8ngenerateworkflow
- n8nworkflowversions
- n8nmanagecredentials (credential CRUD + schema discovery)
- n8nauditinstance (security auditing)
Templates, Data Tables & Self-Help
See [OPERATIONSGUIDE.md](OPERATIONSGUIDE.md) for:
- searchtemplates / gettemplate / n8ndeploytemplate examples
- n8nmanagedatatable (full actions, filter conditions, examples)
- toolsdocumentation, aiagentsguide, n8nhealth_check
Template Usage
The 2,700+ template library has three tools: search_templates (modes query/by_nodes/by_task/by_metadata), get_template (modes structure/full), and n8n_deploy_template (deploys to your instance with autoFix/autoUpgradeVersions, returns workflow ID + required credentials + fixes applied).
See [OPERATIONSGUIDE.md](OPERATIONSGUIDE.md) for full search/get/deploy examples.
Workflow Generation
n8n_generate_workflow turns a natural-language description into a workflow via a review checkpoint. Hosted-only — self-hosted gets {hosted_only: true} with a redirect (fall back to n8n_deploy_template or n8n_create_workflow). Two paths: Path A (default) returns up to 5 proposals, then deploy one with deploy_id; Path B uses skip_cache: true for a fresh preview, then confirm_deploy: true. Deployed workflows are inactive (configure credentials in UI first); always n8n_validate_workflow after. More specific descriptions (trigger type, named services, logic/flow) yield better results.
When to use which: n8n_deploy_template (curated library) · n8n_generate_workflow (plain English, hosted only) · n8n_create_workflow (node-by-node control).
See [WORKFLOWGUIDE.md](WORKFLOWGUIDE.md) for both paths, parameters, and pitfalls in full.
Data Table Management
n8n_manage_datatable is the MCP tool for managing data tables and rows from outside a workflow (table actions createTable/listTables/getTable/updateTable/deleteTable; row actions getRows/insertRows/updateRows/upsertRows/deleteRows, with filtering, pagination, and dryRun). Don't confuse it with the in-workflow nodes-base.dataTable node, which reads/writes rows during execution (see [n8n-node-configuration → OPERATIONPATTERNS.md](../n8n-node-configuration/OPERATIONPATTERNS.md#data-table-nodes-basedatatable)). Rule of thumb: MCP tool to set up a table once, workflow node to read/write on every execution. deleteRows requires a filter; use dryRun: true before bulk changes.
See [OPERATIONSGUIDE.md](OPERATIONSGUIDE.md) for all actions, filter conditions, and examples.
Credential Management
n8n_manage_credentials is the unified credential tool: actions list, get, create, update, delete, getSchema. It never returns secrets — get/create/update strip the data field. Use getSchema before create to discover required fields. The optional includeUsage: true flag (on list/get) reverse-scans workflows and attaches usedIn: [{id, name, active}] + usageCount — use it before deleting or rotating a credential to see what breaks (it triggers a full client-side scan, caps at 5000 workflows, excludes archived, and degrades to a usageScanError field on failure).
See [WORKFLOWGUIDE.md](WORKFLOWGUIDE.md) for all actions, the includeUsage shape, security notes, and the safe delete/rotate workflow.
Security & Audit
n8n_audit_instance combines n8n's built-in audit (categories credentials/database/nodes/instance/filesystem) with a custom deep scan (hardcoded_secrets, unauthenticated_webhooks, error_handling, data_retention). All parameters optional: categories, includeCustomScan (default true), customChecks, daysAbandonedWorkflow. Detected secrets are masked (first 6 + last 4 chars). Output is an actionable markdown report — summary table, findings by workflow, and a Remediation Playbook split into auto-fixable / requires-review / requires-user-action.
See [WORKFLOWGUIDE.md](WORKFLOWGUIDE.md) for the two scanning approaches, examples, and remediation types in full.
Self-Help Tools
tools_documentation()— overview of all tools;tools_documentation({topic, depth: "full"})for a specific tool. Code node guides via topicsjavascript_code_node_guide/python_code_node_guide.- AI agent guide —
tools_documentation({topic: "ai_agents_guide", depth: "full"})(no standalone tool); returns architecture, connections, tools, validation, best practices. n8n_health_check()— quick check;n8n_health_check({mode: "diagnostic"})returns status, env vars, tool status, API connectivity.
See [OPERATIONSGUIDE.md](OPERATIONSGUIDE.md) for examples.
Tool Availability
Always Available (no n8n API needed):
- searchnodes, getnode
- validatenode, validateworkflow
- searchtemplates, gettemplate
- toolsdocumentation (includes the aiagents_guide topic)
Requires n8n API (N8NAPIURL + N8NAPIKEY):
- n8ncreateworkflow
- n8nupdatepartialworkflow, n8nupdatefullworkflow
- n8nvalidateworkflow (by ID)
- n8nlistworkflows, n8ngetworkflow, n8ndeleteworkflow
- n8ntestworkflow
- n8n_executions
- n8ndeploytemplate
- n8nworkflowversions
- n8nautofixworkflow
- n8nmanagedatatable
- n8nmanagecredentials
- n8nauditinstance
If API tools unavailable, use templates and validation-only workflows.
Unified Tool Reference
get_node— detail levels (minimal~200 tok /standard~1-2K, RECOMMENDED /full~3-8K, sparingly) and modes (infodefault,docs,search_properties+propertyQuery,versions,compare,breaking,migrations). Deep dive in [SEARCHGUIDE.md](SEARCHGUIDE.md).validate_node— modesfull(default, errors/warnings/suggestions) andminimal(required-fields check); profilesminimal/runtime(default, recommended)/ai-friendly/strict. Deep dive in [VALIDATIONGUIDE.md](VALIDATIONGUIDE.md).
Performance Characteristics
| Tool | Response Time | Payload Size | |------|---------------|--------------| | searchnodes | <20ms | Small | | getnode (standard) | <10ms | ~1-2KB | | getnode (full) | <100ms | 3-8KB | | validatenode (minimal) | <50ms | Small | | validatenode (full) | <100ms | Medium | | validateworkflow | 100-500ms | Medium | | n8nmanagecredentials | 50-500ms | Small-Medium | | n8nauditinstance | 500-5000ms | Large | | n8ncreateworkflow | 100-500ms | Medium | | n8nupdatepartialworkflow | 50-200ms | Small | | n8ndeploy_template | 200-500ms | Medium |
Best Practices
Do
- For simple workflows (<=5 nodes), use MCP tools directly — don't over-engineer the investigation
- Use
patchNodeFieldfor surgical edits to Code node content instead of replacing the entire node - Use
get_node({detail: "standard"})for most use cases - Specify validation profile explicitly (
profile: "runtime") - Use smart parameters (
branch,case) for clarity - Include
intentparameter in workflow updates - Follow search → get_node → validate workflow
- Iterate workflows (avg 56s between edits)
- Validate after every significant change
- Use
includeExamples: truefor real configs - Use
n8n_deploy_templatefor quick starts
Don't
- Use
detail: "full"unless necessary (wastes tokens) - Forget nodeType prefix (`nodes-base
…
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: czlonkowski
- Source: czlonkowski/n8n-skills
- License: MIT
- Homepage: https://www.n8n-skills.com
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet — be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.