n8n-mcp 2.26.1 → 2.26.2

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 (160) hide show
  1. package/dist/mcp/tool-docs/configuration/get-node.d.ts +3 -0
  2. package/dist/mcp/tool-docs/configuration/get-node.d.ts.map +1 -0
  3. package/dist/mcp/tool-docs/configuration/get-node.js +92 -0
  4. package/dist/mcp/tool-docs/configuration/get-node.js.map +1 -0
  5. package/dist/mcp/tool-docs/configuration/index.d.ts +1 -6
  6. package/dist/mcp/tool-docs/configuration/index.d.ts.map +1 -1
  7. package/dist/mcp/tool-docs/configuration/index.js +3 -13
  8. package/dist/mcp/tool-docs/configuration/index.js.map +1 -1
  9. package/dist/mcp/tool-docs/discovery/index.d.ts +0 -3
  10. package/dist/mcp/tool-docs/discovery/index.d.ts.map +1 -1
  11. package/dist/mcp/tool-docs/discovery/index.js +1 -7
  12. package/dist/mcp/tool-docs/discovery/index.js.map +1 -1
  13. package/dist/mcp/tool-docs/discovery/search-nodes.js +1 -1
  14. package/dist/mcp/tool-docs/discovery/search-nodes.js.map +1 -1
  15. package/dist/mcp/tool-docs/guides/ai-agents-guide.d.ts.map +1 -1
  16. package/dist/mcp/tool-docs/guides/ai-agents-guide.js +2 -3
  17. package/dist/mcp/tool-docs/guides/ai-agents-guide.js.map +1 -1
  18. package/dist/mcp/tool-docs/index.d.ts.map +1 -1
  19. package/dist/mcp/tool-docs/index.js +3 -23
  20. package/dist/mcp/tool-docs/index.js.map +1 -1
  21. package/dist/mcp/tool-docs/system/tools-documentation.js +1 -1
  22. package/dist/mcp/tool-docs/system/tools-documentation.js.map +1 -1
  23. package/dist/mcp/tool-docs/templates/get-template.js +4 -4
  24. package/dist/mcp/tool-docs/templates/get-template.js.map +1 -1
  25. package/dist/mcp/tool-docs/templates/index.d.ts +0 -4
  26. package/dist/mcp/tool-docs/templates/index.d.ts.map +1 -1
  27. package/dist/mcp/tool-docs/templates/index.js +1 -9
  28. package/dist/mcp/tool-docs/templates/index.js.map +1 -1
  29. package/dist/mcp/tool-docs/templates/search-templates.d.ts.map +1 -1
  30. package/dist/mcp/tool-docs/templates/search-templates.js +102 -48
  31. package/dist/mcp/tool-docs/templates/search-templates.js.map +1 -1
  32. package/dist/mcp/tool-docs/validation/index.d.ts +1 -4
  33. package/dist/mcp/tool-docs/validation/index.d.ts.map +1 -1
  34. package/dist/mcp/tool-docs/validation/index.js +3 -9
  35. package/dist/mcp/tool-docs/validation/index.js.map +1 -1
  36. package/dist/mcp/tool-docs/validation/validate-node.d.ts +3 -0
  37. package/dist/mcp/tool-docs/validation/validate-node.d.ts.map +1 -0
  38. package/dist/mcp/tool-docs/validation/validate-node.js +84 -0
  39. package/dist/mcp/tool-docs/validation/validate-node.js.map +1 -0
  40. package/dist/mcp/tool-docs/validation/validate-workflow.js +1 -1
  41. package/dist/mcp/tool-docs/validation/validate-workflow.js.map +1 -1
  42. package/dist/mcp/tool-docs/workflow_management/index.d.ts +1 -6
  43. package/dist/mcp/tool-docs/workflow_management/index.d.ts.map +1 -1
  44. package/dist/mcp/tool-docs/workflow_management/index.js +3 -13
  45. package/dist/mcp/tool-docs/workflow_management/index.js.map +1 -1
  46. package/dist/mcp/tool-docs/workflow_management/n8n-autofix-workflow.d.ts.map +1 -1
  47. package/dist/mcp/tool-docs/workflow_management/n8n-autofix-workflow.js +2 -3
  48. package/dist/mcp/tool-docs/workflow_management/n8n-autofix-workflow.js.map +1 -1
  49. package/dist/mcp/tool-docs/workflow_management/n8n-delete-workflow.js +1 -1
  50. package/dist/mcp/tool-docs/workflow_management/n8n-delete-workflow.js.map +1 -1
  51. package/dist/mcp/tool-docs/workflow_management/n8n-executions.d.ts +3 -0
  52. package/dist/mcp/tool-docs/workflow_management/n8n-executions.d.ts.map +1 -0
  53. package/dist/mcp/tool-docs/workflow_management/n8n-executions.js +86 -0
  54. package/dist/mcp/tool-docs/workflow_management/n8n-executions.js.map +1 -0
  55. package/dist/mcp/tool-docs/workflow_management/n8n-get-workflow.d.ts.map +1 -1
  56. package/dist/mcp/tool-docs/workflow_management/n8n-get-workflow.js +44 -25
  57. package/dist/mcp/tool-docs/workflow_management/n8n-get-workflow.js.map +1 -1
  58. package/dist/mcp/tool-docs/workflow_management/n8n-list-workflows.js +1 -1
  59. package/dist/mcp/tool-docs/workflow_management/n8n-list-workflows.js.map +1 -1
  60. package/dist/mcp/tool-docs/workflow_management/n8n-trigger-webhook-workflow.js +8 -8
  61. package/dist/mcp/tool-docs/workflow_management/n8n-trigger-webhook-workflow.js.map +1 -1
  62. package/dist/mcp/tools-documentation.d.ts.map +1 -1
  63. package/dist/mcp/tools-documentation.js +39 -34
  64. package/dist/mcp/tools-documentation.js.map +1 -1
  65. package/dist/mcp/tools-n8n-friendly.d.ts.map +1 -1
  66. package/dist/mcp/tools-n8n-friendly.js +20 -62
  67. package/dist/mcp/tools-n8n-friendly.js.map +1 -1
  68. package/package.json +1 -1
  69. package/dist/mcp/tool-docs/configuration/get-node-as-tool-info.d.ts +0 -3
  70. package/dist/mcp/tool-docs/configuration/get-node-as-tool-info.d.ts.map +0 -1
  71. package/dist/mcp/tool-docs/configuration/get-node-as-tool-info.js +0 -73
  72. package/dist/mcp/tool-docs/configuration/get-node-as-tool-info.js.map +0 -1
  73. package/dist/mcp/tool-docs/configuration/get-node-documentation.d.ts +0 -3
  74. package/dist/mcp/tool-docs/configuration/get-node-documentation.d.ts.map +0 -1
  75. package/dist/mcp/tool-docs/configuration/get-node-documentation.js +0 -47
  76. package/dist/mcp/tool-docs/configuration/get-node-documentation.js.map +0 -1
  77. package/dist/mcp/tool-docs/configuration/get-node-essentials.d.ts +0 -3
  78. package/dist/mcp/tool-docs/configuration/get-node-essentials.d.ts.map +0 -1
  79. package/dist/mcp/tool-docs/configuration/get-node-essentials.js +0 -88
  80. package/dist/mcp/tool-docs/configuration/get-node-essentials.js.map +0 -1
  81. package/dist/mcp/tool-docs/configuration/get-node-info.d.ts +0 -3
  82. package/dist/mcp/tool-docs/configuration/get-node-info.d.ts.map +0 -1
  83. package/dist/mcp/tool-docs/configuration/get-node-info.js +0 -100
  84. package/dist/mcp/tool-docs/configuration/get-node-info.js.map +0 -1
  85. package/dist/mcp/tool-docs/configuration/get-property-dependencies.d.ts +0 -3
  86. package/dist/mcp/tool-docs/configuration/get-property-dependencies.d.ts.map +0 -1
  87. package/dist/mcp/tool-docs/configuration/get-property-dependencies.js +0 -81
  88. package/dist/mcp/tool-docs/configuration/get-property-dependencies.js.map +0 -1
  89. package/dist/mcp/tool-docs/configuration/search-node-properties.d.ts +0 -3
  90. package/dist/mcp/tool-docs/configuration/search-node-properties.d.ts.map +0 -1
  91. package/dist/mcp/tool-docs/configuration/search-node-properties.js +0 -99
  92. package/dist/mcp/tool-docs/configuration/search-node-properties.js.map +0 -1
  93. package/dist/mcp/tool-docs/discovery/get-database-statistics.d.ts +0 -3
  94. package/dist/mcp/tool-docs/discovery/get-database-statistics.d.ts.map +0 -1
  95. package/dist/mcp/tool-docs/discovery/get-database-statistics.js +0 -69
  96. package/dist/mcp/tool-docs/discovery/get-database-statistics.js.map +0 -1
  97. package/dist/mcp/tool-docs/discovery/list-ai-tools.d.ts +0 -3
  98. package/dist/mcp/tool-docs/discovery/list-ai-tools.d.ts.map +0 -1
  99. package/dist/mcp/tool-docs/discovery/list-ai-tools.js +0 -53
  100. package/dist/mcp/tool-docs/discovery/list-ai-tools.js.map +0 -1
  101. package/dist/mcp/tool-docs/discovery/list-nodes.d.ts +0 -3
  102. package/dist/mcp/tool-docs/discovery/list-nodes.d.ts.map +0 -1
  103. package/dist/mcp/tool-docs/discovery/list-nodes.js +0 -54
  104. package/dist/mcp/tool-docs/discovery/list-nodes.js.map +0 -1
  105. package/dist/mcp/tool-docs/templates/get-templates-for-task.d.ts +0 -3
  106. package/dist/mcp/tool-docs/templates/get-templates-for-task.d.ts.map +0 -1
  107. package/dist/mcp/tool-docs/templates/get-templates-for-task.js +0 -76
  108. package/dist/mcp/tool-docs/templates/get-templates-for-task.js.map +0 -1
  109. package/dist/mcp/tool-docs/templates/list-node-templates.d.ts +0 -3
  110. package/dist/mcp/tool-docs/templates/list-node-templates.d.ts.map +0 -1
  111. package/dist/mcp/tool-docs/templates/list-node-templates.js +0 -80
  112. package/dist/mcp/tool-docs/templates/list-node-templates.js.map +0 -1
  113. package/dist/mcp/tool-docs/templates/list-tasks.d.ts +0 -3
  114. package/dist/mcp/tool-docs/templates/list-tasks.d.ts.map +0 -1
  115. package/dist/mcp/tool-docs/templates/list-tasks.js +0 -48
  116. package/dist/mcp/tool-docs/templates/list-tasks.js.map +0 -1
  117. package/dist/mcp/tool-docs/templates/search-templates-by-metadata.d.ts +0 -3
  118. package/dist/mcp/tool-docs/templates/search-templates-by-metadata.d.ts.map +0 -1
  119. package/dist/mcp/tool-docs/templates/search-templates-by-metadata.js +0 -120
  120. package/dist/mcp/tool-docs/templates/search-templates-by-metadata.js.map +0 -1
  121. package/dist/mcp/tool-docs/validation/validate-node-minimal.d.ts +0 -3
  122. package/dist/mcp/tool-docs/validation/validate-node-minimal.d.ts.map +0 -1
  123. package/dist/mcp/tool-docs/validation/validate-node-minimal.js +0 -49
  124. package/dist/mcp/tool-docs/validation/validate-node-minimal.js.map +0 -1
  125. package/dist/mcp/tool-docs/validation/validate-node-operation.d.ts +0 -3
  126. package/dist/mcp/tool-docs/validation/validate-node-operation.d.ts.map +0 -1
  127. package/dist/mcp/tool-docs/validation/validate-node-operation.js +0 -100
  128. package/dist/mcp/tool-docs/validation/validate-node-operation.js.map +0 -1
  129. package/dist/mcp/tool-docs/validation/validate-workflow-connections.d.ts +0 -3
  130. package/dist/mcp/tool-docs/validation/validate-workflow-connections.d.ts.map +0 -1
  131. package/dist/mcp/tool-docs/validation/validate-workflow-connections.js +0 -58
  132. package/dist/mcp/tool-docs/validation/validate-workflow-connections.js.map +0 -1
  133. package/dist/mcp/tool-docs/validation/validate-workflow-expressions.d.ts +0 -3
  134. package/dist/mcp/tool-docs/validation/validate-workflow-expressions.d.ts.map +0 -1
  135. package/dist/mcp/tool-docs/validation/validate-workflow-expressions.js +0 -58
  136. package/dist/mcp/tool-docs/validation/validate-workflow-expressions.js.map +0 -1
  137. package/dist/mcp/tool-docs/workflow_management/n8n-delete-execution.d.ts +0 -3
  138. package/dist/mcp/tool-docs/workflow_management/n8n-delete-execution.d.ts.map +0 -1
  139. package/dist/mcp/tool-docs/workflow_management/n8n-delete-execution.js +0 -59
  140. package/dist/mcp/tool-docs/workflow_management/n8n-delete-execution.js.map +0 -1
  141. package/dist/mcp/tool-docs/workflow_management/n8n-get-execution.d.ts +0 -3
  142. package/dist/mcp/tool-docs/workflow_management/n8n-get-execution.d.ts.map +0 -1
  143. package/dist/mcp/tool-docs/workflow_management/n8n-get-execution.js +0 -270
  144. package/dist/mcp/tool-docs/workflow_management/n8n-get-execution.js.map +0 -1
  145. package/dist/mcp/tool-docs/workflow_management/n8n-get-workflow-details.d.ts +0 -3
  146. package/dist/mcp/tool-docs/workflow_management/n8n-get-workflow-details.d.ts.map +0 -1
  147. package/dist/mcp/tool-docs/workflow_management/n8n-get-workflow-details.js +0 -51
  148. package/dist/mcp/tool-docs/workflow_management/n8n-get-workflow-details.js.map +0 -1
  149. package/dist/mcp/tool-docs/workflow_management/n8n-get-workflow-minimal.d.ts +0 -3
  150. package/dist/mcp/tool-docs/workflow_management/n8n-get-workflow-minimal.d.ts.map +0 -1
  151. package/dist/mcp/tool-docs/workflow_management/n8n-get-workflow-minimal.js +0 -51
  152. package/dist/mcp/tool-docs/workflow_management/n8n-get-workflow-minimal.js.map +0 -1
  153. package/dist/mcp/tool-docs/workflow_management/n8n-get-workflow-structure.d.ts +0 -3
  154. package/dist/mcp/tool-docs/workflow_management/n8n-get-workflow-structure.d.ts.map +0 -1
  155. package/dist/mcp/tool-docs/workflow_management/n8n-get-workflow-structure.js +0 -51
  156. package/dist/mcp/tool-docs/workflow_management/n8n-get-workflow-structure.js.map +0 -1
  157. package/dist/mcp/tool-docs/workflow_management/n8n-list-executions.d.ts +0 -3
  158. package/dist/mcp/tool-docs/workflow_management/n8n-list-executions.d.ts.map +0 -1
  159. package/dist/mcp/tool-docs/workflow_management/n8n-list-executions.js +0 -86
  160. package/dist/mcp/tool-docs/workflow_management/n8n-list-executions.js.map +0 -1
