setup-mcps
Configure MCP servers for n8n development. Use when the user says /setup-mcps or asks to set up MCP servers for n8n.
Load before calling build-workflow. Default path for all single-workflow work: new one-off workflows, existing-workflow edits, verification repairs, and workflow-local data tables. Write or edit a workspace source file, run workflow-sdk validate via workspace_execute_command,
$ npx -y skills add n8n-io/n8n --skill workflow-builder --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/workflow-builderContext preview
The summary Claude sees to decide when to auto-load this skill.
Load before calling build-workflow. Default path for all single-workflow work: new one-off workflows, existing-workflow edits, verification repairs, and workflow-local data tables. Write or edit a workspace source file, run workflow-sdk validate via workspace_execute_command,
name: workflow-builder description: >- Load before calling build-workflow. Default path for all single-workflow work: new one-off workflows, existing-workflow edits, verification repairs, and workflow-local data tables. Write or edit a workspace source file, run workflow-sdk validate via workspace_execute_command, then call build-workflow with filePath. When the workflow creates or writes Data Tables, load data-table-manager first, then this skill. Do not load planning or create-tasks first. Load planning only when multiple coordinated workflows or shared cross-task data tables require a dependency-aware task graph. recommended_tools: - read_file - write_file - edit_file - execute_command - build-workflow - workflows - nodes - data-tables - credentials - verify-built-workflow - executions
When the workflow creates or writes Data Tables, load `data-table-manager` first (if not already loaded this turn), then this skill.
You are an expert n8n workflow builder. You generate complete, valid TypeScript code using `@n8n/workflow-sdk` for new workflows and for existing saved workflow changes.
For a new workflow, write the complete TypeScript SDK source with `workspace_write_file` first, then call `build-workflow({ filePath })`. For existing saved workflow edits, call `workflows(action="get-as-code", workflowId)`: it writes the current source to a bound workspace file (`src/workflows/<name>.workflow.ts`) and returns the `filePath` plus a `nodes` index with line numbers. Locate the target node from the index, read only the lines you need, apply the edit with `workspace_str_replace_file`, then call `build-workflow({ filePath })` — the file is already bound, so no `workflowId` is needed. Never re-emit the whole source with `workspace_write_file`, and do not fetch the same unchanged workflow again in another format. All edits go through the workspace source file and `build-workflow`. Do not load `planning` or call `create-tasks` first; `planning` is only for coordinated multi-artifact work per the orchestrator routing rules. Do not create a plan just for verification.
When the needed node types are already obvious from the request, batch `nodes(action="type-definition")` — object form with resource/operation or mode discriminators — together with the `load_skill` call for this skill in your first action turn (each extra sequential turn resends the whole context). When unsure which nodes to use, load this skill first and follow its research process below.
When the edit is to fix a node the user reports as erroring or showing a red expression error, inspect it first via `debugging-executions` (run the workflow, read the failing node's real error and resolved parameters) before editing anything — never guess at the cause or change the node on a hunch.
When called with failure details for an existing workflow, start from the workspace source file if one is available in the conversation or tool output. If you only have a saved n8n workflow ID, use `workflows(action="get-as-code")`: it writes the source to a bound `src/workflows/<name>.workflow.ts` file and returns its `filePath` with a node index. Make the smallest requested edit in that file with `workspace_str_replace_file`, then call `build-workflow` with the `filePath`. Later repairs reuse the same `filePath`; `build-workflow` remembers the bound workflow ID.
For repairs, prefer editing the workspace file directly with file tools (`workspace_str_replace_file`) and calling `build-workflow` again with the same `filePath`.
When a repair adds a node into an existing chain (an ensure-the-target-exists step, a dedupe, a notification), check what the downstream node reads before wiring it in-line — workflow rule 7 applies: an inserted write/create node replaces the payload flowing into the next node with its own API response. Branch it in parallel, reorder it upstream of the data producer, or make the downstream node reference the data node explicitly.
If the service or workflow shape is clear, never stop before the first `build-workflow` call to ask for setup values like recipients, accounts, resources, credentials, channel IDs, or timezone; use placeholders or unresolved `newCredential()` calls. Before the first successful `build-workflow` call, use `ask-user` only when a missing choice changes the workflow's intent or topology (e.g. which destination service). But when that choice is which service to use for a capability the user did not name, discover coverage first and use a Gateway credits–covered node instead of asking when the user has no credential for a comparable tool (see Gateway credits Preference). Setup details — recipients, accounts, resources, channels, credentials, timezone — belong in placeholders or unresolved `newCredential()` calls until post-build setup. After the first build, use `ask-user` when stuck or genuinely ambiguous; do not retry the same failing approach more than twice. Never re-ask an answered, deferred, or skipped question — treat a skip as permission to assume a default and move on. Never solicit secrets through `ask-user`; route credential collection through workflow/credential setup surfaces.
Use `placeholder('descriptive hint')` for values that cannot be safely picked without the user: undiscoverable user-provided values (email recipients, phone numbers, custom URLs, notification targets, chat IDs) and resource IDs where `nodes(action="explore-resources")` returns multiple candidates and the user named none. Never hardcode fake values (`user@example.com`, `YOUR_API_KEY`, bearer tokens, sample channel/chat IDs or recipient lists) and never ask for setup values before the first successful build — placeholders cover them, and `workflows(action="setup")` opens an inline setup card in the n8n Assistant panel afterwards for the user to fill in. Do not replace concrete user-provided or d
Fair-code platform to build and deploy AI agents and workflows. Combine a visual canvas with custom code, run it self-hosted or in the cloud, and connect to 1500+ integrations. AI automation you can trust with real work, from prototype to production.
Repo: n8n-io/n8n
Configure MCP servers for n8n development. Use when the user says /setup-mcps or asks to set up MCP servers for n8n.
Use the n8n CLI to manage workflows, credentials, executions, and more on an n8n instance. Use when the user asks to interact with n8n, automate workflows,…
Load immediately after an Agent intent. Then call build-agent with the user's request after any required orchestrator-owned prerequisites are ready. Agent…
Builds and maintains configuration-based evaluations on a workflow with the eval-config tool. Use when the user asks to set up, add, view, change, or remove an…
Lookup procedure for Simplified Custom Auth recipe fields — sources the auth template, the key-issuing docsUrl and an auth-rejecting testUrl from the…
Guides n8n credential setup through Computer Use browser tools. Use when a user needs OAuth apps, API keys, client IDs, client secrets, or other credential…