You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CHANGELOG.md
+345Lines changed: 345 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -7,6 +7,351 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
8
8
## [Unreleased]
9
9
10
+
## [2.24.0] - 2025-01-24
11
+
12
+
### ✨ Features
13
+
14
+
**Unified Node Information Tool**
15
+
16
+
Introduced `get_node` - a unified tool that consolidates and enhances node information retrieval with multiple detail levels, version history, and type structure metadata.
17
+
18
+
#### What's New
19
+
20
+
**1. Progressive Detail Levels**
21
+
-`minimal`: Basic metadata only (~200 tokens) - nodeType, displayName, description, category, version summary
22
+
-`standard`: Essential properties and operations - AI-friendly default (~1000-2000 tokens)
23
+
-`full`: Complete node information including all properties (~3000-8000 tokens)
24
+
25
+
**2. Version History & Management**
26
+
-`versions` mode: List all versions with breaking changes summary
27
+
-`compare` mode: Compare two versions with property-level changes
28
+
-`breaking` mode: Show only breaking changes between versions
29
+
-`migrations` mode: Show auto-migratable changes
30
+
- Version summary always included in info mode responses
31
+
32
+
**3. Type Structure Metadata**
33
+
-`includeTypeInfo` parameter exposes type structures from v2.23.0 validation system
34
+
- Includes: type category, JS type, validation rules, structure hints
- Better understanding of complex n8n types through type metadata
119
+
- Version upgrade planning with breaking change detection
120
+
- Token-efficient defaults reduce costs
121
+
- Progressive disclosure of information as needed
122
+
123
+
**For Users:**
124
+
- Single tool to learn instead of two separate tools
125
+
- Clear progression from minimal to full detail
126
+
- Version history helps with node upgrades
127
+
- Type-aware configuration assistance
128
+
129
+
### 🔧 Technical Details
130
+
131
+
**Files Added:**
132
+
- Enhanced type structure exposure in node information
133
+
134
+
**Files Modified:**
135
+
-`src/mcp/tools.ts` - Removed get_node_info and get_node_essentials, added get_node
136
+
-`src/mcp/server.ts` - Added unified getNode() implementation with all modes
137
+
-`package.json` - Version bump to 2.24.0
138
+
139
+
**Implementation:**
140
+
-~250 lines of new code
141
+
- 7 new private methods for mode handling
142
+
- Version repository methods utilized (previously unused)
143
+
- TypeStructureService integrated for type metadata
144
+
- 100% backward compatible in behavior (just different API)
145
+
146
+
Conceived by Romuald Członkowski - https://www.aiadvisors.pl/en
147
+
148
+
## [2.23.0] - 2025-11-21
149
+
150
+
### ✨ Features
151
+
152
+
**Type Structure Validation System (Phases 1-4 Complete)**
153
+
154
+
Implemented comprehensive automatic validation system for complex n8n node configuration structures, ensuring workflows are correct before deployment.
155
+
156
+
#### Overview
157
+
158
+
Type Structure Validation is an automatic, zero-configuration validation system that validates complex node configurations (filter, resourceMapper, assignmentCollection, resourceLocator) during node validation. The system operates transparently - no special flags or configuration required.
159
+
160
+
#### Key Features
161
+
162
+
**1. Automatic Structure Validation**
163
+
- Validates 4 special n8n types: filter, resourceMapper, assignmentCollection, resourceLocator
164
+
- Zero configuration required - works automatically in all validation tools
165
+
- Integrated in `validate_node_operation` and `validate_node_minimal` tools
Fixed critical bug where `n8n_update_partial_workflow` tool failed with "request/body must NOT have additional properties" error when workflows had no settings or only non-whitelisted settings properties.
325
+
326
+
#### Root Cause
327
+
-`cleanWorkflowForUpdate()` in `src/services/n8n-validation.ts` was sending empty `settings: {}` objects to the n8n API
328
+
- n8n API rejects empty settings objects as "additional properties" violation
329
+
- Issue occurred when:
330
+
- Workflow had no settings property
331
+
- Workflow had only non-whitelisted settings (e.g., only `callerPolicy`)
332
+
333
+
#### Changes
334
+
-**Primary Fix**: Modified `cleanWorkflowForUpdate()` to delete `settings` property when empty after filtering
335
+
- Instead of sending `settings: {}`, the property is now omitted entirely
336
+
- Added safeguards in lines 193-199 and 201-204
337
+
-**Secondary Fix**: Enhanced `applyUpdateSettings()` in `workflow-diff-engine.ts` to prevent creating empty settings objects
338
+
- Only creates/updates settings if operation provides actual properties
0 commit comments