n8n-mcp 2.20.2 → 2.20.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (32) hide show
  1. package/README.md +99 -0
  2. package/data/nodes.db +0 -0
  3. package/dist/http-server.d.ts.map +1 -1
  4. package/dist/http-server.js +22 -8
  5. package/dist/http-server.js.map +1 -1
  6. package/dist/mcp/handlers-workflow-diff.d.ts.map +1 -1
  7. package/dist/mcp/handlers-workflow-diff.js +67 -0
  8. package/dist/mcp/handlers-workflow-diff.js.map +1 -1
  9. package/dist/mcp/tool-docs/validation/validate-node-operation.d.ts.map +1 -1
  10. package/dist/mcp/tool-docs/validation/validate-node-operation.js +9 -3
  11. package/dist/mcp/tool-docs/validation/validate-node-operation.js.map +1 -1
  12. package/dist/mcp/tool-docs/validation/validate-workflow.d.ts.map +1 -1
  13. package/dist/mcp/tool-docs/validation/validate-workflow.js +5 -2
  14. package/dist/mcp/tool-docs/validation/validate-workflow.js.map +1 -1
  15. package/dist/mcp/tool-docs/workflow_management/n8n-create-workflow.d.ts.map +1 -1
  16. package/dist/mcp/tool-docs/workflow_management/n8n-create-workflow.js +5 -2
  17. package/dist/mcp/tool-docs/workflow_management/n8n-create-workflow.js.map +1 -1
  18. package/dist/mcp/tool-docs/workflow_management/n8n-update-partial-workflow.d.ts.map +1 -1
  19. package/dist/mcp/tool-docs/workflow_management/n8n-update-partial-workflow.js +42 -3
  20. package/dist/mcp/tool-docs/workflow_management/n8n-update-partial-workflow.js.map +1 -1
  21. package/dist/services/n8n-validation.d.ts +2 -0
  22. package/dist/services/n8n-validation.d.ts.map +1 -1
  23. package/dist/services/n8n-validation.js +192 -2
  24. package/dist/services/n8n-validation.js.map +1 -1
  25. package/dist/services/node-sanitizer.d.ts +5 -0
  26. package/dist/services/node-sanitizer.d.ts.map +1 -0
  27. package/dist/services/node-sanitizer.js +225 -0
  28. package/dist/services/node-sanitizer.js.map +1 -0
  29. package/dist/services/workflow-diff-engine.d.ts.map +1 -1
  30. package/dist/services/workflow-diff-engine.js +7 -1
  31. package/dist/services/workflow-diff-engine.js.map +1 -1
  32. package/package.json +1 -1
package/README.md CHANGED
@@ -501,6 +501,14 @@ Complete guide for integrating n8n-MCP with Windsurf using project rules.
501
501
  ### [Codex](./docs/CODEX_SETUP.md)
502
502
  Complete guide for integrating n8n-MCP with Codex.
503
503
 
