n8n-mcp 2.7.15 → 2.7.17
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.
- package/.env.example +1 -0
- package/README.md +48 -2
- package/data/nodes.db +0 -0
- package/dist/http-server-single-session.d.ts.map +1 -1
- package/dist/http-server-single-session.js +18 -0
- package/dist/http-server-single-session.js.map +1 -1
- package/dist/http-server.d.ts.map +1 -1
- package/dist/http-server.js +18 -0
- package/dist/http-server.js.map +1 -1
- package/dist/mcp/server.d.ts.map +1 -1
- package/dist/mcp/server.js +0 -3
- package/dist/mcp/server.js.map +1 -1
- package/dist/mcp/tool-docs/configuration/get-node-as-tool-info.d.ts +3 -0
- package/dist/mcp/tool-docs/configuration/get-node-as-tool-info.d.ts.map +1 -0
- package/dist/mcp/tool-docs/configuration/get-node-as-tool-info.js +73 -0
- package/dist/mcp/tool-docs/configuration/get-node-as-tool-info.js.map +1 -0
- package/dist/mcp/tool-docs/configuration/get-node-documentation.d.ts +3 -0
- package/dist/mcp/tool-docs/configuration/get-node-documentation.d.ts.map +1 -0
- package/dist/mcp/tool-docs/configuration/get-node-documentation.js +47 -0
- package/dist/mcp/tool-docs/configuration/get-node-documentation.js.map +1 -0
- package/dist/mcp/tool-docs/configuration/get-node-essentials.d.ts +3 -0
- package/dist/mcp/tool-docs/configuration/get-node-essentials.d.ts.map +1 -0
- package/dist/mcp/tool-docs/configuration/get-node-essentials.js +88 -0
- package/dist/mcp/tool-docs/configuration/get-node-essentials.js.map +1 -0
- package/dist/mcp/tool-docs/configuration/get-node-info.d.ts +3 -0
- package/dist/mcp/tool-docs/configuration/get-node-info.d.ts.map +1 -0
- package/dist/mcp/tool-docs/configuration/get-node-info.js +100 -0
- package/dist/mcp/tool-docs/configuration/get-node-info.js.map +1 -0
- package/dist/mcp/tool-docs/configuration/get-property-dependencies.d.ts +3 -0
- package/dist/mcp/tool-docs/configuration/get-property-dependencies.d.ts.map +1 -0
- package/dist/mcp/tool-docs/configuration/get-property-dependencies.js +81 -0
- package/dist/mcp/tool-docs/configuration/get-property-dependencies.js.map +1 -0
- package/dist/mcp/tool-docs/configuration/index.d.ts +7 -0
- package/dist/mcp/tool-docs/configuration/index.d.ts.map +1 -0
- package/dist/mcp/tool-docs/configuration/index.js +16 -0
- package/dist/mcp/tool-docs/configuration/index.js.map +1 -0
- package/dist/mcp/tool-docs/configuration/search-node-properties.d.ts +3 -0
- package/dist/mcp/tool-docs/configuration/search-node-properties.d.ts.map +1 -0
- package/dist/mcp/tool-docs/configuration/search-node-properties.js +99 -0
- package/dist/mcp/tool-docs/configuration/search-node-properties.js.map +1 -0
- package/dist/mcp/tool-docs/discovery/get-database-statistics.d.ts +3 -0
- package/dist/mcp/tool-docs/discovery/get-database-statistics.d.ts.map +1 -0
- package/dist/mcp/tool-docs/discovery/get-database-statistics.js +69 -0
- package/dist/mcp/tool-docs/discovery/get-database-statistics.js.map +1 -0
- package/dist/mcp/tool-docs/discovery/index.d.ts +5 -0
- package/dist/mcp/tool-docs/discovery/index.d.ts.map +1 -0
- package/dist/mcp/tool-docs/discovery/index.js +12 -0
- package/dist/mcp/tool-docs/discovery/index.js.map +1 -0
- package/dist/mcp/tool-docs/discovery/list-ai-tools.d.ts +3 -0
- package/dist/mcp/tool-docs/discovery/list-ai-tools.d.ts.map +1 -0
- package/dist/mcp/tool-docs/discovery/list-ai-tools.js +49 -0
- package/dist/mcp/tool-docs/discovery/list-ai-tools.js.map +1 -0
- package/dist/mcp/tool-docs/discovery/list-nodes.d.ts +3 -0
- package/dist/mcp/tool-docs/discovery/list-nodes.d.ts.map +1 -0
- package/dist/mcp/tool-docs/discovery/list-nodes.js +54 -0
- package/dist/mcp/tool-docs/discovery/list-nodes.js.map +1 -0
- package/dist/mcp/tool-docs/discovery/search-nodes.d.ts +3 -0
- package/dist/mcp/tool-docs/discovery/search-nodes.d.ts.map +1 -0
- package/dist/mcp/tool-docs/discovery/search-nodes.js +56 -0
- package/dist/mcp/tool-docs/discovery/search-nodes.js.map +1 -0
- package/dist/mcp/tool-docs/index.d.ts +4 -0
- package/dist/mcp/tool-docs/index.d.ts.map +1 -0
- package/dist/mcp/tool-docs/index.js +51 -0
- package/dist/mcp/tool-docs/index.js.map +1 -0
- package/dist/mcp/tool-docs/special/code-node-guide.d.ts +3 -0
- package/dist/mcp/tool-docs/special/code-node-guide.d.ts.map +1 -0
- package/dist/mcp/tool-docs/special/code-node-guide.js +61 -0
- package/dist/mcp/tool-docs/special/code-node-guide.js.map +1 -0
- package/dist/mcp/tool-docs/special/index.d.ts +2 -0
- package/dist/mcp/tool-docs/special/index.d.ts.map +1 -0
- package/dist/mcp/tool-docs/special/index.js +6 -0
- package/dist/mcp/tool-docs/special/index.js.map +1 -0
- package/dist/mcp/tool-docs/system/index.d.ts +5 -0
- package/dist/mcp/tool-docs/system/index.d.ts.map +1 -0
- package/dist/mcp/tool-docs/system/index.js +12 -0
- package/dist/mcp/tool-docs/system/index.js.map +1 -0
- package/dist/mcp/tool-docs/system/n8n-diagnostic.d.ts +3 -0
- package/dist/mcp/tool-docs/system/n8n-diagnostic.d.ts.map +1 -0
- package/dist/mcp/tool-docs/system/n8n-diagnostic.js +81 -0
- package/dist/mcp/tool-docs/system/n8n-diagnostic.js.map +1 -0
- package/dist/mcp/tool-docs/system/n8n-health-check.d.ts +3 -0
- package/dist/mcp/tool-docs/system/n8n-health-check.d.ts.map +1 -0
- package/dist/mcp/tool-docs/system/n8n-health-check.js +77 -0
- package/dist/mcp/tool-docs/system/n8n-health-check.js.map +1 -0
- package/dist/mcp/tool-docs/system/n8n-list-available-tools.d.ts +3 -0
- package/dist/mcp/tool-docs/system/n8n-list-available-tools.d.ts.map +1 -0
- package/dist/mcp/tool-docs/system/n8n-list-available-tools.js +75 -0
- package/dist/mcp/tool-docs/system/n8n-list-available-tools.js.map +1 -0
- package/dist/mcp/tool-docs/system/tools-documentation.d.ts +3 -0
- package/dist/mcp/tool-docs/system/tools-documentation.d.ts.map +1 -0
- package/dist/mcp/tool-docs/system/tools-documentation.js +65 -0
- package/dist/mcp/tool-docs/system/tools-documentation.js.map +1 -0
- package/dist/mcp/tool-docs/templates/get-node-for-task.d.ts +3 -0
- package/dist/mcp/tool-docs/templates/get-node-for-task.d.ts.map +1 -0
- package/dist/mcp/tool-docs/templates/get-node-for-task.js +50 -0
- package/dist/mcp/tool-docs/templates/get-node-for-task.js.map +1 -0
- package/dist/mcp/tool-docs/templates/get-template.d.ts +3 -0
- package/dist/mcp/tool-docs/templates/get-template.d.ts.map +1 -0
- package/dist/mcp/tool-docs/templates/get-template.js +76 -0
- package/dist/mcp/tool-docs/templates/get-template.js.map +1 -0
- package/dist/mcp/tool-docs/templates/get-templates-for-task.d.ts +3 -0
- package/dist/mcp/tool-docs/templates/get-templates-for-task.d.ts.map +1 -0
- package/dist/mcp/tool-docs/templates/get-templates-for-task.js +76 -0
- package/dist/mcp/tool-docs/templates/get-templates-for-task.js.map +1 -0
- package/dist/mcp/tool-docs/templates/index.d.ts +7 -0
- package/dist/mcp/tool-docs/templates/index.d.ts.map +1 -0
- package/dist/mcp/tool-docs/templates/index.js +16 -0
- package/dist/mcp/tool-docs/templates/index.js.map +1 -0
- package/dist/mcp/tool-docs/templates/list-node-templates.d.ts +3 -0
- package/dist/mcp/tool-docs/templates/list-node-templates.d.ts.map +1 -0
- package/dist/mcp/tool-docs/templates/list-node-templates.js +80 -0
- package/dist/mcp/tool-docs/templates/list-node-templates.js.map +1 -0
- package/dist/mcp/tool-docs/templates/list-tasks.d.ts +3 -0
- package/dist/mcp/tool-docs/templates/list-tasks.d.ts.map +1 -0
- package/dist/mcp/tool-docs/templates/list-tasks.js +48 -0
- package/dist/mcp/tool-docs/templates/list-tasks.js.map +1 -0
- package/dist/mcp/tool-docs/templates/search-templates.d.ts +3 -0
- package/dist/mcp/tool-docs/templates/search-templates.d.ts.map +1 -0
- package/dist/mcp/tool-docs/templates/search-templates.js +83 -0
- package/dist/mcp/tool-docs/templates/search-templates.js.map +1 -0
- package/dist/mcp/tool-docs/types.d.ts +30 -0
- package/dist/mcp/tool-docs/types.d.ts.map +1 -0
- package/dist/mcp/tool-docs/types.js +3 -0
- package/dist/mcp/tool-docs/types.js.map +1 -0
- package/dist/mcp/tool-docs/validation/index.d.ts +6 -0
- package/dist/mcp/tool-docs/validation/index.d.ts.map +1 -0
- package/dist/mcp/tool-docs/validation/index.js +14 -0
- package/dist/mcp/tool-docs/validation/index.js.map +1 -0
- package/dist/mcp/tool-docs/validation/validate-node-minimal.d.ts +3 -0
- package/dist/mcp/tool-docs/validation/validate-node-minimal.d.ts.map +1 -0
- package/dist/mcp/tool-docs/validation/validate-node-minimal.js +49 -0
- package/dist/mcp/tool-docs/validation/validate-node-minimal.js.map +1 -0
- package/dist/mcp/tool-docs/validation/validate-node-operation.d.ts +3 -0
- package/dist/mcp/tool-docs/validation/validate-node-operation.d.ts.map +1 -0
- package/dist/mcp/tool-docs/validation/validate-node-operation.js +94 -0
- package/dist/mcp/tool-docs/validation/validate-node-operation.js.map +1 -0
- package/dist/mcp/tool-docs/validation/validate-workflow-connections.d.ts +3 -0
- package/dist/mcp/tool-docs/validation/validate-workflow-connections.d.ts.map +1 -0
- package/dist/mcp/tool-docs/validation/validate-workflow-connections.js +58 -0
- package/dist/mcp/tool-docs/validation/validate-workflow-connections.js.map +1 -0
- package/dist/mcp/tool-docs/validation/validate-workflow-expressions.d.ts +3 -0
- package/dist/mcp/tool-docs/validation/validate-workflow-expressions.d.ts.map +1 -0
- package/dist/mcp/tool-docs/validation/validate-workflow-expressions.js +58 -0
- package/dist/mcp/tool-docs/validation/validate-workflow-expressions.js.map +1 -0
- package/dist/mcp/tool-docs/validation/validate-workflow.d.ts +3 -0
- package/dist/mcp/tool-docs/validation/validate-workflow.d.ts.map +1 -0
- package/dist/mcp/tool-docs/validation/validate-workflow.js +83 -0
- package/dist/mcp/tool-docs/validation/validate-workflow.js.map +1 -0
- package/dist/mcp/tool-docs/workflow_management/index.d.ts +15 -0
- package/dist/mcp/tool-docs/workflow_management/index.d.ts.map +1 -0
- package/dist/mcp/tool-docs/workflow_management/index.js +32 -0
- package/dist/mcp/tool-docs/workflow_management/index.js.map +1 -0
- package/dist/mcp/tool-docs/workflow_management/n8n-create-workflow.d.ts +3 -0
- package/dist/mcp/tool-docs/workflow_management/n8n-create-workflow.d.ts.map +1 -0
- package/dist/mcp/tool-docs/workflow_management/n8n-create-workflow.js +99 -0
- package/dist/mcp/tool-docs/workflow_management/n8n-create-workflow.js.map +1 -0
- package/dist/mcp/tool-docs/workflow_management/n8n-delete-execution.d.ts +3 -0
- package/dist/mcp/tool-docs/workflow_management/n8n-delete-execution.d.ts.map +1 -0
- package/dist/mcp/tool-docs/workflow_management/n8n-delete-execution.js +59 -0
- package/dist/mcp/tool-docs/workflow_management/n8n-delete-execution.js.map +1 -0
- package/dist/mcp/tool-docs/workflow_management/n8n-delete-workflow.d.ts +3 -0
- package/dist/mcp/tool-docs/workflow_management/n8n-delete-workflow.d.ts.map +1 -0
- package/dist/mcp/tool-docs/workflow_management/n8n-delete-workflow.js +52 -0
- package/dist/mcp/tool-docs/workflow_management/n8n-delete-workflow.js.map +1 -0
- package/dist/mcp/tool-docs/workflow_management/n8n-get-execution.d.ts +3 -0
- package/dist/mcp/tool-docs/workflow_management/n8n-get-execution.d.ts.map +1 -0
- package/dist/mcp/tool-docs/workflow_management/n8n-get-execution.js +64 -0
- package/dist/mcp/tool-docs/workflow_management/n8n-get-execution.js.map +1 -0
- package/dist/mcp/tool-docs/workflow_management/n8n-get-workflow-details.d.ts +3 -0
- package/dist/mcp/tool-docs/workflow_management/n8n-get-workflow-details.d.ts.map +1 -0
- package/dist/mcp/tool-docs/workflow_management/n8n-get-workflow-details.js +51 -0
- package/dist/mcp/tool-docs/workflow_management/n8n-get-workflow-details.js.map +1 -0
- package/dist/mcp/tool-docs/workflow_management/n8n-get-workflow-minimal.d.ts +3 -0
- package/dist/mcp/tool-docs/workflow_management/n8n-get-workflow-minimal.d.ts.map +1 -0
- package/dist/mcp/tool-docs/workflow_management/n8n-get-workflow-minimal.js +51 -0
- package/dist/mcp/tool-docs/workflow_management/n8n-get-workflow-minimal.js.map +1 -0
- package/dist/mcp/tool-docs/workflow_management/n8n-get-workflow-structure.d.ts +3 -0
- package/dist/mcp/tool-docs/workflow_management/n8n-get-workflow-structure.d.ts.map +1 -0
- package/dist/mcp/tool-docs/workflow_management/n8n-get-workflow-structure.js +51 -0
- package/dist/mcp/tool-docs/workflow_management/n8n-get-workflow-structure.js.map +1 -0
- package/dist/mcp/tool-docs/workflow_management/n8n-get-workflow.d.ts +3 -0
- package/dist/mcp/tool-docs/workflow_management/n8n-get-workflow.d.ts.map +1 -0
- package/dist/mcp/tool-docs/workflow_management/n8n-get-workflow.js +51 -0
- package/dist/mcp/tool-docs/workflow_management/n8n-get-workflow.js.map +1 -0
- package/dist/mcp/tool-docs/workflow_management/n8n-list-executions.d.ts +3 -0
- package/dist/mcp/tool-docs/workflow_management/n8n-list-executions.d.ts.map +1 -0
- package/dist/mcp/tool-docs/workflow_management/n8n-list-executions.js +86 -0
- package/dist/mcp/tool-docs/workflow_management/n8n-list-executions.js.map +1 -0
- package/dist/mcp/tool-docs/workflow_management/n8n-list-workflows.d.ts +3 -0
- package/dist/mcp/tool-docs/workflow_management/n8n-list-workflows.d.ts.map +1 -0
- package/dist/mcp/tool-docs/workflow_management/n8n-list-workflows.js +57 -0
- package/dist/mcp/tool-docs/workflow_management/n8n-list-workflows.js.map +1 -0
- package/dist/mcp/tool-docs/workflow_management/n8n-trigger-webhook-workflow.d.ts +3 -0
- package/dist/mcp/tool-docs/workflow_management/n8n-trigger-webhook-workflow.d.ts.map +1 -0
- package/dist/mcp/tool-docs/workflow_management/n8n-trigger-webhook-workflow.js +80 -0
- package/dist/mcp/tool-docs/workflow_management/n8n-trigger-webhook-workflow.js.map +1 -0
- package/dist/mcp/tool-docs/workflow_management/n8n-update-full-workflow.d.ts +3 -0
- package/dist/mcp/tool-docs/workflow_management/n8n-update-full-workflow.d.ts.map +1 -0
- package/dist/mcp/tool-docs/workflow_management/n8n-update-full-workflow.js +57 -0
- package/dist/mcp/tool-docs/workflow_management/n8n-update-full-workflow.js.map +1 -0
- package/dist/mcp/tool-docs/workflow_management/n8n-update-partial-workflow.d.ts +3 -0
- package/dist/mcp/tool-docs/workflow_management/n8n-update-partial-workflow.d.ts.map +1 -0
- package/dist/mcp/tool-docs/workflow_management/n8n-update-partial-workflow.js +82 -0
- package/dist/mcp/tool-docs/workflow_management/n8n-update-partial-workflow.js.map +1 -0
- package/dist/mcp/tool-docs/workflow_management/n8n-validate-workflow.d.ts +3 -0
- package/dist/mcp/tool-docs/workflow_management/n8n-validate-workflow.d.ts.map +1 -0
- package/dist/mcp/tool-docs/workflow_management/n8n-validate-workflow.js +73 -0
- package/dist/mcp/tool-docs/workflow_management/n8n-validate-workflow.js.map +1 -0
- package/dist/mcp/tools-documentation-new.d.ts +6 -0
- package/dist/mcp/tools-documentation-new.d.ts.map +1 -0
- package/dist/mcp/tools-documentation-new.js +163 -0
- package/dist/mcp/tools-documentation-new.js.map +1 -0
- package/dist/mcp/tools-documentation.d.ts +1 -29
- package/dist/mcp/tools-documentation.d.ts.map +1 -1
- package/dist/mcp/tools-documentation.js +506 -1235
- package/dist/mcp/tools-documentation.js.map +1 -1
- package/dist/scripts/rebuild.js +2 -1
- package/dist/scripts/rebuild.js.map +1 -1
- package/dist/scripts/test-tools-documentation.d.ts +2 -0
- package/dist/scripts/test-tools-documentation.d.ts.map +1 -0
- package/dist/scripts/test-tools-documentation.js +41 -0
- package/dist/scripts/test-tools-documentation.js.map +1 -0
- package/dist/services/enhanced-config-validator.d.ts +0 -1
- package/dist/services/enhanced-config-validator.d.ts.map +1 -1
- package/dist/services/enhanced-config-validator.js +2 -91
- package/dist/services/enhanced-config-validator.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.n8nHealthCheckDoc = void 0;
|
|
4
|
+
exports.n8nHealthCheckDoc = {
|
|
5
|
+
name: 'n8n_health_check',
|
|
6
|
+
category: 'system',
|
|
7
|
+
essentials: {
|
|
8
|
+
description: 'Check n8n instance health, API connectivity, and available features',
|
|
9
|
+
keyParameters: [],
|
|
10
|
+
example: 'n8n_health_check({})',
|
|
11
|
+
performance: 'Fast - single API call to health endpoint',
|
|
12
|
+
tips: [
|
|
13
|
+
'Use before starting workflow operations to ensure n8n is responsive',
|
|
14
|
+
'Check regularly in production environments for monitoring',
|
|
15
|
+
'Returns version info and feature availability for compatibility checks'
|
|
16
|
+
]
|
|
17
|
+
},
|
|
18
|
+
full: {
|
|
19
|
+
description: `Performs a comprehensive health check of the configured n8n instance through its API.
|
|
20
|
+
|
|
21
|
+
This tool verifies:
|
|
22
|
+
- API endpoint accessibility and response time
|
|
23
|
+
- n8n instance version and build information
|
|
24
|
+
- Authentication status and permissions
|
|
25
|
+
- Available features and enterprise capabilities
|
|
26
|
+
- Database connectivity (as reported by n8n)
|
|
27
|
+
- Queue system status (if configured)
|
|
28
|
+
|
|
29
|
+
Health checks are crucial for:
|
|
30
|
+
- Monitoring n8n instance availability
|
|
31
|
+
- Detecting performance degradation
|
|
32
|
+
- Verifying API compatibility before operations
|
|
33
|
+
- Ensuring authentication is working correctly`,
|
|
34
|
+
parameters: {},
|
|
35
|
+
returns: `Health status object containing:
|
|
36
|
+
- status: Overall health status ('healthy', 'degraded', 'error')
|
|
37
|
+
- version: n8n instance version information
|
|
38
|
+
- instanceId: Unique identifier for the n8n instance
|
|
39
|
+
- features: Object listing available features and their status
|
|
40
|
+
- apiVersion: API version for compatibility checking
|
|
41
|
+
- responseTime: API response time in milliseconds
|
|
42
|
+
- timestamp: Check timestamp
|
|
43
|
+
- details: Additional health metrics from n8n`,
|
|
44
|
+
examples: [
|
|
45
|
+
'n8n_health_check({}) - Standard health check',
|
|
46
|
+
'// Use in monitoring scripts\nconst health = await n8n_health_check({});\nif (health.status !== "healthy") alert("n8n is down!");',
|
|
47
|
+
'// Check before critical operations\nconst health = await n8n_health_check({});\nif (health.responseTime > 1000) console.warn("n8n is slow");'
|
|
48
|
+
],
|
|
49
|
+
useCases: [
|
|
50
|
+
'Pre-flight checks before workflow deployments',
|
|
51
|
+
'Continuous monitoring of n8n instance health',
|
|
52
|
+
'Troubleshooting connectivity or performance issues',
|
|
53
|
+
'Verifying n8n version compatibility with workflows',
|
|
54
|
+
'Detecting feature availability (enterprise features, queue mode, etc.)'
|
|
55
|
+
],
|
|
56
|
+
performance: `Fast response expected:
|
|
57
|
+
- Single HTTP request to /health endpoint
|
|
58
|
+
- Typically responds in <100ms for healthy instances
|
|
59
|
+
- Timeout after 10 seconds indicates severe issues
|
|
60
|
+
- Minimal server load - safe for frequent polling`,
|
|
61
|
+
bestPractices: [
|
|
62
|
+
'Run health checks before batch operations or deployments',
|
|
63
|
+
'Set up automated monitoring with regular health checks',
|
|
64
|
+
'Log response times to detect performance trends',
|
|
65
|
+
'Check version compatibility when deploying workflows',
|
|
66
|
+
'Use health status to implement circuit breaker patterns'
|
|
67
|
+
],
|
|
68
|
+
pitfalls: [
|
|
69
|
+
'Requires N8N_API_URL and N8N_API_KEY to be configured',
|
|
70
|
+
'Network issues may cause false negatives',
|
|
71
|
+
'Does not check individual workflow health',
|
|
72
|
+
'Health endpoint might be cached - not real-time for all metrics'
|
|
73
|
+
],
|
|
74
|
+
relatedTools: ['n8n_diagnostic', 'n8n_list_available_tools', 'n8n_list_workflows']
|
|
75
|
+
}
|
|
76
|
+
};
|
|
77
|
+
//# sourceMappingURL=n8n-health-check.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"n8n-health-check.js","sourceRoot":"","sources":["../../../../src/mcp/tool-docs/system/n8n-health-check.ts"],"names":[],"mappings":";;;AAEa,QAAA,iBAAiB,GAAsB;IAClD,IAAI,EAAE,kBAAkB;IACxB,QAAQ,EAAE,QAAQ;IAClB,UAAU,EAAE;QACV,WAAW,EAAE,qEAAqE;QAClF,aAAa,EAAE,EAAE;QACjB,OAAO,EAAE,sBAAsB;QAC/B,WAAW,EAAE,2CAA2C;QACxD,IAAI,EAAE;YACJ,qEAAqE;YACrE,2DAA2D;YAC3D,wEAAwE;SACzE;KACF;IACD,IAAI,EAAE;QACJ,WAAW,EAAE;;;;;;;;;;;;;;+CAc8B;QAC3C,UAAU,EAAE,EAAE;QACd,OAAO,EAAE;;;;;;;;8CAQiC;QAC1C,QAAQ,EAAE;YACR,8CAA8C;YAC9C,mIAAmI;YACnI,+IAA+I;SAChJ;QACD,QAAQ,EAAE;YACR,+CAA+C;YAC/C,8CAA8C;YAC9C,oDAAoD;YACpD,oDAAoD;YACpD,wEAAwE;SACzE;QACD,WAAW,EAAE;;;;kDAIiC;QAC9C,aAAa,EAAE;YACb,0DAA0D;YAC1D,wDAAwD;YACxD,iDAAiD;YACjD,sDAAsD;YACtD,yDAAyD;SAC1D;QACD,QAAQ,EAAE;YACR,uDAAuD;YACvD,0CAA0C;YAC1C,2CAA2C;YAC3C,iEAAiE;SAClE;QACD,YAAY,EAAE,CAAC,gBAAgB,EAAE,0BAA0B,EAAE,oBAAoB,CAAC;KACnF;CACF,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"n8n-list-available-tools.d.ts","sourceRoot":"","sources":["../../../../src/mcp/tool-docs/system/n8n-list-available-tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAE7C,eAAO,MAAM,wBAAwB,EAAE,iBAsEtC,CAAC"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.n8nListAvailableToolsDoc = void 0;
|
|
4
|
+
exports.n8nListAvailableToolsDoc = {
|
|
5
|
+
name: 'n8n_list_available_tools',
|
|
6
|
+
category: 'system',
|
|
7
|
+
essentials: {
|
|
8
|
+
description: 'List all available n8n management tools and their capabilities',
|
|
9
|
+
keyParameters: [],
|
|
10
|
+
example: 'n8n_list_available_tools({})',
|
|
11
|
+
performance: 'Instant - returns static tool list',
|
|
12
|
+
tips: [
|
|
13
|
+
'Shows only tools available with current API configuration',
|
|
14
|
+
'If no n8n tools appear, run n8n_diagnostic to troubleshoot',
|
|
15
|
+
'Tool availability depends on N8N_API_URL and N8N_API_KEY being set'
|
|
16
|
+
]
|
|
17
|
+
},
|
|
18
|
+
full: {
|
|
19
|
+
description: `Lists all available n8n management tools based on current configuration.
|
|
20
|
+
|
|
21
|
+
This tool provides:
|
|
22
|
+
- Complete list of n8n management tools (when API is configured)
|
|
23
|
+
- Tool descriptions and capabilities
|
|
24
|
+
- Categorized tool listing (workflow, execution, system)
|
|
25
|
+
- Dynamic availability based on API configuration
|
|
26
|
+
|
|
27
|
+
The tool list is dynamic:
|
|
28
|
+
- Shows 14+ management tools when N8N_API_URL and N8N_API_KEY are configured
|
|
29
|
+
- Shows only documentation tools when API is not configured
|
|
30
|
+
- Helps discover available functionality
|
|
31
|
+
- Provides quick reference for tool names and purposes`,
|
|
32
|
+
parameters: {},
|
|
33
|
+
returns: `Object containing:
|
|
34
|
+
- tools: Array of available tool objects, each with:
|
|
35
|
+
- name: Tool identifier (e.g., 'n8n_create_workflow')
|
|
36
|
+
- description: Brief description of tool functionality
|
|
37
|
+
- category: Tool category ('workflow', 'execution', 'system')
|
|
38
|
+
- requiresApi: Whether tool needs API configuration
|
|
39
|
+
- categories: Summary count by category
|
|
40
|
+
- totalTools: Total number of available tools
|
|
41
|
+
- apiConfigured: Whether n8n API is configured`,
|
|
42
|
+
examples: [
|
|
43
|
+
'n8n_list_available_tools({}) - List all available tools',
|
|
44
|
+
'// Check for specific tool availability\nconst tools = await n8n_list_available_tools({});\nconst hasWorkflowTools = tools.tools.some(t => t.category === "workflow");',
|
|
45
|
+
'// Discover management capabilities\nconst result = await n8n_list_available_tools({});\nconsole.log(`${result.totalTools} tools available`);'
|
|
46
|
+
],
|
|
47
|
+
useCases: [
|
|
48
|
+
'Discovering available n8n management capabilities',
|
|
49
|
+
'Checking if API configuration is working correctly',
|
|
50
|
+
'Finding the right tool for a specific task',
|
|
51
|
+
'Generating help documentation or command lists',
|
|
52
|
+
'Verifying tool availability before automation scripts'
|
|
53
|
+
],
|
|
54
|
+
performance: `Instant response:
|
|
55
|
+
- No API calls required
|
|
56
|
+
- Returns pre-defined tool list
|
|
57
|
+
- Filtered based on configuration
|
|
58
|
+
- Zero network overhead`,
|
|
59
|
+
bestPractices: [
|
|
60
|
+
'Check tool availability before building automation workflows',
|
|
61
|
+
'Use with n8n_diagnostic if expected tools are missing',
|
|
62
|
+
'Reference tool names exactly as returned by this tool',
|
|
63
|
+
'Group operations by category for better organization',
|
|
64
|
+
'Cache results as tool list only changes with configuration'
|
|
65
|
+
],
|
|
66
|
+
pitfalls: [
|
|
67
|
+
'Tool list is empty if N8N_API_URL and N8N_API_KEY are not set',
|
|
68
|
+
'Does not validate if tools will actually work - just shows availability',
|
|
69
|
+
'Tool names must be used exactly as returned',
|
|
70
|
+
'Does not show tool parameters - use tools_documentation for details'
|
|
71
|
+
],
|
|
72
|
+
relatedTools: ['n8n_diagnostic', 'n8n_health_check', 'tools_documentation']
|
|
73
|
+
}
|
|
74
|
+
};
|
|
75
|
+
//# sourceMappingURL=n8n-list-available-tools.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"n8n-list-available-tools.js","sourceRoot":"","sources":["../../../../src/mcp/tool-docs/system/n8n-list-available-tools.ts"],"names":[],"mappings":";;;AAEa,QAAA,wBAAwB,GAAsB;IACzD,IAAI,EAAE,0BAA0B;IAChC,QAAQ,EAAE,QAAQ;IAClB,UAAU,EAAE;QACV,WAAW,EAAE,gEAAgE;QAC7E,aAAa,EAAE,EAAE;QACjB,OAAO,EAAE,8BAA8B;QACvC,WAAW,EAAE,oCAAoC;QACjD,IAAI,EAAE;YACJ,2DAA2D;YAC3D,4DAA4D;YAC5D,oEAAoE;SACrE;KACF;IACD,IAAI,EAAE;QACJ,WAAW,EAAE;;;;;;;;;;;;uDAYsC;QACnD,UAAU,EAAE,EAAE;QACd,OAAO,EAAE;;;;;;;;+CAQkC;QAC3C,QAAQ,EAAE;YACR,yDAAyD;YACzD,wKAAwK;YACxK,+IAA+I;SAChJ;QACD,QAAQ,EAAE;YACR,mDAAmD;YACnD,oDAAoD;YACpD,4CAA4C;YAC5C,gDAAgD;YAChD,uDAAuD;SACxD;QACD,WAAW,EAAE;;;;wBAIO;QACpB,aAAa,EAAE;YACb,8DAA8D;YAC9D,uDAAuD;YACvD,uDAAuD;YACvD,sDAAsD;YACtD,4DAA4D;SAC7D;QACD,QAAQ,EAAE;YACR,+DAA+D;YAC/D,yEAAyE;YACzE,6CAA6C;YAC7C,qEAAqE;SACtE;QACD,YAAY,EAAE,CAAC,gBAAgB,EAAE,kBAAkB,EAAE,qBAAqB,CAAC;KAC5E;CACF,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tools-documentation.d.ts","sourceRoot":"","sources":["../../../../src/mcp/tool-docs/system/tools-documentation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAE7C,eAAO,MAAM,qBAAqB,EAAE,iBA4DnC,CAAC"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.toolsDocumentationDoc = void 0;
|
|
4
|
+
exports.toolsDocumentationDoc = {
|
|
5
|
+
name: 'tools_documentation',
|
|
6
|
+
category: 'system',
|
|
7
|
+
essentials: {
|
|
8
|
+
description: 'The meta-documentation tool. Returns documentation for any MCP tool, including itself. Call without parameters for a comprehensive overview of all available tools. This is your starting point for discovering n8n MCP capabilities.',
|
|
9
|
+
keyParameters: ['topic', 'depth'],
|
|
10
|
+
example: 'tools_documentation({topic: "search_nodes"})',
|
|
11
|
+
performance: 'Instant (static content)',
|
|
12
|
+
tips: [
|
|
13
|
+
'Call without parameters first to see all tools',
|
|
14
|
+
'Can document itself: tools_documentation({topic: "tools_documentation"})',
|
|
15
|
+
'Use depth:"full" for comprehensive details'
|
|
16
|
+
]
|
|
17
|
+
},
|
|
18
|
+
full: {
|
|
19
|
+
description: 'The self-referential documentation system for all MCP tools. This tool can document any other tool, including itself. It\'s the primary discovery mechanism for understanding what tools are available and how to use them. Returns utilitarian documentation optimized for AI agent consumption.',
|
|
20
|
+
parameters: {
|
|
21
|
+
topic: { type: 'string', description: 'Tool name (e.g., "search_nodes"), special topic ("javascript_code_node_guide", "python_code_node_guide"), or "overview". Leave empty for quick reference.', required: false },
|
|
22
|
+
depth: { type: 'string', description: 'Level of detail: "essentials" (default, concise) or "full" (comprehensive with examples)', required: false }
|
|
23
|
+
},
|
|
24
|
+
returns: 'Markdown-formatted documentation tailored for the requested tool and depth. For essentials: key info, parameters, example, tips. For full: complete details, all examples, use cases, best practices.',
|
|
25
|
+
examples: [
|
|
26
|
+
'// Get started - see all available tools',
|
|
27
|
+
'tools_documentation()',
|
|
28
|
+
'',
|
|
29
|
+
'// Learn about a specific tool',
|
|
30
|
+
'tools_documentation({topic: "search_nodes"})',
|
|
31
|
+
'',
|
|
32
|
+
'// Get comprehensive details',
|
|
33
|
+
'tools_documentation({topic: "validate_workflow", depth: "full"})',
|
|
34
|
+
'',
|
|
35
|
+
'// Self-referential example - document this tool',
|
|
36
|
+
'tools_documentation({topic: "tools_documentation", depth: "full"})',
|
|
37
|
+
'',
|
|
38
|
+
'// Code node guides',
|
|
39
|
+
'tools_documentation({topic: "javascript_code_node_guide"})',
|
|
40
|
+
'tools_documentation({topic: "python_code_node_guide"})'
|
|
41
|
+
],
|
|
42
|
+
useCases: [
|
|
43
|
+
'Initial discovery of available MCP tools',
|
|
44
|
+
'Learning how to use specific tools',
|
|
45
|
+
'Finding required and optional parameters',
|
|
46
|
+
'Getting working examples to copy',
|
|
47
|
+
'Understanding tool performance characteristics',
|
|
48
|
+
'Discovering related tools for workflows'
|
|
49
|
+
],
|
|
50
|
+
performance: 'Instant - all documentation is pre-loaded in memory',
|
|
51
|
+
bestPractices: [
|
|
52
|
+
'Always start with tools_documentation() to see available tools',
|
|
53
|
+
'Use essentials for quick parameter reference during coding',
|
|
54
|
+
'Switch to full depth when debugging or learning new tools',
|
|
55
|
+
'Check Code node guides when working with Code nodes'
|
|
56
|
+
],
|
|
57
|
+
pitfalls: [
|
|
58
|
+
'Tool names must match exactly - use the overview to find correct names',
|
|
59
|
+
'Not all internal functions are documented',
|
|
60
|
+
'Special topics (code guides) require exact names'
|
|
61
|
+
],
|
|
62
|
+
relatedTools: ['n8n_list_available_tools for dynamic tool discovery', 'list_tasks for common configurations', 'get_database_statistics to verify MCP connection']
|
|
63
|
+
}
|
|
64
|
+
};
|
|
65
|
+
//# sourceMappingURL=tools-documentation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tools-documentation.js","sourceRoot":"","sources":["../../../../src/mcp/tool-docs/system/tools-documentation.ts"],"names":[],"mappings":";;;AAEa,QAAA,qBAAqB,GAAsB;IACtD,IAAI,EAAE,qBAAqB;IAC3B,QAAQ,EAAE,QAAQ;IAClB,UAAU,EAAE;QACV,WAAW,EAAE,uOAAuO;QACpP,aAAa,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC;QACjC,OAAO,EAAE,8CAA8C;QACvD,WAAW,EAAE,0BAA0B;QACvC,IAAI,EAAE;YACJ,gDAAgD;YAChD,0EAA0E;YAC1E,4CAA4C;SAC7C;KACF;IACD,IAAI,EAAE;QACJ,WAAW,EAAE,mSAAmS;QAChT,UAAU,EAAE;YACV,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,2JAA2J,EAAE,QAAQ,EAAE,KAAK,EAAE;YACpN,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,0FAA0F,EAAE,QAAQ,EAAE,KAAK,EAAE;SACpJ;QACD,OAAO,EAAE,uMAAuM;QAChN,QAAQ,EAAE;YACR,0CAA0C;YAC1C,uBAAuB;YACvB,EAAE;YACF,gCAAgC;YAChC,8CAA8C;YAC9C,EAAE;YACF,8BAA8B;YAC9B,kEAAkE;YAClE,EAAE;YACF,kDAAkD;YAClD,oEAAoE;YACpE,EAAE;YACF,qBAAqB;YACrB,4DAA4D;YAC5D,wDAAwD;SACzD;QACD,QAAQ,EAAE;YACR,0CAA0C;YAC1C,oCAAoC;YACpC,0CAA0C;YAC1C,kCAAkC;YAClC,gDAAgD;YAChD,yCAAyC;SAC1C;QACD,WAAW,EAAE,qDAAqD;QAClE,aAAa,EAAE;YACb,gEAAgE;YAChE,4DAA4D;YAC5D,2DAA2D;YAC3D,qDAAqD;SACtD;QACD,QAAQ,EAAE;YACR,wEAAwE;YACxE,2CAA2C;YAC3C,kDAAkD;SACnD;QACD,YAAY,EAAE,CAAC,qDAAqD,EAAE,sCAAsC,EAAE,kDAAkD,CAAC;KAClK;CACF,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-node-for-task.d.ts","sourceRoot":"","sources":["../../../../src/mcp/tool-docs/templates/get-node-for-task.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAE7C,eAAO,MAAM,iBAAiB,EAAE,iBA6C/B,CAAC"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getNodeForTaskDoc = void 0;
|
|
4
|
+
exports.getNodeForTaskDoc = {
|
|
5
|
+
name: 'get_node_for_task',
|
|
6
|
+
category: 'templates',
|
|
7
|
+
essentials: {
|
|
8
|
+
description: 'Get pre-configured node for tasks: post_json_request, receive_webhook, query_database, send_slack_message, etc. Use list_tasks for all.',
|
|
9
|
+
keyParameters: ['task'],
|
|
10
|
+
example: 'get_node_for_task({task: "post_json_request"})',
|
|
11
|
+
performance: 'Instant',
|
|
12
|
+
tips: [
|
|
13
|
+
'Returns ready-to-use configuration',
|
|
14
|
+
'See list_tasks for available tasks',
|
|
15
|
+
'Includes credentials structure'
|
|
16
|
+
]
|
|
17
|
+
},
|
|
18
|
+
full: {
|
|
19
|
+
description: 'Returns pre-configured node settings for common automation tasks. Each configuration includes the correct node type, essential parameters, and credential requirements. Perfect for quickly setting up standard automations.',
|
|
20
|
+
parameters: {
|
|
21
|
+
task: { type: 'string', required: true, description: 'Task name from list_tasks (e.g., "post_json_request", "send_email")' }
|
|
22
|
+
},
|
|
23
|
+
returns: 'Complete node configuration with type, displayName, parameters, credentials structure',
|
|
24
|
+
examples: [
|
|
25
|
+
'get_node_for_task({task: "post_json_request"}) - HTTP POST setup',
|
|
26
|
+
'get_node_for_task({task: "receive_webhook"}) - Webhook receiver',
|
|
27
|
+
'get_node_for_task({task: "send_slack_message"}) - Slack config'
|
|
28
|
+
],
|
|
29
|
+
useCases: [
|
|
30
|
+
'Quick node configuration',
|
|
31
|
+
'Learning proper node setup',
|
|
32
|
+
'Standard automation patterns',
|
|
33
|
+
'Credential structure reference'
|
|
34
|
+
],
|
|
35
|
+
performance: 'Instant - Pre-configured templates',
|
|
36
|
+
bestPractices: [
|
|
37
|
+
'Use list_tasks to discover options',
|
|
38
|
+
'Customize returned config as needed',
|
|
39
|
+
'Check credential requirements',
|
|
40
|
+
'Validate with validate_node_operation'
|
|
41
|
+
],
|
|
42
|
+
pitfalls: [
|
|
43
|
+
'Templates may need customization',
|
|
44
|
+
'Credentials must be configured separately',
|
|
45
|
+
'Not all tasks available for all nodes'
|
|
46
|
+
],
|
|
47
|
+
relatedTools: ['list_tasks', 'validate_node_operation', 'get_node_essentials']
|
|
48
|
+
}
|
|
49
|
+
};
|
|
50
|
+
//# sourceMappingURL=get-node-for-task.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-node-for-task.js","sourceRoot":"","sources":["../../../../src/mcp/tool-docs/templates/get-node-for-task.ts"],"names":[],"mappings":";;;AAEa,QAAA,iBAAiB,GAAsB;IAClD,IAAI,EAAE,mBAAmB;IACzB,QAAQ,EAAE,WAAW;IACrB,UAAU,EAAE;QACV,WAAW,EAAE,yIAAyI;QACtJ,aAAa,EAAE,CAAC,MAAM,CAAC;QACvB,OAAO,EAAE,gDAAgD;QACzD,WAAW,EAAE,SAAS;QACtB,IAAI,EAAE;YACJ,oCAAoC;YACpC,oCAAoC;YACpC,gCAAgC;SACjC;KACF;IACD,IAAI,EAAE;QACJ,WAAW,EAAE,8NAA8N;QAC3O,UAAU,EAAE;YACV,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,qEAAqE,EAAE;SAC7H;QACD,OAAO,EAAE,uFAAuF;QAChG,QAAQ,EAAE;YACR,kEAAkE;YAClE,iEAAiE;YACjE,gEAAgE;SACjE;QACD,QAAQ,EAAE;YACR,0BAA0B;YAC1B,4BAA4B;YAC5B,8BAA8B;YAC9B,gCAAgC;SACjC;QACD,WAAW,EAAE,oCAAoC;QACjD,aAAa,EAAE;YACb,oCAAoC;YACpC,qCAAqC;YACrC,+BAA+B;YAC/B,uCAAuC;SACxC;QACD,QAAQ,EAAE;YACR,kCAAkC;YAClC,2CAA2C;YAC3C,uCAAuC;SACxC;QACD,YAAY,EAAE,CAAC,YAAY,EAAE,yBAAyB,EAAE,qBAAqB,CAAC;KAC/E;CACF,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-template.d.ts","sourceRoot":"","sources":["../../../../src/mcp/tool-docs/templates/get-template.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAE7C,eAAO,MAAM,cAAc,EAAE,iBAuE5B,CAAC"}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getTemplateDoc = void 0;
|
|
4
|
+
exports.getTemplateDoc = {
|
|
5
|
+
name: 'get_template',
|
|
6
|
+
category: 'templates',
|
|
7
|
+
essentials: {
|
|
8
|
+
description: 'Get complete workflow JSON by ID. Ready to import. IDs from list_node_templates or search_templates.',
|
|
9
|
+
keyParameters: ['templateId'],
|
|
10
|
+
example: 'get_template({templateId: 1234})',
|
|
11
|
+
performance: 'Fast (<100ms) - single database lookup',
|
|
12
|
+
tips: [
|
|
13
|
+
'Get template IDs from list_node_templates or search_templates first',
|
|
14
|
+
'Returns complete workflow JSON ready for import into n8n',
|
|
15
|
+
'Includes all nodes, connections, and settings'
|
|
16
|
+
]
|
|
17
|
+
},
|
|
18
|
+
full: {
|
|
19
|
+
description: `Retrieves the complete workflow JSON for a specific template by its ID. The returned workflow can be directly imported into n8n through the UI or API. This tool fetches pre-built workflows from the community template library containing 399+ curated workflows.`,
|
|
20
|
+
parameters: {
|
|
21
|
+
templateId: {
|
|
22
|
+
type: 'number',
|
|
23
|
+
required: true,
|
|
24
|
+
description: 'The numeric ID of the template to retrieve. Get IDs from list_node_templates or search_templates'
|
|
25
|
+
}
|
|
26
|
+
},
|
|
27
|
+
returns: `Returns an object containing:
|
|
28
|
+
- template: Complete template information including workflow JSON
|
|
29
|
+
- id: Template ID
|
|
30
|
+
- name: Template name
|
|
31
|
+
- description: What the workflow does
|
|
32
|
+
- author: Creator information (name, username, verified status)
|
|
33
|
+
- nodes: Array of node types used
|
|
34
|
+
- views: Number of times viewed
|
|
35
|
+
- created: Creation date
|
|
36
|
+
- url: Link to template on n8n.io
|
|
37
|
+
- workflow: Complete workflow JSON with structure:
|
|
38
|
+
- nodes: Array of node objects (id, name, type, typeVersion, position, parameters)
|
|
39
|
+
- connections: Object mapping source nodes to targets
|
|
40
|
+
- settings: Workflow configuration (timezone, error handling, etc.)
|
|
41
|
+
- usage: Instructions for using the workflow`,
|
|
42
|
+
examples: [
|
|
43
|
+
'get_template({templateId: 1234}) - Get Slack notification workflow',
|
|
44
|
+
'get_template({templateId: 5678}) - Get data sync workflow',
|
|
45
|
+
'get_template({templateId: 9012}) - Get AI chatbot workflow'
|
|
46
|
+
],
|
|
47
|
+
useCases: [
|
|
48
|
+
'Download workflows for direct import into n8n',
|
|
49
|
+
'Study workflow patterns and best practices',
|
|
50
|
+
'Get complete workflow JSON for customization',
|
|
51
|
+
'Clone popular workflows for your use case',
|
|
52
|
+
'Learn how complex automations are built'
|
|
53
|
+
],
|
|
54
|
+
performance: `Fast performance with single database lookup:
|
|
55
|
+
- Query time: <10ms for template retrieval
|
|
56
|
+
- Workflow JSON parsing: <50ms
|
|
57
|
+
- Total response time: <100ms
|
|
58
|
+
- No network calls (uses local cache)`,
|
|
59
|
+
bestPractices: [
|
|
60
|
+
'Always check if template exists before attempting modifications',
|
|
61
|
+
'Review workflow nodes before importing to ensure compatibility',
|
|
62
|
+
'Save template JSON locally if planning multiple customizations',
|
|
63
|
+
'Check template creation date for most recent patterns',
|
|
64
|
+
'Verify all required credentials are configured before import'
|
|
65
|
+
],
|
|
66
|
+
pitfalls: [
|
|
67
|
+
'Template IDs change when database is refreshed',
|
|
68
|
+
'Some templates may use deprecated node versions',
|
|
69
|
+
'Credentials in templates are placeholders - configure your own',
|
|
70
|
+
'Not all templates work with all n8n versions',
|
|
71
|
+
'Template may reference external services you don\'t have access to'
|
|
72
|
+
],
|
|
73
|
+
relatedTools: ['list_node_templates', 'search_templates', 'get_templates_for_task', 'n8n_create_workflow']
|
|
74
|
+
}
|
|
75
|
+
};
|
|
76
|
+
//# sourceMappingURL=get-template.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-template.js","sourceRoot":"","sources":["../../../../src/mcp/tool-docs/templates/get-template.ts"],"names":[],"mappings":";;;AAEa,QAAA,cAAc,GAAsB;IAC/C,IAAI,EAAE,cAAc;IACpB,QAAQ,EAAE,WAAW;IACrB,UAAU,EAAE;QACV,WAAW,EAAE,sGAAsG;QACnH,aAAa,EAAE,CAAC,YAAY,CAAC;QAC7B,OAAO,EAAE,kCAAkC;QAC3C,WAAW,EAAE,wCAAwC;QACrD,IAAI,EAAE;YACJ,qEAAqE;YACrE,0DAA0D;YAC1D,+CAA+C;SAChD;KACF;IACD,IAAI,EAAE;QACJ,WAAW,EAAE,qQAAqQ;QAClR,UAAU,EAAE;YACV,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE,kGAAkG;aAChH;SACF;QACD,OAAO,EAAE;;;;;;;;;;;;;;6CAcgC;QACzC,QAAQ,EAAE;YACR,oEAAoE;YACpE,2DAA2D;YAC3D,4DAA4D;SAC7D;QACD,QAAQ,EAAE;YACR,+CAA+C;YAC/C,4CAA4C;YAC5C,8CAA8C;YAC9C,2CAA2C;YAC3C,yCAAyC;SAC1C;QACD,WAAW,EAAE;;;;sCAIqB;QAClC,aAAa,EAAE;YACb,iEAAiE;YACjE,gEAAgE;YAChE,gEAAgE;YAChE,uDAAuD;YACvD,8DAA8D;SAC/D;QACD,QAAQ,EAAE;YACR,gDAAgD;YAChD,iDAAiD;YACjD,gEAAgE;YAChE,8CAA8C;YAC9C,oEAAoE;SACrE;QACD,YAAY,EAAE,CAAC,qBAAqB,EAAE,kBAAkB,EAAE,wBAAwB,EAAE,qBAAqB,CAAC;KAC3G;CACF,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
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"}
|
|
@@ -0,0 +1,76 @@
|
|
|
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
|
+
'Use list_tasks to see all available task categories',
|
|
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
|
|
@@ -0,0 +1 @@
|
|
|
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,qDAAqD;YACrD,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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export { getNodeForTaskDoc } from './get-node-for-task';
|
|
2
|
+
export { listTasksDoc } from './list-tasks';
|
|
3
|
+
export { listNodeTemplatesDoc } from './list-node-templates';
|
|
4
|
+
export { getTemplateDoc } from './get-template';
|
|
5
|
+
export { searchTemplatesDoc } from './search-templates';
|
|
6
|
+
export { getTemplatesForTaskDoc } from './get-templates-for-task';
|
|
7
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/mcp/tool-docs/templates/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getTemplatesForTaskDoc = exports.searchTemplatesDoc = exports.getTemplateDoc = exports.listNodeTemplatesDoc = exports.listTasksDoc = exports.getNodeForTaskDoc = void 0;
|
|
4
|
+
var get_node_for_task_1 = require("./get-node-for-task");
|
|
5
|
+
Object.defineProperty(exports, "getNodeForTaskDoc", { enumerable: true, get: function () { return get_node_for_task_1.getNodeForTaskDoc; } });
|
|
6
|
+
var list_tasks_1 = require("./list-tasks");
|
|
7
|
+
Object.defineProperty(exports, "listTasksDoc", { enumerable: true, get: function () { return list_tasks_1.listTasksDoc; } });
|
|
8
|
+
var list_node_templates_1 = require("./list-node-templates");
|
|
9
|
+
Object.defineProperty(exports, "listNodeTemplatesDoc", { enumerable: true, get: function () { return list_node_templates_1.listNodeTemplatesDoc; } });
|
|
10
|
+
var get_template_1 = require("./get-template");
|
|
11
|
+
Object.defineProperty(exports, "getTemplateDoc", { enumerable: true, get: function () { return get_template_1.getTemplateDoc; } });
|
|
12
|
+
var search_templates_1 = require("./search-templates");
|
|
13
|
+
Object.defineProperty(exports, "searchTemplatesDoc", { enumerable: true, get: function () { return search_templates_1.searchTemplatesDoc; } });
|
|
14
|
+
var get_templates_for_task_1 = require("./get-templates-for-task");
|
|
15
|
+
Object.defineProperty(exports, "getTemplatesForTaskDoc", { enumerable: true, get: function () { return get_templates_for_task_1.getTemplatesForTaskDoc; } });
|
|
16
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/mcp/tool-docs/templates/index.ts"],"names":[],"mappings":";;;AAAA,yDAAwD;AAA/C,sHAAA,iBAAiB,OAAA;AAC1B,2CAA4C;AAAnC,0GAAA,YAAY,OAAA;AACrB,6DAA6D;AAApD,2HAAA,oBAAoB,OAAA;AAC7B,+CAAgD;AAAvC,8GAAA,cAAc,OAAA;AACvB,uDAAwD;AAA/C,sHAAA,kBAAkB,OAAA;AAC3B,mEAAkE;AAAzD,gIAAA,sBAAsB,OAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list-node-templates.d.ts","sourceRoot":"","sources":["../../../../src/mcp/tool-docs/templates/list-node-templates.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAE7C,eAAO,MAAM,oBAAoB,EAAE,iBA2ElC,CAAC"}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.listNodeTemplatesDoc = void 0;
|
|
4
|
+
exports.listNodeTemplatesDoc = {
|
|
5
|
+
name: 'list_node_templates',
|
|
6
|
+
category: 'templates',
|
|
7
|
+
essentials: {
|
|
8
|
+
description: 'Find templates using specific nodes. 399 community workflows. Use FULL types: "n8n-nodes-base.httpRequest".',
|
|
9
|
+
keyParameters: ['nodeTypes', 'limit'],
|
|
10
|
+
example: 'list_node_templates({nodeTypes: ["n8n-nodes-base.slack"]})',
|
|
11
|
+
performance: 'Fast (<100ms) - indexed node search',
|
|
12
|
+
tips: [
|
|
13
|
+
'Must use FULL node type with package prefix: "n8n-nodes-base.slack"',
|
|
14
|
+
'Can search for multiple nodes to find workflows using all of them',
|
|
15
|
+
'Returns templates sorted by popularity (view count)'
|
|
16
|
+
]
|
|
17
|
+
},
|
|
18
|
+
full: {
|
|
19
|
+
description: `Finds workflow templates that use specific n8n nodes. This is the best way to discover how particular nodes are used in real workflows. Search the community library of 399+ templates by specifying which nodes you want to see in action. Templates are sorted by popularity to show the most useful examples first.`,
|
|
20
|
+
parameters: {
|
|
21
|
+
nodeTypes: {
|
|
22
|
+
type: 'array',
|
|
23
|
+
required: true,
|
|
24
|
+
description: 'Array of node types to search for. Must use full type names with package prefix (e.g., ["n8n-nodes-base.httpRequest", "n8n-nodes-base.openAi"])'
|
|
25
|
+
},
|
|
26
|
+
limit: {
|
|
27
|
+
type: 'number',
|
|
28
|
+
required: false,
|
|
29
|
+
description: 'Maximum number of templates to return. Default 10, max 100'
|
|
30
|
+
}
|
|
31
|
+
},
|
|
32
|
+
returns: `Returns an object containing:
|
|
33
|
+
- templates: Array of matching templates
|
|
34
|
+
- id: Template ID for retrieval
|
|
35
|
+
- name: Template name
|
|
36
|
+
- description: What the workflow does
|
|
37
|
+
- author: Creator details (name, username, verified)
|
|
38
|
+
- nodes: Complete list of nodes used
|
|
39
|
+
- views: View count (popularity metric)
|
|
40
|
+
- created: Creation date
|
|
41
|
+
- url: Link to template on n8n.io
|
|
42
|
+
- totalFound: Total number of matching templates
|
|
43
|
+
- tip: Usage hints if no results`,
|
|
44
|
+
examples: [
|
|
45
|
+
'list_node_templates({nodeTypes: ["n8n-nodes-base.slack"]}) - Find all Slack workflows',
|
|
46
|
+
'list_node_templates({nodeTypes: ["n8n-nodes-base.httpRequest", "n8n-nodes-base.postgres"]}) - Find workflows using both HTTP and Postgres',
|
|
47
|
+
'list_node_templates({nodeTypes: ["@n8n/n8n-nodes-langchain.openAi"], limit: 20}) - Find AI workflows with OpenAI',
|
|
48
|
+
'list_node_templates({nodeTypes: ["n8n-nodes-base.webhook", "n8n-nodes-base.respondToWebhook"]}) - Find webhook examples'
|
|
49
|
+
],
|
|
50
|
+
useCases: [
|
|
51
|
+
'Learn how to use specific nodes through examples',
|
|
52
|
+
'Find workflows combining particular integrations',
|
|
53
|
+
'Discover patterns for node combinations',
|
|
54
|
+
'See real-world usage of complex nodes',
|
|
55
|
+
'Find templates for your exact tech stack'
|
|
56
|
+
],
|
|
57
|
+
performance: `Optimized for node-based searches:
|
|
58
|
+
- Indexed by node type for fast lookups
|
|
59
|
+
- Query time: <50ms for single node
|
|
60
|
+
- Multiple nodes: <100ms (uses AND logic)
|
|
61
|
+
- Returns pre-sorted by popularity
|
|
62
|
+
- No full-text search needed`,
|
|
63
|
+
bestPractices: [
|
|
64
|
+
'Always use full node type with package prefix',
|
|
65
|
+
'Search for core nodes that define the workflow purpose',
|
|
66
|
+
'Start with single node searches, then refine',
|
|
67
|
+
'Check node types with list_nodes if unsure of names',
|
|
68
|
+
'Review multiple templates to learn different approaches'
|
|
69
|
+
],
|
|
70
|
+
pitfalls: [
|
|
71
|
+
'Node types must match exactly - no partial matches',
|
|
72
|
+
'Package prefix required: "slack" won\'t work, use "n8n-nodes-base.slack"',
|
|
73
|
+
'Some nodes have version numbers: "n8n-nodes-base.httpRequestV3"',
|
|
74
|
+
'Templates may use old node versions not in current n8n',
|
|
75
|
+
'AND logic means all specified nodes must be present'
|
|
76
|
+
],
|
|
77
|
+
relatedTools: ['get_template', 'search_templates', 'get_templates_for_task', 'list_nodes']
|
|
78
|
+
}
|
|
79
|
+
};
|
|
80
|
+
//# sourceMappingURL=list-node-templates.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list-node-templates.js","sourceRoot":"","sources":["../../../../src/mcp/tool-docs/templates/list-node-templates.ts"],"names":[],"mappings":";;;AAEa,QAAA,oBAAoB,GAAsB;IACrD,IAAI,EAAE,qBAAqB;IAC3B,QAAQ,EAAE,WAAW;IACrB,UAAU,EAAE;QACV,WAAW,EAAE,6GAA6G;QAC1H,aAAa,EAAE,CAAC,WAAW,EAAE,OAAO,CAAC;QACrC,OAAO,EAAE,4DAA4D;QACrE,WAAW,EAAE,qCAAqC;QAClD,IAAI,EAAE;YACJ,qEAAqE;YACrE,mEAAmE;YACnE,qDAAqD;SACtD;KACF;IACD,IAAI,EAAE;QACJ,WAAW,EAAE,wTAAwT;QACrU,UAAU,EAAE;YACV,SAAS,EAAE;gBACT,IAAI,EAAE,OAAO;gBACb,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE,iJAAiJ;aAC/J;YACD,KAAK,EAAE;gBACL,IAAI,EAAE,QAAQ;gBACd,QAAQ,EAAE,KAAK;gBACf,WAAW,EAAE,4DAA4D;aAC1E;SACF;QACD,OAAO,EAAE;;;;;;;;;;;iCAWoB;QAC7B,QAAQ,EAAE;YACR,uFAAuF;YACvF,2IAA2I;YAC3I,kHAAkH;YAClH,yHAAyH;SAC1H;QACD,QAAQ,EAAE;YACR,kDAAkD;YAClD,kDAAkD;YAClD,yCAAyC;YACzC,uCAAuC;YACvC,0CAA0C;SAC3C;QACD,WAAW,EAAE;;;;;6BAKY;QACzB,aAAa,EAAE;YACb,+CAA+C;YAC/C,wDAAwD;YACxD,8CAA8C;YAC9C,qDAAqD;YACrD,yDAAyD;SAC1D;QACD,QAAQ,EAAE;YACR,oDAAoD;YACpD,0EAA0E;YAC1E,iEAAiE;YACjE,wDAAwD;YACxD,qDAAqD;SACtD;QACD,YAAY,EAAE,CAAC,cAAc,EAAE,kBAAkB,EAAE,wBAAwB,EAAE,YAAY,CAAC;KAC3F;CACF,CAAC"}
|