@@ -1,100 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getNodeInfoDoc = void 0;
4
- exports.getNodeInfoDoc = {
5
- name: 'get_node_info',
6
- category: 'configuration',
7
- essentials: {
8
- description: 'Returns complete node schema with ALL properties (100KB+ response). Only use when you need advanced properties not in get_node_essentials. Contains 200+ properties for complex nodes like HTTP Request. Requires full prefix like "nodes-base.httpRequest".',
9
- keyParameters: ['nodeType'],
10
- example: 'get_node_info({nodeType: "nodes-base.slack"})',
11
- performance: '100-500ms, 50-500KB response',
12
- tips: [
13
- 'Try get_node_essentials first (95% smaller)',
14
- 'Use only for advanced configurations',
15
- 'Response may have 200+ properties'
16
- ]
17
- },
18
- full: {
19
- description: 'Returns the complete JSON schema for a node including all properties, operations, authentication methods, version information, and metadata. Response sizes range from 50KB to 500KB. Use this only when get_node_essentials doesn\'t provide the specific property you need.',
20
- parameters: {
21
- nodeType: { type: 'string', required: true, description: 'Full node type with prefix. Examples: "nodes-base.slack", "nodes-base.httpRequest", "nodes-langchain.openAi"' }
22
- },
23
- returns: `Complete node object containing:
24
- {
25
- "displayName": "Slack",
26
- "name": "slack",
27
- "type": "nodes-base.slack",
28
- "typeVersion": 2.2,
29
- "description": "Consume Slack API",
30
- "defaults": {"name": "Slack"},
31
- "inputs": ["main"],
32
- "outputs": ["main"],
33
- "credentials": [
34
- {
35
- "name": "slackApi",
36
- "required": true,
37
- "displayOptions": {...}
38
- }
39
- ],
40
- "properties": [
41
- // 200+ property definitions including:
42
- {
43
- "displayName": "Resource",
44
- "name": "resource",
45
- "type": "options",
46
- "options": ["channel", "message", "user", "file", ...],
47
- "default": "message"
48
- },
49
- {
50
- "displayName": "Operation",
51
- "name": "operation",
52
- "type": "options",
53
- "displayOptions": {
54
- "show": {"resource": ["message"]}
55
- },
56
- "options": ["post", "update", "delete", "get", ...],
57
- "default": "post"
58
- },
59
- // ... 200+ more properties with complex conditions
60
- ],
61
- "version": 2.2,
62
- "subtitle": "={{$parameter[\"operation\"] + \": \" + $parameter[\"resource\"]}}",
63
- "codex": {...},
64
- "supportedWebhooks": [...]
65
- }`,
66
- examples: [
67
- 'get_node_info({nodeType: "nodes-base.httpRequest"}) - 300+ properties for HTTP requests',
68
- 'get_node_info({nodeType: "nodes-base.googleSheets"}) - Complex operations and auth',
69
- '// When to use get_node_info:',
70
- '// 1. First try essentials',
71
- 'const essentials = get_node_essentials({nodeType: "nodes-base.slack"});',
72
- '// 2. If property missing, search for it',
73
- 'const props = search_node_properties({nodeType: "nodes-base.slack", query: "thread"});',
74
- '// 3. Only if needed, get full schema',
75
- 'const full = get_node_info({nodeType: "nodes-base.slack"});'
76
- ],
77
- useCases: [
78
- 'Analyzing all available operations for a node',
79
- 'Understanding complex property dependencies',
80
- 'Discovering all authentication methods',
81
- 'Building UI that shows all node options',
82
- 'Debugging property visibility conditions'
83
- ],
84
- performance: '100-500ms depending on node complexity. HTTP Request node: ~300KB, Simple nodes: ~50KB',
85
- bestPractices: [
86
- 'Always try get_node_essentials first - it\'s 95% smaller',
87
- 'Use search_node_properties to find specific advanced properties',
88
- 'Cache results locally - schemas rarely change',
89
- 'Parse incrementally - don\'t load entire response into memory at once'
90
- ],
91
- pitfalls: [
92
- 'Response can exceed 500KB for complex nodes',
93
- 'Contains many rarely-used properties that add noise',
94
- 'Property conditions can be deeply nested and complex',
95
- 'Must use full node type with prefix (nodes-base.X not just X)'
96
- ],
97
- relatedTools: ['get_node_essentials for common properties', 'search_node_properties to find specific fields', 'get_property_dependencies to understand conditions']
98
- }
99
- };
100
- //# sourceMappingURL=get-node-info.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"get-node-info.js","sourceRoot":"","sources":["../../../../src/mcp/tool-docs/configuration/get-node-info.ts"],"names":[],"mappings":";;;AAEa,QAAA,cAAc,GAAsB;IAC/C,IAAI,EAAE,eAAe;IACrB,QAAQ,EAAE,eAAe;IACzB,UAAU,EAAE;QACV,WAAW,EAAE,8PAA8P;QAC3Q,aAAa,EAAE,CAAC,UAAU,CAAC;QAC3B,OAAO,EAAE,+CAA+C;QACxD,WAAW,EAAE,8BAA8B;QAC3C,IAAI,EAAE;YACJ,6CAA6C;YAC7C,sCAAsC;YACtC,mCAAmC;SACpC;KACF;IACD,IAAI,EAAE;QACJ,WAAW,EAAE,+QAA+Q;QAC5R,UAAU,EAAE;YACV,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,8GAA8G,EAAE;SAC1K;QACD,OAAO,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA0CX;QACE,QAAQ,EAAE;YACR,yFAAyF;YACzF,oFAAoF;YACpF,+BAA+B;YAC/B,4BAA4B;YAC5B,yEAAyE;YACzE,0CAA0C;YAC1C,wFAAwF;YACxF,uCAAuC;YACvC,6DAA6D;SAC9D;QACD,QAAQ,EAAE;YACR,+CAA+C;YAC/C,6CAA6C;YAC7C,wCAAwC;YACxC,yCAAyC;YACzC,0CAA0C;SAC3C;QACD,WAAW,EAAE,wFAAwF;QACrG,aAAa,EAAE;YACb,0DAA0D;YAC1D,iEAAiE;YACjE,+CAA+C;YAC/C,uEAAuE;SACxE;QACD,QAAQ,EAAE;YACR,6CAA6C;YAC7C,qDAAqD;YACrD,sDAAsD;YACtD,+DAA+D;SAChE;QACD,YAAY,EAAE,CAAC,2CAA2C,EAAE,gDAAgD,EAAE,oDAAoD,CAAC;KACpK;CACF,CAAC"}
@@ -1,3 +0,0 @@
1
- import { ToolDocumentation } from '../types';
2
- export declare const getPropertyDependenciesDoc: ToolDocumentation;
3
- //# sourceMappingURL=get-property-dependencies.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"get-property-dependencies.d.ts","sourceRoot":"","sources":["../../../../src/mcp/tool-docs/configuration/get-property-dependencies.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAE7C,eAAO,MAAM,0BAA0B,EAAE,iBA4ExC,CAAC"}
@@ -1,81 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getPropertyDependenciesDoc = void 0;
4
- exports.getPropertyDependenciesDoc = {
5
- name: 'get_property_dependencies',
6
- category: 'configuration',
7
- essentials: {
8
- description: 'Shows property dependencies and visibility rules - which fields appear when.',
9
- keyParameters: ['nodeType', 'config?'],
10
- example: 'get_property_dependencies({nodeType: "nodes-base.httpRequest"})',
11
- performance: 'Fast - analyzes property conditions',
12
- tips: [
13
- 'Shows which properties depend on other property values',
14
- 'Test visibility impact with optional config parameter',
15
- 'Helps understand complex conditional property displays'
16
- ]
17
- },
18
- full: {
19
- description: `Analyzes property dependencies and visibility conditions for a node. Shows which properties control the visibility of other properties (e.g., sendBody=true reveals body-related fields). Optionally test how a specific configuration affects property visibility.`,
20
- parameters: {
21
- nodeType: {
22
- type: 'string',
23
- required: true,
24
- description: 'The node type to analyze (e.g., "nodes-base.httpRequest")',
25
- examples: [
26
- 'nodes-base.httpRequest',
27
- 'nodes-base.slack',
28
- 'nodes-base.if',
29
- 'nodes-base.switch'
30
- ]
31
- },
32
- config: {
33
- type: 'object',
34
- required: false,
35
- description: 'Optional partial configuration to check visibility impact',
36
- examples: [
37
- '{ method: "POST", sendBody: true }',
38
- '{ operation: "create", resource: "contact" }',
39
- '{ mode: "rules" }'
40
- ]
41
- }
42
- },
43
- returns: `Object containing:
44
- - nodeType: The analyzed node type
45
- - displayName: Human-readable node name
46
- - controllingProperties: Properties that control visibility of others
47
- - dependentProperties: Properties whose visibility depends on others
48
- - complexDependencies: Multi-condition dependencies
49
- - currentConfig: If config provided, shows:
50
- - providedValues: The configuration you passed
51
- - visibilityImpact: Which properties are visible/hidden`,
52
- examples: [
53
- 'get_property_dependencies({nodeType: "nodes-base.httpRequest"}) - Analyze HTTP Request dependencies',
54
- 'get_property_dependencies({nodeType: "nodes-base.httpRequest", config: {sendBody: true}}) - Test visibility with sendBody enabled',
55
- 'get_property_dependencies({nodeType: "nodes-base.if", config: {mode: "rules"}}) - Check If node in rules mode'
56
- ],
57
- useCases: [
58
- 'Understanding which properties control others',
59
- 'Debugging why certain fields are not visible',
60
- 'Building dynamic UIs that match n8n behavior',
61
- 'Testing configurations before applying them',
62
- 'Understanding complex node property relationships'
63
- ],
64
- performance: 'Fast - analyzes property metadata without database queries',
65
- bestPractices: [
66
- 'Use before configuring complex nodes with many conditional fields',
67
- 'Test different config values to understand visibility rules',
68
- 'Check dependencies when properties seem to be missing',
69
- 'Use for nodes with multiple operation modes (Slack, Google Sheets)',
70
- 'Combine with search_node_properties to find specific fields'
71
- ],
72
- pitfalls: [
73
- 'Some properties have complex multi-condition dependencies',
74
- 'Visibility rules can be nested (property A controls B which controls C)',
75
- 'Not all hidden properties are due to dependencies (some are deprecated)',
76
- 'Config parameter only tests visibility, does not validate values'
77
- ],
78
- relatedTools: ['search_node_properties', 'get_node_essentials', 'validate_node_operation']
79
- }
80
- };
81
- //# sourceMappingURL=get-property-dependencies.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"get-property-dependencies.js","sourceRoot":"","sources":["../../../../src/mcp/tool-docs/configuration/get-property-dependencies.ts"],"names":[],"mappings":";;;AAEa,QAAA,0BAA0B,GAAsB;IAC3D,IAAI,EAAE,2BAA2B;IACjC,QAAQ,EAAE,eAAe;IACzB,UAAU,EAAE;QACV,WAAW,EAAE,8EAA8E;QAC3F,aAAa,EAAE,CAAC,UAAU,EAAE,SAAS,CAAC;QACtC,OAAO,EAAE,iEAAiE;QAC1E,WAAW,EAAE,qCAAqC;QAClD,IAAI,EAAE;YACJ,wDAAwD;YACxD,uDAAuD;YACvD,wDAAwD;SACzD;KACF;IACD,IAAI,EAAE;QACJ,WAAW,EAAE,qQAAqQ;QAClR,UAAU,EAAE;YACV,QAAQ,EAAE;gBACR,IAAI,EAAE,QAAQ;gBACd,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE,2DAA2D;gBACxE,QAAQ,EAAE;oBACR,wBAAwB;oBACxB,kBAAkB;oBAClB,eAAe;oBACf,mBAAmB;iBACpB;aACF;YACD,MAAM,EAAE;gBACN,IAAI,EAAE,QAAQ;gBACd,QAAQ,EAAE,KAAK;gBACf,WAAW,EAAE,2DAA2D;gBACxE,QAAQ,EAAE;oBACR,oCAAoC;oBACpC,8CAA8C;oBAC9C,mBAAmB;iBACpB;aACF;SACF;QACD,OAAO,EAAE;;;;;;;;0DAQ6C;QACtD,QAAQ,EAAE;YACR,qGAAqG;YACrG,mIAAmI;YACnI,+GAA+G;SAChH;QACD,QAAQ,EAAE;YACR,+CAA+C;YAC/C,8CAA8C;YAC9C,8CAA8C;YAC9C,6CAA6C;YAC7C,mDAAmD;SACpD;QACD,WAAW,EAAE,4DAA4D;QACzE,aAAa,EAAE;YACb,mEAAmE;YACnE,6DAA6D;YAC7D,uDAAuD;YACvD,oEAAoE;YACpE,6DAA6D;SAC9D;QACD,QAAQ,EAAE;YACR,2DAA2D;YAC3D,yEAAyE;YACzE,yEAAyE;YACzE,kEAAkE;SACnE;QACD,YAAY,EAAE,CAAC,wBAAwB,EAAE,qBAAqB,EAAE,yBAAyB,CAAC;KAC3F;CACF,CAAC"}
@@ -1,3 +0,0 @@
1
- import { ToolDocumentation } from '../types';
2
- export declare const searchNodePropertiesDoc: ToolDocumentation;
3
- //# sourceMappingURL=search-node-properties.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"search-node-properties.d.ts","sourceRoot":"","sources":["../../../../src/mcp/tool-docs/configuration/search-node-properties.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAE7C,eAAO,MAAM,uBAAuB,EAAE,iBA8FrC,CAAC"}
@@ -1,99 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.searchNodePropertiesDoc = void 0;
4
- exports.searchNodePropertiesDoc = {
5
- name: 'search_node_properties',
6
- category: 'configuration',
7
- essentials: {
8
- description: 'Find specific properties in a node without downloading all 200+ properties.',
9
- keyParameters: ['nodeType', 'query'],
10
- example: 'search_node_properties({nodeType: "nodes-base.httpRequest", query: "auth"})',
11
- performance: 'Fast - searches indexed properties',
12
- tips: [
13
- 'Search for "auth", "header", "body", "json", "credential"',
14
- 'Returns property paths and descriptions',
15
- 'Much faster than get_node_info for finding specific fields'
16
- ]
17
- },
18
- full: {
19
- description: `Searches for specific properties within a node's configuration schema. Essential for finding authentication fields, headers, body parameters, or any specific property without downloading the entire node schema (which can be 100KB+). Returns matching properties with their paths, types, and descriptions.`,
20
- parameters: {
21
- nodeType: {
22
- type: 'string',
23
- required: true,
24
- description: 'Full type with prefix',
25
- examples: [
26
- 'nodes-base.httpRequest',
27
- 'nodes-base.slack',
28
- 'nodes-base.postgres',
29
- 'nodes-base.googleSheets'
30
- ]
31
- },
32
- query: {
33
- type: 'string',
34
- required: true,
35
- description: 'Property to find: "auth", "header", "body", "json"',
36
- examples: [
37
- 'auth',
38
- 'header',
39
- 'body',
40
- 'json',
41
- 'credential',
42
- 'timeout',
43
- 'retry',
44
- 'pagination'
45
- ]
46
- },
47
- maxResults: {
48
- type: 'number',
49
- required: false,
50
- description: 'Max results (default 20)',
51
- default: 20
52
- }
53
- },
54
- returns: `Object containing:
55
- - nodeType: The searched node type
56
- - query: Your search term
57
- - matches: Array of matching properties with:
58
- - name: Property identifier
59
- - displayName: Human-readable name
60
- - type: Property type (string, number, options, etc.)
61
- - description: Property description
62
- - path: Full path to property (for nested properties)
63
- - required: Whether property is required
64
- - default: Default value if any
65
- - options: Available options for selection properties
66
- - showWhen: Visibility conditions
67
- - totalMatches: Number of matches found
68
- - searchedIn: Total properties searched`,
69
- examples: [
70
- 'search_node_properties({nodeType: "nodes-base.httpRequest", query: "auth"}) - Find authentication fields',
71
- 'search_node_properties({nodeType: "nodes-base.slack", query: "channel"}) - Find channel-related properties',
72
- 'search_node_properties({nodeType: "nodes-base.postgres", query: "query"}) - Find query fields',
73
- 'search_node_properties({nodeType: "nodes-base.webhook", query: "response"}) - Find response options'
74
- ],
75
- useCases: [
76
- 'Finding authentication/credential fields quickly',
77
- 'Locating specific parameters without full node info',
78
- 'Discovering header or body configuration options',
79
- 'Finding nested properties in complex nodes',
80
- 'Checking if a node supports specific features (retry, pagination, etc.)'
81
- ],
82
- performance: 'Very fast - searches pre-indexed property metadata',
83
- bestPractices: [
84
- 'Use before get_node_info to find specific properties',
85
- 'Search for common terms: auth, header, body, credential',
86
- 'Check showWhen conditions to understand visibility',
87
- 'Use with get_property_dependencies for complete understanding',
88
- 'Limit results if you only need to check existence'
89
- ],
90
- pitfalls: [
91
- 'Some properties may be hidden due to visibility conditions',
92
- 'Property names may differ from display names',
93
- 'Nested properties show full path (e.g., "options.retry.limit")',
94
- 'Search is case-sensitive for property names'
95
- ],
96
- relatedTools: ['get_node_essentials', 'get_property_dependencies', 'get_node_info']
97
- }
98
- };
99
- //# sourceMappingURL=search-node-properties.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"search-node-properties.js","sourceRoot":"","sources":["../../../../src/mcp/tool-docs/configuration/search-node-properties.ts"],"names":[],"mappings":";;;AAEa,QAAA,uBAAuB,GAAsB;IACxD,IAAI,EAAE,wBAAwB;IAC9B,QAAQ,EAAE,eAAe;IACzB,UAAU,EAAE;QACV,WAAW,EAAE,6EAA6E;QAC1F,aAAa,EAAE,CAAC,UAAU,EAAE,OAAO,CAAC;QACpC,OAAO,EAAE,6EAA6E;QACtF,WAAW,EAAE,oCAAoC;QACjD,IAAI,EAAE;YACJ,2DAA2D;YAC3D,yCAAyC;YACzC,4DAA4D;SAC7D;KACF;IACD,IAAI,EAAE;QACJ,WAAW,EAAE,iTAAiT;QAC9T,UAAU,EAAE;YACV,QAAQ,EAAE;gBACR,IAAI,EAAE,QAAQ;gBACd,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE,uBAAuB;gBACpC,QAAQ,EAAE;oBACR,wBAAwB;oBACxB,kBAAkB;oBAClB,qBAAqB;oBACrB,yBAAyB;iBAC1B;aACF;YACD,KAAK,EAAE;gBACL,IAAI,EAAE,QAAQ;gBACd,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE,oDAAoD;gBACjE,QAAQ,EAAE;oBACR,MAAM;oBACN,QAAQ;oBACR,MAAM;oBACN,MAAM;oBACN,YAAY;oBACZ,SAAS;oBACT,OAAO;oBACP,YAAY;iBACb;aACF;YACD,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,QAAQ,EAAE,KAAK;gBACf,WAAW,EAAE,0BAA0B;gBACvC,OAAO,EAAE,EAAE;aACZ;SACF;QACD,OAAO,EAAE;;;;;;;;;;;;;;wCAc2B;QACpC,QAAQ,EAAE;YACR,0GAA0G;YAC1G,4GAA4G;YAC5G,+FAA+F;YAC/F,qGAAqG;SACtG;QACD,QAAQ,EAAE;YACR,kDAAkD;YAClD,qDAAqD;YACrD,kDAAkD;YAClD,4CAA4C;YAC5C,yEAAyE;SAC1E;QACD,WAAW,EAAE,oDAAoD;QACjE,aAAa,EAAE;YACb,sDAAsD;YACtD,yDAAyD;YACzD,oDAAoD;YACpD,+DAA+D;YAC/D,mDAAmD;SACpD;QACD,QAAQ,EAAE;YACR,4DAA4D;YAC5D,8CAA8C;YAC9C,gEAAgE;YAChE,6CAA6C;SAC9C;QACD,YAAY,EAAE,CAAC,qBAAqB,EAAE,2BAA2B,EAAE,eAAe,CAAC;KACpF;CACF,CAAC"}
@@ -1,3 +0,0 @@
1
- import { ToolDocumentation } from '../types';
2
- export declare const getDatabaseStatisticsDoc: ToolDocumentation;
3
- //# sourceMappingURL=get-database-statistics.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"get-database-statistics.d.ts","sourceRoot":"","sources":["../../../../src/mcp/tool-docs/discovery/get-database-statistics.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAE7C,eAAO,MAAM,wBAAwB,EAAE,iBAgEtC,CAAC"}
@@ -1,69 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getDatabaseStatisticsDoc = void 0;
4
- exports.getDatabaseStatisticsDoc = {
5
- name: 'get_database_statistics',
6
- category: 'discovery',
7
- essentials: {
8
- description: 'Returns database health metrics and node inventory. Shows 525 total nodes, 263 AI-capable nodes, 104 triggers, with 87% documentation coverage. Primary use: verify MCP connection is working correctly.',
9
- keyParameters: [],
10
- example: 'get_database_statistics()',
11
- performance: 'Instant',
12
- tips: [
13
- 'First tool to call when testing MCP connection',
14
- 'Shows exact counts for all node categories',
15
- 'Documentation coverage indicates data quality'
16
- ]
17
- },
18
- full: {
19
- description: 'Returns comprehensive database statistics showing the complete inventory of n8n nodes, their categories, documentation coverage, and package distribution. Essential for verifying MCP connectivity and understanding available resources.',
20
- parameters: {},
21
- returns: `Object containing:
22
- {
23
- "total_nodes": 525, // All nodes in database
24
- "nodes_with_properties": 520, // Nodes with extracted properties (99%)
25
- "nodes_with_operations": 334, // Nodes with multiple operations (64%)
26
- "ai_tools": 263, // AI-capable nodes
27
- "triggers": 104, // Workflow trigger nodes
28
- "documentation_coverage": "87%", // Nodes with official docs
29
- "packages": {
30
- "n8n-nodes-base": 456, // Core n8n nodes
31
- "@n8n/n8n-nodes-langchain": 69 // AI/LangChain nodes
32
- },
33
- "categories": {
34
- "trigger": 104,
35
- "transform": 250,
36
- "output": 45,
37
- "input": 38,
38
- "AI": 88
39
- }
40
- }`,
41
- examples: [
42
- 'get_database_statistics() - Returns complete statistics object',
43
- '// Common check:',
44
- 'const stats = get_database_statistics();',
45
- 'if (stats.total_nodes < 500) console.error("Database incomplete!");'
46
- ],
47
- useCases: [
48
- 'Verify MCP server is connected and responding',
49
- 'Check if database rebuild is needed (low node count)',
50
- 'Monitor documentation coverage improvements',
51
- 'Validate AI tools availability for workflows',
52
- 'Audit node distribution across packages'
53
- ],
54
- performance: 'Instant (<1ms) - Statistics are pre-calculated and cached',
55
- bestPractices: [
56
- 'Call this first to verify MCP connection before other operations',
57
- 'Check total_nodes >= 500 to ensure complete database',
58
- 'Monitor documentation_coverage for data quality',
59
- 'Use ai_tools count to verify AI capabilities'
60
- ],
61
- pitfalls: [
62
- 'Statistics are cached at database build time, not real-time',
63
- 'Won\'t reflect changes until database is rebuilt',
64
- 'Package counts may vary with n8n version updates'
65
- ],
66
- relatedTools: ['list_nodes for detailed node listing', 'list_ai_tools for AI nodes', 'n8n_health_check for API connectivity']
67
- }
68
- };
69
- //# sourceMappingURL=get-database-statistics.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"get-database-statistics.js","sourceRoot":"","sources":["../../../../src/mcp/tool-docs/discovery/get-database-statistics.ts"],"names":[],"mappings":";;;AAEa,QAAA,wBAAwB,GAAsB;IACzD,IAAI,EAAE,yBAAyB;IAC/B,QAAQ,EAAE,WAAW;IACrB,UAAU,EAAE;QACV,WAAW,EAAE,0MAA0M;QACvN,aAAa,EAAE,EAAE;QACjB,OAAO,EAAE,2BAA2B;QACpC,WAAW,EAAE,SAAS;QACtB,IAAI,EAAE;YACJ,gDAAgD;YAChD,4CAA4C;YAC5C,+CAA+C;SAChD;KACF;IACD,IAAI,EAAE;QACJ,WAAW,EAAE,4OAA4O;QACzP,UAAU,EAAE,EAAE;QACd,OAAO,EAAE;;;;;;;;;;;;;;;;;;;EAmBX;QACE,QAAQ,EAAE;YACR,gEAAgE;YAChE,kBAAkB;YAClB,0CAA0C;YAC1C,qEAAqE;SACtE;QACD,QAAQ,EAAE;YACR,+CAA+C;YAC/C,sDAAsD;YACtD,6CAA6C;YAC7C,8CAA8C;YAC9C,yCAAyC;SAC1C;QACD,WAAW,EAAE,2DAA2D;QACxE,aAAa,EAAE;YACb,kEAAkE;YAClE,sDAAsD;YACtD,iDAAiD;YACjD,8CAA8C;SAC/C;QACD,QAAQ,EAAE;YACR,6DAA6D;YAC7D,kDAAkD;YAClD,kDAAkD;SACnD;QACD,YAAY,EAAE,CAAC,sCAAsC,EAAE,4BAA4B,EAAE,uCAAuC,CAAC;KAC9H;CACF,CAAC"}
@@ -1,3 +0,0 @@
1
- import { ToolDocumentation } from '../types';
2
- export declare const listAiToolsDoc: ToolDocumentation;
3
- //# sourceMappingURL=list-ai-tools.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"list-ai-tools.d.ts","sourceRoot":"","sources":["../../../../src/mcp/tool-docs/discovery/list-ai-tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAE7C,eAAO,MAAM,cAAc,EAAE,iBAgD5B,CAAC"}
@@ -1,53 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.listAiToolsDoc = void 0;
4
- exports.listAiToolsDoc = {
5
- name: 'list_ai_tools',
6
- category: 'discovery',
7
- essentials: {
8
- description: 'DEPRECATED: Basic list of 263 AI nodes. For comprehensive AI Agent guidance, use tools_documentation({topic: "ai_agents_guide"}). That guide covers architecture, connections, tools, validation, and best practices. Use search_nodes({query: "AI", includeExamples: true}) for AI nodes with working examples.',
9
- keyParameters: [],
10
- example: 'tools_documentation({topic: "ai_agents_guide"}) // Recommended alternative',
11
- performance: 'Instant (cached)',
12
- tips: [
13
- 'NEW: Use ai_agents_guide for comprehensive AI workflow documentation',
14
- 'Use search_nodes({includeExamples: true}) for AI nodes with real-world examples',
15
- 'ANY node can be an AI tool - not limited to AI-specific nodes',
16
- 'Use get_node_as_tool_info for guidance on any node'
17
- ]
18
- },
19
- full: {
20
- description: '**DEPRECATED in favor of ai_agents_guide**. Lists 263 nodes with built-in AI capabilities. For comprehensive documentation on building AI Agent workflows, use tools_documentation({topic: "ai_agents_guide"}) which covers architecture, the 8 AI connection types, validation, and best practices with real examples. IMPORTANT: This basic list is NOT a complete guide - use the full AI Agents guide instead.',
21
- parameters: {},
22
- returns: 'Array of 263 AI-optimized nodes. RECOMMENDED: Use ai_agents_guide for comprehensive guidance, or search_nodes({query: "AI", includeExamples: true}) for AI nodes with working configuration examples.',
23
- examples: [
24
- '// RECOMMENDED: Use the comprehensive AI Agents guide',
25
- 'tools_documentation({topic: "ai_agents_guide"})',
26
- '',
27
- '// Or search for AI nodes with real-world examples',
28
- 'search_nodes({query: "AI Agent", includeExamples: true})',
29
- '',
30
- '// Basic list (deprecated)',
31
- 'list_ai_tools() - Returns 263 AI-optimized nodes'
32
- ],
33
- useCases: [
34
- 'Discover AI model integrations (OpenAI, Anthropic, Google AI)',
35
- 'Find vector databases for RAG applications',
36
- 'Locate embedding generators and processors',
37
- 'Build AI agent tool chains with ANY n8n node'
38
- ],
39
- performance: 'Instant - results are pre-cached in memory',
40
- bestPractices: [
41
- 'Remember: ANY node works as an AI tool when connected to AI Agent',
42
- 'Common non-AI nodes used as tools: Slack (messaging), Google Sheets (data), HTTP Request (APIs), Code (custom logic)',
43
- 'For community nodes: set N8N_COMMUNITY_PACKAGES_ALLOW_TOOL_USAGE=true'
44
- ],
45
- pitfalls: [
46
- 'This list is NOT exhaustive - it only shows nodes with AI-specific features',
47
- 'Don\'t limit yourself to this list when building AI workflows',
48
- 'Community nodes require environment variable to work as tools'
49
- ],
50
- relatedTools: ['get_node_as_tool_info for any node usage', 'search_nodes to find specific nodes', 'get_node_essentials to configure nodes']
51
- }
52
- };
53
- //# sourceMappingURL=list-ai-tools.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"list-ai-tools.js","sourceRoot":"","sources":["../../../../src/mcp/tool-docs/discovery/list-ai-tools.ts"],"names":[],"mappings":";;;AAEa,QAAA,cAAc,GAAsB;IAC/C,IAAI,EAAE,eAAe;IACrB,QAAQ,EAAE,WAAW;IACrB,UAAU,EAAE;QACV,WAAW,EAAE,kTAAkT;QAC/T,aAAa,EAAE,EAAE;QACjB,OAAO,EAAE,4EAA4E;QACrF,WAAW,EAAE,kBAAkB;QAC/B,IAAI,EAAE;YACJ,sEAAsE;YACtE,iFAAiF;YACjF,+DAA+D;YAC/D,oDAAoD;SACrD;KACF;IACD,IAAI,EAAE;QACJ,WAAW,EAAE,oZAAoZ;QACja,UAAU,EAAE,EAAE;QACd,OAAO,EAAE,uMAAuM;QAChN,QAAQ,EAAE;YACR,uDAAuD;YACvD,iDAAiD;YACjD,EAAE;YACF,oDAAoD;YACpD,0DAA0D;YAC1D,EAAE;YACF,4BAA4B;YAC5B,kDAAkD;SACnD;QACD,QAAQ,EAAE;YACR,+DAA+D;YAC/D,4CAA4C;YAC5C,4CAA4C;YAC5C,8CAA8C;SAC/C;QACD,WAAW,EAAE,4CAA4C;QACzD,aAAa,EAAE;YACb,mEAAmE;YACnE,sHAAsH;YACtH,uEAAuE;SACxE;QACD,QAAQ,EAAE;YACR,6EAA6E;YAC7E,+DAA+D;YAC/D,+DAA+D;SAChE;QACD,YAAY,EAAE,CAAC,0CAA0C,EAAE,qCAAqC,EAAE,wCAAwC,CAAC;KAC5I;CACF,CAAC"}
@@ -1,3 +0,0 @@
1
- import { ToolDocumentation } from '../types';
2
- export declare const listNodesDoc: ToolDocumentation;
3
- //# sourceMappingURL=list-nodes.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"list-nodes.d.ts","sourceRoot":"","sources":["../../../../src/mcp/tool-docs/discovery/list-nodes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAE7C,eAAO,MAAM,YAAY,EAAE,iBAiD1B,CAAC"}
@@ -1,54 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.listNodesDoc = void 0;
4
- exports.listNodesDoc = {
5
- name: 'list_nodes',
6
- category: 'discovery',
7
- essentials: {
8
- description: 'Lists n8n nodes with filtering options. Returns up to 525 total nodes. Default limit is 50, use limit:200 to get all nodes. Filter by category to find specific node types like triggers (104 nodes) or AI nodes (263 nodes).',
9
- keyParameters: ['category', 'package', 'limit', 'isAITool'],
10
- example: 'list_nodes({limit:200})',
11
- performance: '<10ms for any query size',
12
- tips: [
13
- 'Use limit:200 to get all 525 nodes',
14
- 'Categories: trigger (104), transform (250+), output/input (50+)',
15
- 'Use search_nodes for keyword search'
16
- ]
17
- },
18
- full: {
19
- description: 'Lists n8n nodes with comprehensive filtering options. Returns an array of node metadata including type, name, description, and category. Database contains 525 total nodes: 456 from n8n-nodes-base package and 69 from @n8n/n8n-nodes-langchain package.',
20
- parameters: {
21
- category: { type: 'string', description: 'Filter by category: "trigger" (104 nodes), "transform" (250+ nodes), "output", "input", or "AI"', required: false },
22
- package: { type: 'string', description: 'Filter by package: "n8n-nodes-base" (456 core nodes) or "@n8n/n8n-nodes-langchain" (69 AI nodes)', required: false },
23
- limit: { type: 'number', description: 'Maximum results to return. Default: 50. Use 200+ to get all 525 nodes', required: false },
24
- isAITool: { type: 'boolean', description: 'Filter to show only AI-capable nodes (263 nodes)', required: false },
25
- developmentStyle: { type: 'string', description: 'Filter by style: "programmatic" or "declarative". Most nodes are programmatic', required: false }
26
- },
27
- returns: 'Array of node objects, each containing: nodeType (e.g., "nodes-base.webhook"), displayName (e.g., "Webhook"), description, category, package, isAITool flag',
28
- examples: [
29
- 'list_nodes({limit:200}) - Returns all 525 nodes',
30
- 'list_nodes({category:"trigger"}) - Returns 104 trigger nodes (Webhook, Schedule, Email Trigger, etc.)',
31
- 'list_nodes({package:"@n8n/n8n-nodes-langchain"}) - Returns 69 AI/LangChain nodes',
32
- 'list_nodes({isAITool:true}) - Returns 263 AI-capable nodes',
33
- 'list_nodes({category:"trigger", isAITool:true}) - Combines filters for AI-capable triggers'
34
- ],
35
- useCases: [
36
- 'Browse all available nodes when building workflows',
37
- 'Find all trigger nodes to start workflows',
38
- 'Discover AI/ML nodes for intelligent automation',
39
- 'Check available nodes in specific packages'
40
- ],
41
- performance: '<10ms for any query size. Results are cached in memory',
42
- bestPractices: [
43
- 'Use limit:200 when you need the complete node inventory',
44
- 'Filter by category for focused discovery',
45
- 'Combine with get_node_essentials to configure selected nodes'
46
- ],
47
- pitfalls: [
48
- 'No text search capability - use search_nodes for keyword search',
49
- 'developmentStyle filter rarely useful - most nodes are "programmatic"'
50
- ],
51
- relatedTools: ['search_nodes for keyword search', 'list_ai_tools for AI-specific discovery', 'get_node_essentials to configure nodes']
52
- }
53
- };
54
- //# sourceMappingURL=list-nodes.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"list-nodes.js","sourceRoot":"","sources":["../../../../src/mcp/tool-docs/discovery/list-nodes.ts"],"names":[],"mappings":";;;AAEa,QAAA,YAAY,GAAsB;IAC7C,IAAI,EAAE,YAAY;IAClB,QAAQ,EAAE,WAAW;IACrB,UAAU,EAAE;QACV,WAAW,EAAE,+NAA+N;QAC5O,aAAa,EAAE,CAAC,UAAU,EAAE,SAAS,EAAE,OAAO,EAAE,UAAU,CAAC;QAC3D,OAAO,EAAE,yBAAyB;QAClC,WAAW,EAAE,0BAA0B;QACvC,IAAI,EAAE;YACJ,oCAAoC;YACpC,iEAAiE;YACjE,qCAAqC;SACtC;KACF;IACD,IAAI,EAAE;QACJ,WAAW,EAAE,2PAA2P;QACxQ,UAAU,EAAE;YACV,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,iGAAiG,EAAE,QAAQ,EAAE,KAAK,EAAE;YAC7J,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,kGAAkG,EAAE,QAAQ,EAAE,KAAK,EAAE;YAC7J,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,uEAAuE,EAAE,QAAQ,EAAE,KAAK,EAAE;YAChI,QAAQ,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,kDAAkD,EAAE,QAAQ,EAAE,KAAK,EAAE;YAC/G,gBAAgB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,+EAA+E,EAAE,QAAQ,EAAE,KAAK,EAAE;SACpJ;QACD,OAAO,EAAE,6JAA6J;QACtK,QAAQ,EAAE;YACR,iDAAiD;YACjD,uGAAuG;YACvG,kFAAkF;YAClF,4DAA4D;YAC5D,4FAA4F;SAC7F;QACD,QAAQ,EAAE;YACR,oDAAoD;YACpD,2CAA2C;YAC3C,iDAAiD;YACjD,4CAA4C;SAC7C;QACD,WAAW,EAAE,wDAAwD;QACrE,aAAa,EAAE;YACb,yDAAyD;YACzD,0CAA0C;YAC1C,8DAA8D;SAC/D;QACD,QAAQ,EAAE;YACR,iEAAiE;YACjE,uEAAuE;SACxE;QACD,YAAY,EAAE,CAAC,iCAAiC,EAAE,yCAAyC,EAAE,wCAAwC,CAAC;KACvI;CACF,CAAC"}
@@ -1,3 +0,0 @@
1
- import { ToolDocumentation } from '../types';
2
- export declare const getTemplatesForTaskDoc: ToolDocumentation;
3
- //# sourceMappingURL=get-templates-for-task.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"get-templates-for-task.d.ts","sourceRoot":"","sources":["../../../../src/mcp/tool-docs/templates/get-templates-for-task.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAE7C,eAAO,MAAM,sBAAsB,EAAE,iBAuEpC,CAAC"}
@@ -1,76 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getTemplatesForTaskDoc = void 0;
4
- exports.getTemplatesForTaskDoc = {
5
- name: 'get_templates_for_task',
6
- category: 'templates',
7
- essentials: {
8
- description: 'Curated templates by task: ai_automation, data_sync, webhooks, email, slack, data_transform, files, scheduling, api, database.',
9
- keyParameters: ['task'],
10
- example: 'get_templates_for_task({task: "slack_integration"})',
11
- performance: 'Fast (<100ms) - pre-categorized results',
12
- tips: [
13
- 'Returns hand-picked templates for specific automation tasks',
14
- 'Available tasks: ai_automation, data_sync, webhook_processing, email_automation, slack_integration, etc.',
15
- 'Templates are curated for quality and relevance'
16
- ]
17
- },
18
- full: {
19
- description: `Retrieves curated workflow templates for specific automation tasks. This tool provides hand-picked templates organized by common use cases, making it easy to find the right workflow for your needs. Each task category contains the most popular and effective templates for that particular automation scenario.`,
20
- parameters: {
21
- task: {
22
- type: 'string',
23
- required: true,
24
- description: 'The type of task to get templates for. Options: ai_automation, data_sync, webhook_processing, email_automation, slack_integration, data_transformation, file_processing, scheduling, api_integration, database_operations'
25
- }
26
- },
27
- returns: `Returns an object containing:
28
- - task: The requested task type
29
- - templates: Array of curated templates
30
- - id: Template ID
31
- - name: Template name
32
- - description: What the workflow does
33
- - author: Creator information
34
- - nodes: Array of node types used
35
- - views: Popularity metric
36
- - created: Creation date
37
- - url: Link to template
38
- - totalFound: Number of templates in this category
39
- - availableTasks: List of all task categories (if no templates found)`,
40
- examples: [
41
- 'get_templates_for_task({task: "slack_integration"}) - Get Slack automation workflows',
42
- 'get_templates_for_task({task: "ai_automation"}) - Get AI-powered workflows',
43
- 'get_templates_for_task({task: "data_sync"}) - Get data synchronization workflows',
44
- 'get_templates_for_task({task: "webhook_processing"}) - Get webhook handler workflows',
45
- 'get_templates_for_task({task: "email_automation"}) - Get email automation workflows'
46
- ],
47
- useCases: [
48
- 'Find workflows for specific business needs',
49
- 'Discover best practices for common automations',
50
- 'Get started quickly with pre-built solutions',
51
- 'Learn patterns for specific integration types',
52
- 'Browse curated collections of quality workflows'
53
- ],
54
- performance: `Excellent performance with pre-categorized templates:
55
- - Query time: <10ms (indexed by task)
56
- - No filtering needed (pre-curated)
57
- - Returns 5-20 templates per category
58
- - Total response time: <100ms`,
59
- bestPractices: [
60
- 'Start with task-based search for faster results',
61
- 'Review multiple templates to find best patterns',
62
- 'Check template age for most current approaches',
63
- 'Combine templates from same category for complex workflows',
64
- 'Use returned node lists to understand requirements'
65
- ],
66
- pitfalls: [
67
- 'Not all tasks have many templates available',
68
- 'Task categories are predefined - no custom categories',
69
- 'Some templates may overlap between categories',
70
- 'Curation is subjective - browse all results',
71
- 'Templates may need updates for latest n8n features'
72
- ],
73
- relatedTools: ['search_templates', 'list_node_templates', 'get_template', 'list_tasks']
74
- }
75
- };
76
- //# sourceMappingURL=get-templates-for-task.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"get-templates-for-task.js","sourceRoot":"","sources":["../../../../src/mcp/tool-docs/templates/get-templates-for-task.ts"],"names":[],"mappings":";;;AAEa,QAAA,sBAAsB,GAAsB;IACvD,IAAI,EAAE,wBAAwB;IAC9B,QAAQ,EAAE,WAAW;IACrB,UAAU,EAAE;QACV,WAAW,EAAE,gIAAgI;QAC7I,aAAa,EAAE,CAAC,MAAM,CAAC;QACvB,OAAO,EAAE,qDAAqD;QAC9D,WAAW,EAAE,yCAAyC;QACtD,IAAI,EAAE;YACJ,6DAA6D;YAC7D,0GAA0G;YAC1G,iDAAiD;SAClD;KACF;IACD,IAAI,EAAE;QACJ,WAAW,EAAE,qTAAqT;QAClU,UAAU,EAAE;YACV,IAAI,EAAE;gBACJ,IAAI,EAAE,QAAQ;gBACd,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE,2NAA2N;aACzO;SACF;QACD,OAAO,EAAE;;;;;;;;;;;;sEAYyD;QAClE,QAAQ,EAAE;YACR,sFAAsF;YACtF,4EAA4E;YAC5E,kFAAkF;YAClF,sFAAsF;YACtF,qFAAqF;SACtF;QACD,QAAQ,EAAE;YACR,4CAA4C;YAC5C,gDAAgD;YAChD,8CAA8C;YAC9C,+CAA+C;YAC/C,iDAAiD;SAClD;QACD,WAAW,EAAE;;;;8BAIa;QAC1B,aAAa,EAAE;YACb,iDAAiD;YACjD,iDAAiD;YACjD,gDAAgD;YAChD,4DAA4D;YAC5D,oDAAoD;SACrD;QACD,QAAQ,EAAE;YACR,6CAA6C;YAC7C,uDAAuD;YACvD,+CAA+C;YAC/C,6CAA6C;YAC7C,oDAAoD;SACrD;QACD,YAAY,EAAE,CAAC,kBAAkB,EAAE,qBAAqB,EAAE,cAAc,EAAE,YAAY,CAAC;KACxF;CACF,CAAC"}
@@ -1,3 +0,0 @@
1
- import { ToolDocumentation } from '../types';
2
- export declare const listNodeTemplatesDoc: ToolDocumentation;
3
- //# sourceMappingURL=list-node-templates.d.ts.map