504
+ ## 🎓 Add Claude Skills (Optional)
505
+
506
+ Supercharge your n8n workflow building with specialized skills that teach AI how to build production-ready workflows!
507
+
508
+ [![n8n-mcp Skills Setup](./docs/img/skills.png)](https://www.youtube.com/watch?v=e6VvRqmUY2Y)
509
+
510
+ Learn more: [n8n-skills repository](https://github.com/czlonkowski/n8n-skills)
511
+
504
512
  ## 🤖 Claude Project Setup
505
513
 
506
514
  For the best results when using n8n-MCP with Claude Projects, use these enhanced system instructions:
@@ -666,6 +674,97 @@ n8n_update_partial_workflow({id: "wf-123", operations: [{...}]})
666
674
  n8n_update_partial_workflow({id: "wf-123", operations: [{...}]})
667
675
  ```
668
676
 
677
+ ### CRITICAL: addConnection Syntax
678
+
679
+ The `addConnection` operation requires **four separate string parameters**. Common mistakes cause misleading errors.
680
+
681
+ ❌ WRONG - Object format (fails with "Expected string, received object"):
682
+ ```json
683
+ {
684
+ "type": "addConnection",
685
+ "connection": {
686
+ "source": {"nodeId": "node-1", "outputIndex": 0},
687
+ "destination": {"nodeId": "node-2", "inputIndex": 0}
688
+ }
689
+ }
690
+ ```
691
+
692
+ ❌ WRONG - Combined string (fails with "Source node not found"):
693
+ ```json
694
+ {
695
+ "type": "addConnection",
696
+ "source": "node-1:main:0",
697
+ "target": "node-2:main:0"
698
+ }
699
+ ```
700
+
701
+ ✅ CORRECT - Four separate string parameters:
702
+ ```json
703
+ {
704
+ "type": "addConnection",
705
+ "source": "node-id-string",
706
+ "target": "target-node-id-string",
707
+ "sourcePort": "main",
708
+ "targetPort": "main"
709
+ }
710
+ ```
711
+
712
+ **Reference**: [GitHub Issue #327](https://github.com/czlonkowski/n8n-mcp/issues/327)
713
+
714
+ ### ⚠️ CRITICAL: IF Node Multi-Output Routing
715
+
716
+ IF nodes have **two outputs** (TRUE and FALSE). Use the **`branch` parameter** to route to the correct output:
717
+
718
+ ✅ CORRECT - Route to TRUE branch (when condition is met):
719
+ ```json
720
+ {
721
+ "type": "addConnection",
722
+ "source": "if-node-id",
723
+ "target": "success-handler-id",
724
+ "sourcePort": "main",
725
+ "targetPort": "main",
726
+ "branch": "true"
727
+ }
728
+ ```
729
+
730
+ ✅ CORRECT - Route to FALSE branch (when condition is NOT met):
731
+ ```json
732
+ {
733
+ "type": "addConnection",
734
+ "source": "if-node-id",
735
+ "target": "failure-handler-id",
736
+ "sourcePort": "main",
737
+ "targetPort": "main",
738
+ "branch": "false"
739
+ }
740
+ ```
741
+
742
+ **Common Pattern** - Complete IF node routing:
743
+ ```json
744
+ n8n_update_partial_workflow({
745
+ id: "workflow-id",
746
+ operations: [
747
+ {type: "addConnection", source: "If Node", target: "True Handler", sourcePort: "main", targetPort: "main", branch: "true"},
748
+ {type: "addConnection", source: "If Node", target: "False Handler", sourcePort: "main", targetPort: "main", branch: "false"}
749
+ ]
750
+ })
751
+ ```
752
+
753
+ **Note**: Without the `branch` parameter, both connections may end up on the same output, causing logic errors!
754
+
755
+ ### removeConnection Syntax
756
+
757
+ Use the same four-parameter format:
758
+ ```json
759
+ {
760
+ "type": "removeConnection",
761
+ "source": "source-node-id",
762
+ "target": "target-node-id",
763
+ "sourcePort": "main",
764
+ "targetPort": "main"
765
+ }
766
+ ```
767
+
669
768
  ## Example Workflow
670
769
 
671
770
  ### Template-First Approach
package/data/nodes.db CHANGED
Binary file
@@ -1 +1 @@
1
- {"version":3,"file":"http-server.d.ts","sourceRoot":"","sources":["../src/http-server.ts"],"names":[],"mappings":";AA+BA,wBAAgB,aAAa,IAAI,MAAM,GAAG,IAAI,CAsB7C;AA+DD,wBAAsB,oBAAoB,kBAoczC;AAGD,OAAO,QAAQ,cAAc,CAAC;IAC5B,UAAU,yBAAyB;QACjC,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;KACpD;CACF"}
1
+ {"version":3,"file":"http-server.d.ts","sourceRoot":"","sources":["../src/http-server.ts"],"names":[],"mappings":";AA0CA,wBAAgB,aAAa,IAAI,MAAM,GAAG,IAAI,CAsB7C;AA+DD,wBAAsB,oBAAoB,kBA+dzC;AAGD,OAAO,QAAQ,cAAc,CAAC;IAC5B,UAAU,yBAAyB;QACjC,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;KACpD;CACF"}
@@ -311,16 +311,30 @@ async function startFixedHTTPServer() {
311
311
  const toolArgs = jsonRpcRequest.params?.arguments || {};
312
312
  try {
313
313
  const result = await mcpServer.executeTool(toolName, toolArgs);
314
+ let responseText = JSON.stringify(result, null, 2);
315
+ const mcpResult = {
316
+ content: [
317
+ {
318
+ type: 'text',
319
+ text: responseText
320
+ }
321
+ ]
322
+ };
323
+ if (toolName.startsWith('validate_')) {
324
+ const resultSize = responseText.length;
325
+ if (resultSize > 1000000) {
326
+ logger_1.logger.warn(`Validation tool ${toolName} response is very large (${resultSize} chars). ` +
327
+ `Truncating for HTTP transport safety.`);
328
+ mcpResult.content[0].text = responseText.substring(0, 999000) +
329
+ '\n\n[Response truncated due to size limits]';
330
+ }
331
+ else {
332
+ mcpResult.structuredContent = result;
333
+ }
334
+ }
314
335
  response = {
315
336
  jsonrpc: '2.0',
316
- result: {
317
- content: [
318
- {
319
- type: 'text',
320
- text: JSON.stringify(result, null, 2)
321
- }
322
- ]
323
- },
337
+ result: mcpResult,
324
338
  id: jsonRpcRequest.id
325
339
  };
326
340
  }
@@ -1 +1 @@
1
- {"version":3,"file":"http-server.js","sourceRoot":"","sources":["../src/http-server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"http-server.js","sourceRoot":"","sources":["../src/http-server.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"handlers-workflow-diff.d.ts","sourceRoot":"","sources":["../../src/mcp/handlers-workflow-diff.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAMnD,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAuC5D,wBAAsB,2BAA2B,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,eAAe,CAAC,CAwHpH"}
1
+ {"version":3,"file":"handlers-workflow-diff.d.ts","sourceRoot":"","sources":["../../src/mcp/handlers-workflow-diff.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAMnD,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAwC5D,wBAAsB,2BAA2B,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,eAAe,CAAC,CAwMpH"}
@@ -6,6 +6,7 @@ const workflow_diff_engine_1 = require("../services/workflow-diff-engine");
6
6
  const handlers_n8n_manager_1 = require("./handlers-n8n-manager");
7
7
  const n8n_errors_1 = require("../utils/n8n-errors");
8
8
  const logger_1 = require("../utils/logger");
9
+ const n8n_validation_1 = require("../services/n8n-validation");
9
10
  const workflowDiffSchema = zod_1.z.object({
10
11
  id: zod_1.z.string(),
11
12
  operations: zod_1.z.array(zod_1.z.object({
@@ -98,6 +99,72 @@ async function handleUpdatePartialWorkflow(args, context) {
98
99
  }
99
100
  };
100
101
  }
102
+ if (diffResult.workflow) {
103
+ const structureErrors = (0, n8n_validation_1.validateWorkflowStructure)(diffResult.workflow);
104
+ if (structureErrors.length > 0) {
105
+ const skipValidation = process.env.SKIP_WORKFLOW_VALIDATION === 'true';
106
+ logger_1.logger.warn('Workflow structure validation failed after applying diff operations', {
107
+ workflowId: input.id,
108
+ errors: structureErrors,
109
+ blocking: !skipValidation
110
+ });
111
+ const errorTypes = new Set();
112
+ structureErrors.forEach(err => {
113
+ if (err.includes('operator') || err.includes('singleValue'))
114
+ errorTypes.add('operator_issues');
115
+ if (err.includes('connection') || err.includes('referenced'))
116
+ errorTypes.add('connection_issues');
117
+ if (err.includes('Missing') || err.includes('missing'))
118
+ errorTypes.add('missing_metadata');
119
+ if (err.includes('branch') || err.includes('output'))
120
+ errorTypes.add('branch_mismatch');
121
+ });
122
+ const recoverySteps = [];
123
+ if (errorTypes.has('operator_issues')) {
124
+ recoverySteps.push('Operator structure issue detected. Use validate_node_operation to check specific nodes.');
125
+ recoverySteps.push('Binary operators (equals, contains, greaterThan, etc.) must NOT have singleValue:true');
126
+ recoverySteps.push('Unary operators (isEmpty, isNotEmpty, true, false) REQUIRE singleValue:true');
127
+ }
128
+ if (errorTypes.has('connection_issues')) {
129
+ recoverySteps.push('Connection validation failed. Check all node connections reference existing nodes.');
130
+ recoverySteps.push('Use cleanStaleConnections operation to remove connections to non-existent nodes.');
131
+ }
132
+ if (errorTypes.has('missing_metadata')) {
133
+ recoverySteps.push('Missing metadata detected. Ensure filter-based nodes (IF v2.2+, Switch v3.2+) have complete conditions.options.');
134
+ recoverySteps.push('Required options: {version: 2, leftValue: "", caseSensitive: true, typeValidation: "strict"}');
135
+ }
136
+ if (errorTypes.has('branch_mismatch')) {
137
+ recoverySteps.push('Branch count mismatch. Ensure Switch nodes have outputs for all rules (e.g., 3 rules = 3 output branches).');
138
+ }
139
+ if (recoverySteps.length === 0) {
140
+ recoverySteps.push('Review the validation errors listed above');
141
+ recoverySteps.push('Fix issues using updateNode or cleanStaleConnections operations');
142
+ recoverySteps.push('Run validate_workflow again to verify fixes');
143
+ }
144
+ const errorMessage = structureErrors.length === 1
145
+ ? `Workflow validation failed: ${structureErrors[0]}`
146
+ : `Workflow validation failed with ${structureErrors.length} structural issues`;
147
+ if (!skipValidation) {
148
+ return {
149
+ success: false,
150
+ error: errorMessage,
151
+ details: {
152
+ errors: structureErrors,
153
+ errorCount: structureErrors.length,
154
+ operationsApplied: diffResult.operationsApplied,
155
+ applied: diffResult.applied,
156
+ recoveryGuidance: recoverySteps,
157
+ note: 'Operations were applied but created an invalid workflow structure. The workflow was NOT saved to n8n to prevent UI rendering errors.',
158
+ autoSanitizationNote: 'Auto-sanitization runs on all nodes during updates to fix operator structures and add missing metadata. However, it cannot fix all issues (e.g., broken connections, branch mismatches). Use the recovery guidance above to resolve remaining issues.'
159
+ }
160
+ };
161
+ }
162
+ logger_1.logger.info('Workflow validation skipped (SKIP_WORKFLOW_VALIDATION=true): Allowing workflow with validation warnings to proceed', {
163
+ workflowId: input.id,
164
+ warningCount: structureErrors.length
165
+ });
166
+ }
167
+ }
101
168
  try {
102
169
  const updatedWorkflow = await client.updateWorkflow(input.id, diffResult.workflow);
103
170
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"handlers-workflow-diff.js","sourceRoot":"","sources":["../../src/mcp/handlers-workflow-diff.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"handlers-workflow-diff.js","sourceRoot":"","sources":["../../src/mcp/handlers-workflow-diff.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"validate-node-operation.d.ts","sourceRoot":"","sources":["../../../../src/mcp/tool-docs/validation/validate-node-operation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAE7C,eAAO,MAAM,wBAAwB,EAAE,iBAyFtC,CAAC"}
1
+ {"version":3,"file":"validate-node-operation.d.ts","sourceRoot":"","sources":["../../../../src/mcp/tool-docs/validation/validate-node-operation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAE7C,eAAO,MAAM,wBAAwB,EAAE,iBA+FtC,CAAC"}
@@ -12,7 +12,8 @@ exports.validateNodeOperationDoc = {
12
12
  tips: [
13
13
  'Profile choices: minimal (editing), runtime (execution), ai-friendly (balanced), strict (deployment)',
14
14
  'Returns fixes you can apply directly',
15
- 'Operation-aware - knows Slack post needs text'
15
+ 'Operation-aware - knows Slack post needs text',
16
+ 'Validates operator structures for IF v2.2+ and Switch v3.2+ nodes'
16
17
  ]
17
18
  },
18
19
  full: {
@@ -72,7 +73,9 @@ exports.validateNodeOperationDoc = {
72
73
  'Validate configuration before workflow execution',
73
74
  'Debug why a node isn\'t working as expected',
74
75
  'Generate configuration fixes automatically',
75
- 'Different validation for editing vs production'
76
+ 'Different validation for editing vs production',
77
+ 'Check IF/Switch operator structures (binary vs unary operators)',
78
+ 'Validate conditions.options metadata for filter-based nodes'
76
79
  ],
77
80
  performance: '<100ms for most nodes, <200ms for complex nodes with many conditions',
78
81
  bestPractices: [
@@ -86,7 +89,10 @@ exports.validateNodeOperationDoc = {
86
89
  pitfalls: [
87
90
  'Must include operation fields for multi-operation nodes',
88
91
  'Fixes are suggestions - review before applying',
89
- 'Profile affects what\'s validated - minimal skips many checks'
92
+ 'Profile affects what\'s validated - minimal skips many checks',
93
+ '**Binary vs Unary operators**: Binary operators (equals, contains, greaterThan) must NOT have singleValue:true. Unary operators (isEmpty, isNotEmpty, true, false) REQUIRE singleValue:true',
94
+ '**IF v2.2+ and Switch v3.2+ nodes**: Must have complete conditions.options structure: {version: 2, leftValue: "", caseSensitive: true/false, typeValidation: "strict"}',
95
+ '**Operator type field**: Must be data type (string/number/boolean/dateTime/array/object), NOT operation name (e.g., use type:"string" operation:"equals", not type:"equals")'
90
96
  ],
91
97
  relatedTools: ['validate_node_minimal for quick checks', 'get_node_essentials for valid examples', 'validate_workflow for complete workflow validation']
92
98
  }
@@ -1 +1 @@
1
- {"version":3,"file":"validate-node-operation.js","sourceRoot":"","sources":["../../../../src/mcp/tool-docs/validation/validate-node-operation.ts"],"names":[],"mappings":";;;AAEa,QAAA,wBAAwB,GAAsB;IACzD,IAAI,EAAE,yBAAyB;IAC/B,QAAQ,EAAE,YAAY;IACtB,UAAU,EAAE;QACV,WAAW,EAAE,qOAAqO;QAClP,aAAa,EAAE,CAAC,UAAU,EAAE,QAAQ,EAAE,SAAS,CAAC;QAChD,OAAO,EAAE,uHAAuH;QAChI,WAAW,EAAE,QAAQ;QACrB,IAAI,EAAE;YACJ,sGAAsG;YACtG,sCAAsC;YACtC,+CAA+C;SAChD;KACF;IACD,IAAI,EAAE;QACJ,WAAW,EAAE,uQAAuQ;QACpR,UAAU,EAAE;YACV,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,0EAA0E,EAAE;YACrI,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,mHAAmH,EAAE;YAC5K,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,WAAW,EAAE,uEAAuE,EAAE;SACnI;QACD,OAAO,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA+BX;QACE,QAAQ,EAAE;YACR,2BAA2B;YAC3B,2GAA2G;YAC3G,2HAA2H;YAC3H,EAAE;YACF,gDAAgD;YAChD,4IAA4I;YAC5I,EAAE;YACF,8BAA8B;YAC9B,2FAA2F;YAC3F,wBAAwB;YACxB,8CAA8C;YAC9C,GAAG;SACJ;QACD,QAAQ,EAAE;YACR,kDAAkD;YAClD,6CAA6C;YAC7C,4CAA4C;YAC5C,gDAAgD;SACjD;QACD,WAAW,EAAE,sEAAsE;QACnF,aAAa,EAAE;YACb,6DAA6D;YAC7D,kDAAkD;YAClD,4CAA4C;YAC5C,mDAAmD;YACnD,gEAAgE;YAChE,iDAAiD;SAClD;QACD,QAAQ,EAAE;YACR,yDAAyD;YACzD,gDAAgD;YAChD,+DAA+D;SAChE;QACD,YAAY,EAAE,CAAC,wCAAwC,EAAE,wCAAwC,EAAE,oDAAoD,CAAC;KACzJ;CACF,CAAC"}
1
+ {"version":3,"file":"validate-node-operation.js","sourceRoot":"","sources":["../../../../src/mcp/tool-docs/validation/validate-node-operation.ts"],"names":[],"mappings":";;;AAEa,QAAA,wBAAwB,GAAsB;IACzD,IAAI,EAAE,yBAAyB;IAC/B,QAAQ,EAAE,YAAY;IACtB,UAAU,EAAE;QACV,WAAW,EAAE,qOAAqO;QAClP,aAAa,EAAE,CAAC,UAAU,EAAE,QAAQ,EAAE,SAAS,CAAC;QAChD,OAAO,EAAE,uHAAuH;QAChI,WAAW,EAAE,QAAQ;QACrB,IAAI,EAAE;YACJ,sGAAsG;YACtG,sCAAsC;YACtC,+CAA+C;YAC/C,mEAAmE;SACpE;KACF;IACD,IAAI,EAAE;QACJ,WAAW,EAAE,uQAAuQ;QACpR,UAAU,EAAE;YACV,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,0EAA0E,EAAE;YACrI,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,mHAAmH,EAAE;YAC5K,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,WAAW,EAAE,uEAAuE,EAAE;SACnI;QACD,OAAO,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA+BX;QACE,QAAQ,EAAE;YACR,2BAA2B;YAC3B,2GAA2G;YAC3G,2HAA2H;YAC3H,EAAE;YACF,gDAAgD;YAChD,4IAA4I;YAC5I,EAAE;YACF,8BAA8B;YAC9B,2FAA2F;YAC3F,wBAAwB;YACxB,8CAA8C;YAC9C,GAAG;SACJ;QACD,QAAQ,EAAE;YACR,kDAAkD;YAClD,6CAA6C;YAC7C,4CAA4C;YAC5C,gDAAgD;YAChD,iEAAiE;YACjE,6DAA6D;SAC9D;QACD,WAAW,EAAE,sEAAsE;QACnF,aAAa,EAAE;YACb,6DAA6D;YAC7D,kDAAkD;YAClD,4CAA4C;YAC5C,mDAAmD;YACnD,gEAAgE;YAChE,iDAAiD;SAClD;QACD,QAAQ,EAAE;YACR,yDAAyD;YACzD,gDAAgD;YAChD,+DAA+D;YAC/D,6LAA6L;YAC7L,wKAAwK;YACxK,8KAA8K;SAC/K;QACD,YAAY,EAAE,CAAC,wCAAwC,EAAE,wCAAwC,EAAE,oDAAoD,CAAC;KACzJ;CACF,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"validate-workflow.d.ts","sourceRoot":"","sources":["../../../../src/mcp/tool-docs/validation/validate-workflow.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAE7C,eAAO,MAAM,mBAAmB,EAAE,iBA8EjC,CAAC"}
1
+ {"version":3,"file":"validate-workflow.d.ts","sourceRoot":"","sources":["../../../../src/mcp/tool-docs/validation/validate-workflow.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAE7C,eAAO,MAAM,mBAAmB,EAAE,iBAiFjC,CAAC"}
@@ -12,7 +12,8 @@ exports.validateWorkflowDoc = {
12
12
  tips: [
13
13
  'Always validate before n8n_create_workflow to catch errors early',
14
14
  'Use options.profile="minimal" for quick checks during development',
15
- 'AI tool connections are automatically validated for proper node references'
15
+ 'AI tool connections are automatically validated for proper node references',
16
+ 'Detects operator structure issues (binary vs unary, singleValue requirements)'
16
17
  ]
17
18
  },
18
19
  full: {
@@ -68,7 +69,9 @@ exports.validateWorkflowDoc = {
68
69
  'Use minimal profile during development, strict profile before production',
69
70
  'Pay attention to warnings - they often indicate potential runtime issues',
70
71
  'Validate after any workflow modifications, especially connection changes',
71
- 'Check statistics to understand workflow complexity'
72
+ 'Check statistics to understand workflow complexity',
73
+ '**Auto-sanitization runs during create/update**: Operator structures and missing metadata are automatically fixed when workflows are created or updated, but validation helps catch issues before they reach n8n',
74
+ 'If validation detects operator issues, they will be auto-fixed during n8n_create_workflow or n8n_update_partial_workflow'
72
75
  ],
73
76
  pitfalls: [
74
77
  'Large workflows (100+ nodes) may take longer to validate',
@@ -1 +1 @@
1
- {"version":3,"file":"validate-workflow.js","sourceRoot":"","sources":["../../../../src/mcp/tool-docs/validation/validate-workflow.ts"],"names":[],"mappings":";;;AAEa,QAAA,mBAAmB,GAAsB;IACpD,IAAI,EAAE,mBAAmB;IACzB,QAAQ,EAAE,YAAY;IACtB,UAAU,EAAE;QACV,WAAW,EAAE,kIAAkI;QAC/I,aAAa,EAAE,CAAC,UAAU,EAAE,SAAS,CAAC;QACtC,OAAO,EAAE,mEAAmE;QAC5E,WAAW,EAAE,sBAAsB;QACnC,IAAI,EAAE;YACJ,kEAAkE;YAClE,mEAAmE;YACnE,4EAA4E;SAC7E;KACF;IACD,IAAI,EAAE;QACJ,WAAW,EAAE,oVAAoV;QACjW,UAAU,EAAE;YACV,QAAQ,EAAE;gBACR,IAAI,EAAE,QAAQ;gBACd,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE,0FAA0F;aACxG;YACD,OAAO,EAAE;gBACP,IAAI,EAAE,QAAQ;gBACd,QAAQ,EAAE,KAAK;gBACf,WAAW,EAAE,2BAA2B;aACzC;YACD,uBAAuB,EAAE;gBACvB,IAAI,EAAE,SAAS;gBACf,QAAQ,EAAE,KAAK;gBACf,WAAW,EAAE,wDAAwD;aACtE;YACD,6BAA6B,EAAE;gBAC7B,IAAI,EAAE,SAAS;gBACf,QAAQ,EAAE,KAAK;gBACf,WAAW,EAAE,mDAAmD;aACjE;YACD,6BAA6B,EAAE;gBAC7B,IAAI,EAAE,SAAS;gBACf,QAAQ,EAAE,KAAK;gBACf,WAAW,EAAE,+DAA+D;aAC7E;YACD,iBAAiB,EAAE;gBACjB,IAAI,EAAE,QAAQ;gBACd,QAAQ,EAAE,KAAK;gBACf,WAAW,EAAE,yFAAyF;aACvG;SACF;QACD,OAAO,EAAE,6GAA6G;QACtH,QAAQ,EAAE;YACR,mFAAmF;YACnF,yGAAyG;YACzG,+GAA+G;SAChH;QACD,QAAQ,EAAE;YACR,wDAAwD;YACxD,8CAA8C;YAC9C,6DAA6D;YAC7D,mDAAmD;YACnD,yDAAyD;SAC1D;QACD,WAAW,EAAE,8GAA8G;QAC3H,aAAa,EAAE;YACb,8DAA8D;YAC9D,0EAA0E;YAC1E,0EAA0E;YAC1E,0EAA0E;YAC1E,oDAAoD;SACrD;QACD,QAAQ,EAAE;YACR,0DAA0D;YAC1D,gEAAgE;YAChE,uDAAuD;YACvD,iEAAiE;YACjE,gFAAgF;SACjF;QACD,YAAY,EAAE,CAAC,+BAA+B,EAAE,+BAA+B,EAAE,yBAAyB,EAAE,qBAAqB,EAAE,6BAA6B,EAAE,sBAAsB,CAAC;KAC1L;CACF,CAAC"}
1
+ {"version":3,"file":"validate-workflow.js","sourceRoot":"","sources":["../../../../src/mcp/tool-docs/validation/validate-workflow.ts"],"names":[],"mappings":";;;AAEa,QAAA,mBAAmB,GAAsB;IACpD,IAAI,EAAE,mBAAmB;IACzB,QAAQ,EAAE,YAAY;IACtB,UAAU,EAAE;QACV,WAAW,EAAE,kIAAkI;QAC/I,aAAa,EAAE,CAAC,UAAU,EAAE,SAAS,CAAC;QACtC,OAAO,EAAE,mEAAmE;QAC5E,WAAW,EAAE,sBAAsB;QACnC,IAAI,EAAE;YACJ,kEAAkE;YAClE,mEAAmE;YACnE,4EAA4E;YAC5E,+EAA+E;SAChF;KACF;IACD,IAAI,EAAE;QACJ,WAAW,EAAE,oVAAoV;QACjW,UAAU,EAAE;YACV,QAAQ,EAAE;gBACR,IAAI,EAAE,QAAQ;gBACd,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE,0FAA0F;aACxG;YACD,OAAO,EAAE;gBACP,IAAI,EAAE,QAAQ;gBACd,QAAQ,EAAE,KAAK;gBACf,WAAW,EAAE,2BAA2B;aACzC;YACD,uBAAuB,EAAE;gBACvB,IAAI,EAAE,SAAS;gBACf,QAAQ,EAAE,KAAK;gBACf,WAAW,EAAE,wDAAwD;aACtE;YACD,6BAA6B,EAAE;gBAC7B,IAAI,EAAE,SAAS;gBACf,QAAQ,EAAE,KAAK;gBACf,WAAW,EAAE,mDAAmD;aACjE;YACD,6BAA6B,EAAE;gBAC7B,IAAI,EAAE,SAAS;gBACf,QAAQ,EAAE,KAAK;gBACf,WAAW,EAAE,+DAA+D;aAC7E;YACD,iBAAiB,EAAE;gBACjB,IAAI,EAAE,QAAQ;gBACd,QAAQ,EAAE,KAAK;gBACf,WAAW,EAAE,yFAAyF;aACvG;SACF;QACD,OAAO,EAAE,6GAA6G;QACtH,QAAQ,EAAE;YACR,mFAAmF;YACnF,yGAAyG;YACzG,+GAA+G;SAChH;QACD,QAAQ,EAAE;YACR,wDAAwD;YACxD,8CAA8C;YAC9C,6DAA6D;YAC7D,mDAAmD;YACnD,yDAAyD;SAC1D;QACD,WAAW,EAAE,8GAA8G;QAC3H,aAAa,EAAE;YACb,8DAA8D;YAC9D,0EAA0E;YAC1E,0EAA0E;YAC1E,0EAA0E;YAC1E,oDAAoD;YACpD,kNAAkN;YAClN,0HAA0H;SAC3H;QACD,QAAQ,EAAE;YACR,0DAA0D;YAC1D,gEAAgE;YAChE,uDAAuD;YACvD,iEAAiE;YACjE,gFAAgF;SACjF;QACD,YAAY,EAAE,CAAC,+BAA+B,EAAE,+BAA+B,EAAE,yBAAyB,EAAE,qBAAqB,EAAE,6BAA6B,EAAE,sBAAsB,CAAC;KAC1L;CACF,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"n8n-create-workflow.d.ts","sourceRoot":"","sources":["../../../../src/mcp/tool-docs/workflow_management/n8n-create-workflow.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAE7C,eAAO,MAAM,oBAAoB,EAAE,iBA8FlC,CAAC"}
1
+ {"version":3,"file":"n8n-create-workflow.d.ts","sourceRoot":"","sources":["../../../../src/mcp/tool-docs/workflow_management/n8n-create-workflow.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAE7C,eAAO,MAAM,oBAAoB,EAAE,iBAiGlC,CAAC"}
@@ -12,7 +12,8 @@ exports.n8nCreateWorkflowDoc = {
12
12
  tips: [
13
13
  'Workflow created inactive',
14
14
  'Returns ID for future updates',
15
- 'Validate first with validate_workflow'
15
+ 'Validate first with validate_workflow',
16
+ 'Auto-sanitization fixes operator structures and missing metadata during creation'
16
17
  ]
17
18
  },
18
19
  full: {
@@ -91,7 +92,9 @@ n8n_create_workflow({
91
92
  'Workflows created in INACTIVE state - must activate separately',
92
93
  'Node IDs must be unique within workflow',
93
94
  'Credentials must be configured separately in n8n',
94
- 'Node type names must include package prefix (e.g., "n8n-nodes-base.slack")'
95
+ 'Node type names must include package prefix (e.g., "n8n-nodes-base.slack")',
96
+ '**Auto-sanitization runs on creation**: All nodes sanitized before workflow created (operator structures fixed, missing metadata added)',
97
+ '**Auto-sanitization cannot prevent all failures**: Broken connections or invalid node configurations may still cause creation to fail'
95
98
  ],
96
99
  relatedTools: ['validate_workflow', 'n8n_update_partial_workflow', 'n8n_trigger_webhook_workflow']
97
100
  }
@@ -1 +1 @@
1
- {"version":3,"file":"n8n-create-workflow.js","sourceRoot":"","sources":["../../../../src/mcp/tool-docs/workflow_management/n8n-create-workflow.ts"],"names":[],"mappings":";;;AAEa,QAAA,oBAAoB,GAAsB;IACrD,IAAI,EAAE,qBAAqB;IAC3B,QAAQ,EAAE,qBAAqB;IAC/B,UAAU,EAAE;QACV,WAAW,EAAE,sGAAsG;QACnH,aAAa,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,aAAa,CAAC;QAC/C,OAAO,EAAE,0EAA0E;QACnF,WAAW,EAAE,mBAAmB;QAChC,IAAI,EAAE;YACJ,2BAA2B;YAC3B,+BAA+B;YAC/B,uCAAuC;SACxC;KACF;IACD,IAAI,EAAE;QACJ,WAAW,EAAE,uLAAuL;QACpM,UAAU,EAAE;YACV,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,eAAe,EAAE;YACtE,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,uEAAuE,EAAE;YAC9H,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,4CAA4C,EAAE;YAC1G,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,6DAA6D,EAAE;SACzG;QACD,OAAO,EAAE,0EAA0E;QACnF,QAAQ,EAAE;YACR;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCH;YACG;;;;;;;;;;;GAWH;SACE;QACD,QAAQ,EAAE;YACR,4BAA4B;YAC5B,4BAA4B;YAC5B,2BAA2B;YAC3B,qBAAqB;SACtB;QACD,WAAW,EAAE,oEAAoE;QACjF,aAAa,EAAE;YACb,uCAAuC;YACvC,qBAAqB;YACrB,gCAAgC;YAChC,wCAAwC;SACzC;QACD,QAAQ,EAAE;YACR,0GAA0G;YAC1G,gEAAgE;YAChE,yCAAyC;YACzC,kDAAkD;YAClD,4EAA4E;SAC7E;QACD,YAAY,EAAE,CAAC,mBAAmB,EAAE,6BAA6B,EAAE,8BAA8B,CAAC;KACnG;CACF,CAAC"}
1
+ {"version":3,"file":"n8n-create-workflow.js","sourceRoot":"","sources":["../../../../src/mcp/tool-docs/workflow_management/n8n-create-workflow.ts"],"names":[],"mappings":";;;AAEa,QAAA,oBAAoB,GAAsB;IACrD,IAAI,EAAE,qBAAqB;IAC3B,QAAQ,EAAE,qBAAqB;IAC/B,UAAU,EAAE;QACV,WAAW,EAAE,sGAAsG;QACnH,aAAa,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,aAAa,CAAC;QAC/C,OAAO,EAAE,0EAA0E;QACnF,WAAW,EAAE,mBAAmB;QAChC,IAAI,EAAE;YACJ,2BAA2B;YAC3B,+BAA+B;YAC/B,uCAAuC;YACvC,kFAAkF;SACnF;KACF;IACD,IAAI,EAAE;QACJ,WAAW,EAAE,uLAAuL;QACpM,UAAU,EAAE;YACV,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,eAAe,EAAE;YACtE,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,uEAAuE,EAAE;YAC9H,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,4CAA4C,EAAE;YAC1G,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,6DAA6D,EAAE;SACzG;QACD,OAAO,EAAE,0EAA0E;QACnF,QAAQ,EAAE;YACR;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCH;YACG;;;;;;;;;;;GAWH;SACE;QACD,QAAQ,EAAE;YACR,4BAA4B;YAC5B,4BAA4B;YAC5B,2BAA2B;YAC3B,qBAAqB;SACtB;QACD,WAAW,EAAE,oEAAoE;QACjF,aAAa,EAAE;YACb,uCAAuC;YACvC,qBAAqB;YACrB,gCAAgC;YAChC,wCAAwC;SACzC;QACD,QAAQ,EAAE;YACR,0GAA0G;YAC1G,gEAAgE;YAChE,yCAAyC;YACzC,kDAAkD;YAClD,4EAA4E;YAC5E,yIAAyI;YACzI,uIAAuI;SACxI;QACD,YAAY,EAAE,CAAC,mBAAmB,EAAE,6BAA6B,EAAE,8BAA8B,CAAC;KACnG;CACF,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"n8n-update-partial-workflow.d.ts","sourceRoot":"","sources":["../../../../src/mcp/tool-docs/workflow_management/n8n-update-partial-workflow.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAE7C,eAAO,MAAM,2BAA2B,EAAE,iBAyLzC,CAAC"}
1
+ {"version":3,"file":"n8n-update-partial-workflow.d.ts","sourceRoot":"","sources":["../../../../src/mcp/tool-docs/workflow_management/n8n-update-partial-workflow.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAE7C,eAAO,MAAM,2BAA2B,EAAE,iBAgOzC,CAAC"}
@@ -18,7 +18,8 @@ exports.n8nUpdatePartialWorkflowDoc = {
18
18
  'Use continueOnError mode for best-effort bulk operations',
19
19
  'Validate with validateOnly first',
20
20
  'For AI connections, specify sourceOutput type (ai_languageModel, ai_tool, etc.)',
21
- 'Batch AI component connections for atomic updates'
21
+ 'Batch AI component connections for atomic updates',
22
+ 'Auto-sanitization: ALL nodes auto-fixed during updates (operator structures, missing metadata)'
22
23
  ]
23
24
  },
24
25
  full: {
@@ -95,7 +96,41 @@ The **cleanStaleConnections** operation automatically removes broken connection
95
96
  Set **continueOnError: true** to apply valid operations even if some fail. Returns detailed results showing which operations succeeded/failed. Perfect for bulk cleanup operations.
96
97
 
97
98
  ### Graceful Error Handling
98
- Add **ignoreErrors: true** to removeConnection operations to prevent failures when connections don't exist.`,
99
+ Add **ignoreErrors: true** to removeConnection operations to prevent failures when connections don't exist.
100
+
101
+ ## Auto-Sanitization System
102
+
103
+ ### What Gets Auto-Fixed
104
+ When ANY workflow update is made, ALL nodes in the workflow are automatically sanitized to ensure complete metadata and correct structure:
105
+
106
+ 1. **Operator Structure Fixes**:
107
+ - Binary operators (equals, contains, greaterThan, etc.) automatically have \`singleValue\` removed
108
+ - Unary operators (isEmpty, isNotEmpty, true, false) automatically get \`singleValue: true\` added
109
+ - Invalid operator structures (e.g., \`{type: "isNotEmpty"}\`) are corrected to \`{type: "boolean", operation: "isNotEmpty"}\`
110
+
111
+ 2. **Missing Metadata Added**:
112
+ - IF v2.2+ nodes get complete \`conditions.options\` structure if missing
113
+ - Switch v3.2+ nodes get complete \`conditions.options\` for all rules
114
+ - Required fields: \`{version: 2, leftValue: "", caseSensitive: true, typeValidation: "strict"}\`
115
+
116
+ ### Sanitization Scope
117
+ - Runs on **ALL nodes** in the workflow, not just modified ones
118
+ - Triggered by ANY update operation (addNode, updateNode, addConnection, etc.)
119
+ - Prevents workflow corruption that would make UI unrenderable
120
+
121
+ ### Limitations
122
+ Auto-sanitization CANNOT fix:
123
+ - Broken connections (connections referencing non-existent nodes) - use \`cleanStaleConnections\`
124
+ - Branch count mismatches (e.g., Switch with 3 rules but only 2 outputs) - requires manual connection fixes
125
+ - Workflows in paradoxical corrupt states (API returns corrupt data, API rejects updates) - must recreate workflow
126
+
127
+ ### Recovery Guidance
128
+ If validation still fails after auto-sanitization:
129
+ 1. Check error details for specific issues
130
+ 2. Use \`validate_workflow\` to see all validation errors
131
+ 3. For connection issues, use \`cleanStaleConnections\` operation
132
+ 4. For branch mismatches, add missing output connections
133
+ 5. For paradoxical corrupted workflows, create new workflow and migrate nodes`,
99
134
  parameters: {
100
135
  id: { type: 'string', required: true, description: 'Workflow ID to update' },
101
136
  operations: {
@@ -182,7 +217,11 @@ Add **ignoreErrors: true** to removeConnection operations to prevent failures wh
182
217
  'Smart parameters (branch, case) only work with IF and Switch nodes - ignored for other node types',
183
218
  'Explicit sourceIndex overrides smart parameters (branch, case) if both provided',
184
219
  'cleanStaleConnections removes ALL broken connections - cannot be selective',
185
- 'replaceConnections overwrites entire connections object - all previous connections lost'
220
+ 'replaceConnections overwrites entire connections object - all previous connections lost',
221
+ '**Auto-sanitization behavior**: Binary operators (equals, contains) automatically have singleValue removed; unary operators (isEmpty, isNotEmpty) automatically get singleValue:true added',
222
+ '**Auto-sanitization runs on ALL nodes**: When ANY update is made, ALL nodes in the workflow are sanitized (not just modified ones)',
223
+ '**Auto-sanitization cannot fix everything**: It fixes operator structures and missing metadata, but cannot fix broken connections or branch mismatches',
224
+ '**Corrupted workflows beyond repair**: Workflows in paradoxical states (API returns corrupt, API rejects updates) cannot be fixed via API - must be recreated'
186
225
  ],
187
226
  relatedTools: ['n8n_update_full_workflow', 'n8n_get_workflow', 'validate_workflow', 'tools_documentation']
188
227
  }
@@ -1 +1 @@
1
- {"version":3,"file":"n8n-update-partial-workflow.js","sourceRoot":"","sources":["../../../../src/mcp/tool-docs/workflow_management/n8n-update-partial-workflow.ts"],"names":[],"mappings":";;;AAEa,QAAA,2BAA2B,GAAsB;IAC5D,IAAI,EAAE,6BAA6B;IACnC,QAAQ,EAAE,qBAAqB;IAC/B,UAAU,EAAE;QACV,WAAW,EAAE,0dAA0d;QACve,aAAa,EAAE,CAAC,IAAI,EAAE,YAAY,EAAE,iBAAiB,CAAC;QACtD,OAAO,EAAE,6IAA6I;QACtJ,WAAW,EAAE,iBAAiB;QAC9B,IAAI,EAAE;YACJ,mDAAmD;YACnD,wCAAwC;YACxC,6BAA6B;YAC7B,6DAA6D;YAC7D,uDAAuD;YACvD,0DAA0D;YAC1D,kCAAkC;YAClC,iFAAiF;YACjF,mDAAmD;SACpD;KACF;IACD,IAAI,EAAE;QACJ,WAAW,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4GAyE2F;QACxG,UAAU,EAAE;YACV,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,uBAAuB,EAAE;YAC5E,UAAU,EAAE;gBACV,IAAI,EAAE,OAAO;gBACb,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE,iIAAiI;aAC/I;YACD,YAAY,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,yDAAyD,EAAE;YACzG,eAAe,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,6IAA6I,EAAE;SACjM;QACD,OAAO,EAAE,oEAAoE;QAC7E,QAAQ,EAAE;YACR,wNAAwN;YACxN,kTAAkT;YAClT,0VAA0V;YAC1V,gMAAgM;YAChM,mLAAmL;YACnL,mLAAmL;YACnL,6UAA6U;YAC7U,oMAAoM;YACpM,oYAAoY;YACpY,qJAAqJ;YACrJ,+MAA+M;YAC/M,kSAAkS;YAClS,0LAA0L;YAC1L,wJAAwJ;YACxJ,uDAAuD;YACvD,2MAA2M;YAC3M,wLAAwL;YACxL,+LAA+L;YAC/L,gNAAgN;YAChN,4hBAA4hB;YAC5hB,gXAAgX;YAChX,qWAAqW;YACrW,uVAAuV;YACvV,qPAAqP;YACrP,0eAA0e;SAC3e;QACD,QAAQ,EAAE;YACR,yCAAyC;YACzC,uDAAuD;YACvD,wDAAwD;YACxD,+CAA+C;YAC/C,+BAA+B;YAC/B,iCAAiC;YACjC,8CAA8C;YAC9C,sBAAsB;YACtB,2BAA2B;YAC3B,yBAAyB;YACzB,iEAAiE;YACjE,+CAA+C;YAC/C,2CAA2C;YAC3C,0CAA0C;YAC1C,+CAA+C;YAC/C,kCAAkC;SACnC;QACD,WAAW,EAAE,8FAA8F;QAC3G,aAAa,EAAE;YACb,iEAAiE;YACjE,+DAA+D;YAC/D,oDAAoD;YACpD,yDAAyD;YACzD,iDAAiD;YACjD,gEAAgE;YAChE,qDAAqD;YACrD,mCAAmC;YACnC,wCAAwC;YACxC,gDAAgD;YAChD,8FAA8F;YAC9F,2EAA2E;YAC3E,6DAA6D;YAC7D,oEAAoE;YACpE,8EAA8E;SAC/E;QACD,QAAQ,EAAE;YACR,uGAAuG;YACvG,wEAAwE;YACxE,6DAA6D;YAC7D,sFAAsF;YACtF,4DAA4D;YAC5D,yEAAyE;YACzE,yFAAyF;YACzF,wFAAwF;YACxF,mGAAmG;YACnG,iFAAiF;YACjF,4EAA4E;YAC5E,yFAAyF;SAC1F;QACD,YAAY,EAAE,CAAC,0BAA0B,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,qBAAqB,CAAC;KAC3G;CACF,CAAC"}
1
+ {"version":3,"file":"n8n-update-partial-workflow.js","sourceRoot":"","sources":["../../../../src/mcp/tool-docs/workflow_management/n8n-update-partial-workflow.ts"],"names":[],"mappings":";;;AAEa,QAAA,2BAA2B,GAAsB;IAC5D,IAAI,EAAE,6BAA6B;IACnC,QAAQ,EAAE,qBAAqB;IAC/B,UAAU,EAAE;QACV,WAAW,EAAE,0dAA0d;QACve,aAAa,EAAE,CAAC,IAAI,EAAE,YAAY,EAAE,iBAAiB,CAAC;QACtD,OAAO,EAAE,6IAA6I;QACtJ,WAAW,EAAE,iBAAiB;QAC9B,IAAI,EAAE;YACJ,mDAAmD;YACnD,wCAAwC;YACxC,6BAA6B;YAC7B,6DAA6D;YAC7D,uDAAuD;YACvD,0DAA0D;YAC1D,kCAAkC;YAClC,iFAAiF;YACjF,mDAAmD;YACnD,gGAAgG;SACjG;KACF;IACD,IAAI,EAAE;QACJ,WAAW,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8EA2G6D;QAC1E,UAAU,EAAE;YACV,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,uBAAuB,EAAE;YAC5E,UAAU,EAAE;gBACV,IAAI,EAAE,OAAO;gBACb,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE,iIAAiI;aAC/I;YACD,YAAY,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,yDAAyD,EAAE;YACzG,eAAe,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,6IAA6I,EAAE;SACjM;QACD,OAAO,EAAE,oEAAoE;QAC7E,QAAQ,EAAE;YACR,wNAAwN;YACxN,kTAAkT;YAClT,0VAA0V;YAC1V,gMAAgM;YAChM,mLAAmL;YACnL,mLAAmL;YACnL,6UAA6U;YAC7U,oMAAoM;YACpM,oYAAoY;YACpY,qJAAqJ;YACrJ,+MAA+M;YAC/M,kSAAkS;YAClS,0LAA0L;YAC1L,wJAAwJ;YACxJ,uDAAuD;YACvD,2MAA2M;YAC3M,wLAAwL;YACxL,+LAA+L;YAC/L,gNAAgN;YAChN,4hBAA4hB;YAC5hB,gXAAgX;YAChX,qWAAqW;YACrW,uVAAuV;YACvV,qPAAqP;YACrP,0eAA0e;SAC3e;QACD,QAAQ,EAAE;YACR,yCAAyC;YACzC,uDAAuD;YACvD,wDAAwD;YACxD,+CAA+C;YAC/C,+BAA+B;YAC/B,iCAAiC;YACjC,8CAA8C;YAC9C,sBAAsB;YACtB,2BAA2B;YAC3B,yBAAyB;YACzB,iEAAiE;YACjE,+CAA+C;YAC/C,2CAA2C;YAC3C,0CAA0C;YAC1C,+CAA+C;YAC/C,kCAAkC;SACnC;QACD,WAAW,EAAE,8FAA8F;QAC3G,aAAa,EAAE;YACb,iEAAiE;YACjE,+DAA+D;YAC/D,oDAAoD;YACpD,yDAAyD;YACzD,iDAAiD;YACjD,gEAAgE;YAChE,qDAAqD;YACrD,mCAAmC;YACnC,wCAAwC;YACxC,gDAAgD;YAChD,8FAA8F;YAC9F,2EAA2E;YAC3E,6DAA6D;YAC7D,oEAAoE;YACpE,8EAA8E;SAC/E;QACD,QAAQ,EAAE;YACR,uGAAuG;YACvG,wEAAwE;YACxE,6DAA6D;YAC7D,sFAAsF;YACtF,4DAA4D;YAC5D,yEAAyE;YACzE,yFAAyF;YACzF,wFAAwF;YACxF,mGAAmG;YACnG,iFAAiF;YACjF,4EAA4E;YAC5E,yFAAyF;YACzF,4LAA4L;YAC5L,oIAAoI;YACpI,wJAAwJ;YACxJ,+JAA+J;SAChK;QACD,YAAY,EAAE,CAAC,0BAA0B,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,qBAAqB,CAAC;KAC3G;CACF,CAAC"}
@@ -124,6 +124,8 @@ export declare function cleanWorkflowForCreate(workflow: Partial<Workflow>): Par
124
124
  export declare function cleanWorkflowForUpdate(workflow: Workflow): Partial<Workflow>;
125
125
  export declare function validateWorkflowStructure(workflow: Partial<Workflow>): string[];
126
126
  export declare function hasWebhookTrigger(workflow: Workflow): boolean;
127
+ export declare function validateFilterBasedNodeMetadata(node: WorkflowNode): string[];
128
+ export declare function validateOperatorStructure(operator: any, path: string): string[];
127
129
  export declare function getWebhookUrl(workflow: Workflow): string | null;
128
130
  export declare function getWorkflowStructureExample(): string;
129
131
  export declare function getWorkflowFixSuggestions(errors: string[]): string[];
@@ -1 +1 @@
1
- {"version":3,"file":"n8n-validation.d.ts","sourceRoot":"","sources":["../../src/services/n8n-validation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAI9E,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAiB7B,CAAC;AAEH,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;GAYpC,CAAC;AAEF,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAUjC,CAAC;AAGH,eAAO,MAAM,uBAAuB;;;;;;CAMnC,CAAC;AAGF,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,OAAO,GAAG,YAAY,CAEhE;AAED,wBAAgB,2BAA2B,CAAC,WAAW,EAAE,OAAO,GAAG,kBAAkB,CAEpF;AAED,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAElG;AAGD,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,CAqBrF;AAkBD,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,CAqE5E;AAGD,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAC,GAAG,MAAM,EAAE,CAuG/E;AAGD,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAK7D;AAGD,wBAAgB,aAAa,CAAC,QAAQ,EAAE,QAAQ,GAAG,MAAM,GAAG,IAAI,CAmB/D;AAGD,wBAAgB,2BAA2B,IAAI,MAAM,CA6CpD;AAGD,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAmBpE"}
1
+ {"version":3,"file":"n8n-validation.d.ts","sourceRoot":"","sources":["../../src/services/n8n-validation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAI9E,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAiB7B,CAAC;AAEH,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;GAYpC,CAAC;AAEF,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAUjC,CAAC;AAGH,eAAO,MAAM,uBAAuB;;;;;;CAMnC,CAAC;AAGF,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,OAAO,GAAG,YAAY,CAEhE;AAED,wBAAgB,2BAA2B,CAAC,WAAW,EAAE,OAAO,GAAG,kBAAkB,CAEpF;AAED,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAElG;AAGD,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,CAqBrF;AAkBD,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,CAqE5E;AAGD,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAC,GAAG,MAAM,EAAE,CAuN/E;AAGD,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAK7D;AAMD,wBAAgB,+BAA+B,CAAC,IAAI,EAAE,YAAY,GAAG,MAAM,EAAE,CA+F5E;AAMD,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CA0D/E;AAGD,wBAAgB,aAAa,CAAC,QAAQ,EAAE,QAAQ,GAAG,MAAM,GAAG,IAAI,CAmB/D;AAGD,wBAAgB,2BAA2B,IAAI,MAAM,CA6CpD;AAGD,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAmBpE"}