mirror of
https://github.com/czlonkowski/n8n-mcp.git
synced 2026-03-24 19:33:08 +00:00
fix: synchronize tool documentation with v2.26.0 tool consolidation (v2.26.2) (#442)
* fix: synchronize tool documentation with v2.26.0 tool consolidation (v2.26.2) - Delete 23 obsolete documentation files for removed tools - Create consolidated documentation for get_node, validate_node, n8n_executions - Update search_templates with all searchModes - Update n8n_get_workflow with all modes - Fix stale relatedTools references - Update tools-documentation.ts overview to reflect 19 consolidated tools Conceived by Romuald Członkowski - www.aiadvisors.pl/en 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com> * fix: address code review - fix remaining stale tool references - Fix relatedTools in system/tools-documentation.ts (get_node_for_task → search_templates) - Fix relatedTools in validation/validate-workflow.ts (remove references to removed tools) - Fix relatedTools in n8n-autofix-workflow.ts (remove references to removed tools) - Update tools-n8n-friendly.ts with consolidated tools (validate_node, get_node, search_templates) Conceived by Romuald Członkowski - www.aiadvisors.pl/en 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com> * fix: address final code review - fix remaining stale references - Fix ai-agents-guide.ts: get_node_essentials → get_node, remove list_ai_tools - Fix get-template.ts: list_node_templates → search_templates, remove get_templates_for_task - Fix n8n-list-workflows.ts: n8n_get_workflow_minimal → n8n_get_workflow, n8n_list_executions → n8n_executions - Fix n8n-trigger-webhook-workflow.ts: n8n_get_execution/n8n_list_executions → n8n_executions - Fix n8n-delete-workflow.ts: n8n_get_workflow_minimal → n8n_get_workflow, n8n_delete_execution → n8n_executions - Fix CHANGELOG date typo: 2025-01-25 → 2025-11-25 Conceived by Romuald Członkowski - www.aiadvisors.pl/en 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com> * test: adjust comprehensive docs threshold after tool consolidation Reduce expected character count from 5000 to 4000 in tool-invocation.test.ts to account for reduced documentation after v2.26.0 tool consolidation (31→19 tools, actual output is ~4645 chars). Conceived by Romuald Członkowski - www.aiadvisors.pl/en 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com> --------- Co-authored-by: Claude <noreply@anthropic.com>
This commit is contained in:
committed by
GitHub
parent
c974947c84
commit
1be06c217f
@@ -1,67 +0,0 @@
|
||||
import { ToolDocumentation } from '../types';
|
||||
|
||||
export const getDatabaseStatisticsDoc: ToolDocumentation = {
|
||||
name: 'get_database_statistics',
|
||||
category: 'discovery',
|
||||
essentials: {
|
||||
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.',
|
||||
keyParameters: [],
|
||||
example: 'get_database_statistics()',
|
||||
performance: 'Instant',
|
||||
tips: [
|
||||
'First tool to call when testing MCP connection',
|
||||
'Shows exact counts for all node categories',
|
||||
'Documentation coverage indicates data quality'
|
||||
]
|
||||
},
|
||||
full: {
|
||||
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.',
|
||||
parameters: {},
|
||||
returns: `Object containing:
|
||||
{
|
||||
"total_nodes": 525, // All nodes in database
|
||||
"nodes_with_properties": 520, // Nodes with extracted properties (99%)
|
||||
"nodes_with_operations": 334, // Nodes with multiple operations (64%)
|
||||
"ai_tools": 263, // AI-capable nodes
|
||||
"triggers": 104, // Workflow trigger nodes
|
||||
"documentation_coverage": "87%", // Nodes with official docs
|
||||
"packages": {
|
||||
"n8n-nodes-base": 456, // Core n8n nodes
|
||||
"@n8n/n8n-nodes-langchain": 69 // AI/LangChain nodes
|
||||
},
|
||||
"categories": {
|
||||
"trigger": 104,
|
||||
"transform": 250,
|
||||
"output": 45,
|
||||
"input": 38,
|
||||
"AI": 88
|
||||
}
|
||||
}`,
|
||||
examples: [
|
||||
'get_database_statistics() - Returns complete statistics object',
|
||||
'// Common check:',
|
||||
'const stats = get_database_statistics();',
|
||||
'if (stats.total_nodes < 500) console.error("Database incomplete!");'
|
||||
],
|
||||
useCases: [
|
||||
'Verify MCP server is connected and responding',
|
||||
'Check if database rebuild is needed (low node count)',
|
||||
'Monitor documentation coverage improvements',
|
||||
'Validate AI tools availability for workflows',
|
||||
'Audit node distribution across packages'
|
||||
],
|
||||
performance: 'Instant (<1ms) - Statistics are pre-calculated and cached',
|
||||
bestPractices: [
|
||||
'Call this first to verify MCP connection before other operations',
|
||||
'Check total_nodes >= 500 to ensure complete database',
|
||||
'Monitor documentation_coverage for data quality',
|
||||
'Use ai_tools count to verify AI capabilities'
|
||||
],
|
||||
pitfalls: [
|
||||
'Statistics are cached at database build time, not real-time',
|
||||
'Won\'t reflect changes until database is rebuilt',
|
||||
'Package counts may vary with n8n version updates'
|
||||
],
|
||||
relatedTools: ['list_nodes for detailed node listing', 'list_ai_tools for AI nodes', 'n8n_health_check for API connectivity']
|
||||
}
|
||||
};
|
||||
@@ -1,4 +1 @@
|
||||
export { searchNodesDoc } from './search-nodes';
|
||||
export { listNodesDoc } from './list-nodes';
|
||||
export { listAiToolsDoc } from './list-ai-tools';
|
||||
export { getDatabaseStatisticsDoc } from './get-database-statistics';
|
||||
@@ -1,51 +0,0 @@
|
||||
import { ToolDocumentation } from '../types';
|
||||
|
||||
export const listAiToolsDoc: ToolDocumentation = {
|
||||
name: 'list_ai_tools',
|
||||
category: 'discovery',
|
||||
essentials: {
|
||||
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.',
|
||||
keyParameters: [],
|
||||
example: 'tools_documentation({topic: "ai_agents_guide"}) // Recommended alternative',
|
||||
performance: 'Instant (cached)',
|
||||
tips: [
|
||||
'NEW: Use ai_agents_guide for comprehensive AI workflow documentation',
|
||||
'Use search_nodes({includeExamples: true}) for AI nodes with real-world examples',
|
||||
'ANY node can be an AI tool - not limited to AI-specific nodes',
|
||||
'Use get_node_as_tool_info for guidance on any node'
|
||||
]
|
||||
},
|
||||
full: {
|
||||
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.',
|
||||
parameters: {},
|
||||
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.',
|
||||
examples: [
|
||||
'// RECOMMENDED: Use the comprehensive AI Agents guide',
|
||||
'tools_documentation({topic: "ai_agents_guide"})',
|
||||
'',
|
||||
'// Or search for AI nodes with real-world examples',
|
||||
'search_nodes({query: "AI Agent", includeExamples: true})',
|
||||
'',
|
||||
'// Basic list (deprecated)',
|
||||
'list_ai_tools() - Returns 263 AI-optimized nodes'
|
||||
],
|
||||
useCases: [
|
||||
'Discover AI model integrations (OpenAI, Anthropic, Google AI)',
|
||||
'Find vector databases for RAG applications',
|
||||
'Locate embedding generators and processors',
|
||||
'Build AI agent tool chains with ANY n8n node'
|
||||
],
|
||||
performance: 'Instant - results are pre-cached in memory',
|
||||
bestPractices: [
|
||||
'Remember: ANY node works as an AI tool when connected to AI Agent',
|
||||
'Common non-AI nodes used as tools: Slack (messaging), Google Sheets (data), HTTP Request (APIs), Code (custom logic)',
|
||||
'For community nodes: set N8N_COMMUNITY_PACKAGES_ALLOW_TOOL_USAGE=true'
|
||||
],
|
||||
pitfalls: [
|
||||
'This list is NOT exhaustive - it only shows nodes with AI-specific features',
|
||||
'Don\'t limit yourself to this list when building AI workflows',
|
||||
'Community nodes require environment variable to work as tools'
|
||||
],
|
||||
relatedTools: ['get_node_as_tool_info for any node usage', 'search_nodes to find specific nodes', 'get_node_essentials to configure nodes']
|
||||
}
|
||||
};
|
||||
@@ -1,52 +0,0 @@
|
||||
import { ToolDocumentation } from '../types';
|
||||
|
||||
export const listNodesDoc: ToolDocumentation = {
|
||||
name: 'list_nodes',
|
||||
category: 'discovery',
|
||||
essentials: {
|
||||
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).',
|
||||
keyParameters: ['category', 'package', 'limit', 'isAITool'],
|
||||
example: 'list_nodes({limit:200})',
|
||||
performance: '<10ms for any query size',
|
||||
tips: [
|
||||
'Use limit:200 to get all 525 nodes',
|
||||
'Categories: trigger (104), transform (250+), output/input (50+)',
|
||||
'Use search_nodes for keyword search'
|
||||
]
|
||||
},
|
||||
full: {
|
||||
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.',
|
||||
parameters: {
|
||||
category: { type: 'string', description: 'Filter by category: "trigger" (104 nodes), "transform" (250+ nodes), "output", "input", or "AI"', required: false },
|
||||
package: { type: 'string', description: 'Filter by package: "n8n-nodes-base" (456 core nodes) or "@n8n/n8n-nodes-langchain" (69 AI nodes)', required: false },
|
||||
limit: { type: 'number', description: 'Maximum results to return. Default: 50. Use 200+ to get all 525 nodes', required: false },
|
||||
isAITool: { type: 'boolean', description: 'Filter to show only AI-capable nodes (263 nodes)', required: false },
|
||||
developmentStyle: { type: 'string', description: 'Filter by style: "programmatic" or "declarative". Most nodes are programmatic', required: false }
|
||||
},
|
||||
returns: 'Array of node objects, each containing: nodeType (e.g., "nodes-base.webhook"), displayName (e.g., "Webhook"), description, category, package, isAITool flag',
|
||||
examples: [
|
||||
'list_nodes({limit:200}) - Returns all 525 nodes',
|
||||
'list_nodes({category:"trigger"}) - Returns 104 trigger nodes (Webhook, Schedule, Email Trigger, etc.)',
|
||||
'list_nodes({package:"@n8n/n8n-nodes-langchain"}) - Returns 69 AI/LangChain nodes',
|
||||
'list_nodes({isAITool:true}) - Returns 263 AI-capable nodes',
|
||||
'list_nodes({category:"trigger", isAITool:true}) - Combines filters for AI-capable triggers'
|
||||
],
|
||||
useCases: [
|
||||
'Browse all available nodes when building workflows',
|
||||
'Find all trigger nodes to start workflows',
|
||||
'Discover AI/ML nodes for intelligent automation',
|
||||
'Check available nodes in specific packages'
|
||||
],
|
||||
performance: '<10ms for any query size. Results are cached in memory',
|
||||
bestPractices: [
|
||||
'Use limit:200 when you need the complete node inventory',
|
||||
'Filter by category for focused discovery',
|
||||
'Combine with get_node_essentials to configure selected nodes'
|
||||
],
|
||||
pitfalls: [
|
||||
'No text search capability - use search_nodes for keyword search',
|
||||
'developmentStyle filter rarely useful - most nodes are "programmatic"'
|
||||
],
|
||||
relatedTools: ['search_nodes for keyword search', 'list_ai_tools for AI-specific discovery', 'get_node_essentials to configure nodes']
|
||||
}
|
||||
};
|
||||
@@ -49,6 +49,6 @@ export const searchNodesDoc: ToolDocumentation = {
|
||||
'FUZZY mode with very short queries (1-2 chars) may return unexpected results',
|
||||
'Exact matches in quotes are case-sensitive'
|
||||
],
|
||||
relatedTools: ['list_nodes for browsing by category', 'get_node_essentials to configure found nodes', 'list_ai_tools for AI-specific search']
|
||||
relatedTools: ['get_node to configure found nodes', 'search_templates to find workflow examples', 'validate_node to check configurations']
|
||||
}
|
||||
};
|
||||
Reference in New Issue
Block a user