mirror of
https://github.com/czlonkowski/n8n-mcp.git
synced 2026-01-30 22:42:04 +00:00
Compare commits
base: ros:v2.22.21
ros:main
ros:gh-pages
ros:fix/sse-session-memory-leak-542
ros:update/n8n-2.4.4
ros:deprecate-fixed-http
ros:feat/cnd-operators-and-n8n-2.0-fix
ros:fix/memory-leak-session-cleanup-471
ros:fix/test-updates-v2.28.6
ros:fix/configurable-max-sessions-468
ros:fix/issue-458-ai-connection-type
ros:feature/v2.25.0-tool-removal-consolidation
ros:feature/session-persistence-api
ros:fix/issue-431-empty-settings
ros:update/n8n-1.120.3
ros:feat/telemetry-validation-and-sanitization
ros:feat/partial-updates-telemetry
ros:feat/disabled-tools-env-var
ros:fix/sql-js-fts5-health-check-crash
ros:update/n8n-1.118.1
ros:claude/fix-yaml-separators-011CUTuNP2G3vGqSo8R9uubN
ros:claude/version-bump-2.22.5-011CUTuNP2G3vGqSo8R9uubN
ros:claude/investigate-npm-deployment-011CUTuNP2G3vGqSo8R9uubN
ros:enhance/http-validation-suggestions-361
ros:feature/auto-update-node-versions
ros:fix/missing-tslib-dependency-342
ros:enhance/validation-tool-safety-features
ros:feat/add-skills-documentation
ros:fix/memory-leak-sqljs-330
ros:feature/mcp-icon-support-sep-973
ros:bump-version-2.19.6
ros:fix/session-restoration-warmstart-v2
ros:fix/session-restoration-v2.19.5
ros:fix/session-restoration-mcp-initialization
ros:fix/npm-publish-library-fields
ros:fix/issue-296-nodejs-adapter-bypass
ros:feature/telemetry-docker-cloud-detection
ros:fix/validation-warning-system-redesign
ros:fix/version-extraction-and-typeversion-validation
ros:update/n8n-and-templates-20251007
ros:security/issue-265-pr3-high-priority-issues
ros:security/issue-265-pr2-rate-limiting-and-ssrf
ros:security/issue-265-pr1-critical-timing-and-injection
ros:fix/issue-277-signal-handlers-stdio
ros:fix/issue-270-apostrophe-handling
ros:fix/issue-269-addnode-examples
ros:fix/telemetry-error-message-capture
ros:ci-cd
ros:fix/issue-90-fixed-collection-validation
ros:feature/n8n-integration
ros:sse
ros:v2.33.5
ros:v2.33.4
ros:v2.33.3
ros:v2.33.2
ros:v2.33.1
ros:v2.33.0
ros:v2.32.1
ros:v2.32.0
ros:v2.31.9
ros:v2.31.8
ros:v2.31.7
ros:v2.31.6
ros:v2.31.5
ros:v2.31.4
ros:v2.31.3
ros:v2.31.2
ros:v2.31.1
ros:v2.31.0
ros:v2.30.2
ros:v2.30.1
ros:v2.30.0
ros:v2.29.5
ros:v2.29.4
ros:v2.29.3
ros:v2.29.2
ros:v2.29.0
ros:v2.28.9
ros:v2.28.8
ros:v2.28.7
ros:v2.28.6
ros:v2.28.4
ros:v2.28.3
ros:v2.28.2
ros:v2.28.1
ros:v2.28.0
ros:v2.27.2
ros:v2.27.1
ros:v2.27.0
ros:v2.26.5
ros:v2.26.4
ros:v2.26.3
ros:v2.26.2
ros:v2.26.1
ros:v2.26.0
ros:v2.24.1
ros:v2.24.0
ros:v2.23.0
ros:v2.22.21
ros:v2.22.20
ros:v2.22.19
ros:v2.22.18
ros:v2.22.17
ros:v2.22.16
ros:v2.22.15
ros:v2.22.14
ros:v2.22.13
ros:v2.22.12
ros:v2.22.11
ros:v2.22.10
ros:v2.22.9
ros:v2.22.8
ros:v2.22.7
ros:v2.22.6
ros:v2.21.1
ros:v2.21.0
ros:v2.20.8
ros:v2.20.7
ros:v2.20.6
ros:v2.20.5
ros:v2.20.4
ros:v2.20.3
ros:v2.20.2
ros:v2.20.1
ros:v2.20.0
ros:v2.19.6
ros:v2.19.5
ros:v2.19.4
ros:v2.19.3
ros:v2.19.2
ros:v2.19.1
ros:v2.19.0
ros:v2.18.10
ros:v2.18.9
ros:v2.18.8
ros:v2.18.7
ros:v2.18.6
ros:v2.18.5
ros:v2.18.4
ros:v2.18.3
ros:v2.18.1
ros:v2.18.0
ros:v2.17.6
ros:v2.17.5
ros:v2.17.3
ros:v2.17.2
ros:v2.17.1
ros:v2.17.0
ros:v2.16.3
ros:v2.16.2
ros:v2.16.1
ros:v2.16.0
ros:v2.15.6
ros:v2.15.5
ros:v2.15.4
ros:v2.15.3
ros:v2.15.2
ros:v2.15.1
ros:v2.15.0
ros:v2.14.7
ros:v2.14.6
ros:v2.14.5
ros:v2.14.4
ros:v2.14.3
ros:v2.14.2
ros:v2.14.1
ros:v2.14.0
ros:v2.13.2
ros:v2.13.1
ros:v2.13.0
ros:v2.12.2
ros:v2.12.1
ros:v2.12.0
ros:v2.11.3
ros:v2.11.2
ros:v2.11.1
ros:v2.11.0
ros:v2.10.9
ros:v2.10.8
ros:v2.10.7
ros:v2.10.6
ros:v2.10.5
ros:v2.10.4
ros:v2.10.3
ros:v2.10.2
ros:v2.10.1
ros:v2.9.1
ros:v2.8.1
ros:v2.7.9
..
compare: ros:fix/issue-431-empty-settings
ros:gh-pages
ros:main
ros:fix/sse-session-memory-leak-542
ros:update/n8n-2.4.4
ros:deprecate-fixed-http
ros:feat/cnd-operators-and-n8n-2.0-fix
ros:fix/memory-leak-session-cleanup-471
ros:fix/test-updates-v2.28.6
ros:fix/configurable-max-sessions-468
ros:fix/issue-458-ai-connection-type
ros:feature/v2.25.0-tool-removal-consolidation
ros:feature/session-persistence-api
ros:fix/issue-431-empty-settings
ros:update/n8n-1.120.3
ros:feat/telemetry-validation-and-sanitization
ros:feat/partial-updates-telemetry
ros:feat/disabled-tools-env-var
ros:fix/sql-js-fts5-health-check-crash
ros:update/n8n-1.118.1
ros:claude/fix-yaml-separators-011CUTuNP2G3vGqSo8R9uubN
ros:claude/version-bump-2.22.5-011CUTuNP2G3vGqSo8R9uubN
ros:claude/investigate-npm-deployment-011CUTuNP2G3vGqSo8R9uubN
ros:enhance/http-validation-suggestions-361
ros:feature/auto-update-node-versions
ros:fix/missing-tslib-dependency-342
ros:enhance/validation-tool-safety-features
ros:feat/add-skills-documentation
ros:fix/memory-leak-sqljs-330
ros:feature/mcp-icon-support-sep-973
ros:bump-version-2.19.6
ros:fix/session-restoration-warmstart-v2
ros:fix/session-restoration-v2.19.5
ros:fix/session-restoration-mcp-initialization
ros:fix/npm-publish-library-fields
ros:fix/issue-296-nodejs-adapter-bypass
ros:feature/telemetry-docker-cloud-detection
ros:fix/validation-warning-system-redesign
ros:fix/version-extraction-and-typeversion-validation
ros:update/n8n-and-templates-20251007
ros:security/issue-265-pr3-high-priority-issues
ros:security/issue-265-pr2-rate-limiting-and-ssrf
ros:security/issue-265-pr1-critical-timing-and-injection
ros:fix/issue-277-signal-handlers-stdio
ros:fix/issue-270-apostrophe-handling
ros:fix/issue-269-addnode-examples
ros:fix/telemetry-error-message-capture
ros:ci-cd
ros:fix/issue-90-fixed-collection-validation
ros:feature/n8n-integration
ros:sse
ros:v2.33.5
ros:v2.33.4
ros:v2.33.3
ros:v2.33.2
ros:v2.33.1
ros:v2.33.0
ros:v2.32.1
ros:v2.32.0
ros:v2.31.9
ros:v2.31.8
ros:v2.31.7
ros:v2.31.6
ros:v2.31.5
ros:v2.31.4
ros:v2.31.3
ros:v2.31.2
ros:v2.31.1
ros:v2.31.0
ros:v2.30.2
ros:v2.30.1
ros:v2.30.0
ros:v2.29.5
ros:v2.29.4
ros:v2.29.3
ros:v2.29.2
ros:v2.29.0
ros:v2.28.9
ros:v2.28.8
ros:v2.28.7
ros:v2.28.6
ros:v2.28.4
ros:v2.28.3
ros:v2.28.2
ros:v2.28.1
ros:v2.28.0
ros:v2.27.2
ros:v2.27.1
ros:v2.27.0
ros:v2.26.5
ros:v2.26.4
ros:v2.26.3
ros:v2.26.2
ros:v2.26.1
ros:v2.26.0
ros:v2.24.1
ros:v2.24.0
ros:v2.23.0
ros:v2.22.21
ros:v2.22.20
ros:v2.22.19
ros:v2.22.18
ros:v2.22.17
ros:v2.22.16
ros:v2.22.15
ros:v2.22.14
ros:v2.22.13
ros:v2.22.12
ros:v2.22.11
ros:v2.22.10
ros:v2.22.9
ros:v2.22.8
ros:v2.22.7
ros:v2.22.6
ros:v2.21.1
ros:v2.21.0
ros:v2.20.8
ros:v2.20.7
ros:v2.20.6
ros:v2.20.5
ros:v2.20.4
ros:v2.20.3
ros:v2.20.2
ros:v2.20.1
ros:v2.20.0
ros:v2.19.6
ros:v2.19.5
ros:v2.19.4
ros:v2.19.3
ros:v2.19.2
ros:v2.19.1
ros:v2.19.0
ros:v2.18.10
ros:v2.18.9
ros:v2.18.8
ros:v2.18.7
ros:v2.18.6
ros:v2.18.5
ros:v2.18.4
ros:v2.18.3
ros:v2.18.1
ros:v2.18.0
ros:v2.17.6
ros:v2.17.5
ros:v2.17.3
ros:v2.17.2
ros:v2.17.1
ros:v2.17.0
ros:v2.16.3
ros:v2.16.2
ros:v2.16.1
ros:v2.16.0
ros:v2.15.6
ros:v2.15.5
ros:v2.15.4
ros:v2.15.3
ros:v2.15.2
ros:v2.15.1
ros:v2.15.0
ros:v2.14.7
ros:v2.14.6
ros:v2.14.5
ros:v2.14.4
ros:v2.14.3
ros:v2.14.2
ros:v2.14.1
ros:v2.14.0
ros:v2.13.2
ros:v2.13.1
ros:v2.13.0
ros:v2.12.2
ros:v2.12.1
ros:v2.12.0
ros:v2.11.3
ros:v2.11.2
ros:v2.11.1
ros:v2.11.0
ros:v2.10.9
ros:v2.10.8
ros:v2.10.7
ros:v2.10.6
ros:v2.10.5
ros:v2.10.4
ros:v2.10.3
ros:v2.10.2
ros:v2.10.1
ros:v2.9.1
ros:v2.8.1
ros:v2.7.9
5 Commits
v2.22.21
...
fix/issue-
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
df816556e5 |
refactor: use modern executionOrder v1 as default instead of legacy v0
Changed minimal default settings from executionOrder: 'v0' (legacy) to executionOrder: 'v1' (modern default) when providing fallback settings. This ensures workflows use the modern execution order by default, which provides better performance and more predictable execution behavior. Updated all affected tests to expect 'v1' instead of 'v0'. Conceived by Romuald Członkowski - https://www.aiadvisors.pl/en 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com> |
||
|
|
dbd1406c43 |
fix: provide minimal default settings instead of omitting them
Issue: After fixing the description field removal, integration tests started failing with "must have required property 'settings'" error. Root cause: n8n API requires the settings property to be present in workflow updates, but we were deleting it when no settings were provided or when all settings were filtered out. Solution: Instead of deleting settings, provide minimal valid default settings (executionOrder: 'v0') to satisfy n8n API requirements while avoiding "additional properties" errors. This fixes both issues: - Original #431: Empty settings {} causes "additional properties" error - New issue: Missing settings causes "required property" error Updated tests to expect minimal default settings instead of no settings. Conceived by Romuald Członkowski - https://www.aiadvisors.pl/en 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com> |
||
|
|
a78d7404c0 |
fix: filter out description field in workflow updates (issue #431)
Root Cause: - n8n recently added a `description` field to workflows - The field is returned by GET /workflows/:id endpoint - But PUT /workflows/:id rejects it with "additional properties" error - Our cleanWorkflowForUpdate() wasn't filtering it out The Fix: 1. Added `description` to the list of removed fields in cleanWorkflowForUpdate() 2. Added `description` field to Workflow type definition 3. Added test case to verify description field is excluded Code Review Improvements: - Removed diagnostic logging code (was only needed for debugging) - Improved comment accuracy in type definition - Added comprehensive test coverage for description field Testing: - Build succeeds - New test passes: "should exclude description field for n8n API compatibility" - All unit tests pass - Integration tests confirmed fix works with real n8n API Related: #431 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com> Conceived by Romuald Członkowski - https://www.aiadvisors.pl/en |
||
|
|
f54d8b6caa |
fix: handle empty settings in workflow creation and update comments
Fixed two additional issues discovered in CI testing:
1. cleanWorkflowForCreate() now treats empty settings {} the same as
missing settings - adds default settings in both cases
2. Updated outdated comments referencing old approach of using empty
objects for safety
Root Cause:
- Tests were creating workflows with settings: {}
- Empty object {} is truthy in JavaScript, so the check !settings
passed and no defaults were added
- This caused workflows to be created without proper settings
- Later autofix updates would then fail
Changes:
- Modified cleanWorkflowForCreate() line 107 to check both !settings
and Object.keys(settings).length === 0
- Updated comment lines 157-172 to reflect current approach
- Now empty settings objects are handled consistently
Testing:
- All 75 unit tests in n8n-validation.test.ts passing
- Fixes CI integration test failures in autofix-workflow.test.ts
Related: #431
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Conceived by Romuald Członkowski - https://www.aiadvisors.pl/en
|
||
|
|
d8a08947fa |
fix: resolve empty settings validation error in workflow updates (#431)
Fixed critical bug where n8n_update_partial_workflow failed with "request/body
must NOT have additional properties" error when workflows had no settings or
only non-whitelisted settings.
Root Cause:
- cleanWorkflowForUpdate() was sending empty settings: {} objects
- n8n API rejects empty settings as additional properties violation
- Occurred when workflow had no settings or only filtered properties
Changes:
- Modified cleanWorkflowForUpdate() to delete settings property when empty
- Enhanced applyUpdateSettings() to prevent creating empty settings
- Fixed 3 incorrect tests expecting empty settings objects
- Added 2 comprehensive tests for edge cases
Testing:
- All 75 unit tests in n8n-validation.test.ts passing
- Build and type checking successful
- New tests cover all empty settings scenarios
Related: #431, #248
Related n8n issue: n8n-io/n8n#19587
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Conceived by Romuald Członkowski - https://www.aiadvisors.pl/en
|