32 Commits

Author SHA1 Message Date
czlonkowski
984af0a72f fix: resolve rollup native module CI failures
- Added explicit @rollup/rollup-linux-x64-gnu dependency for CI compatibility
- Fixed npm ci failures in GitHub Actions Linux environment
- Regenerated package-lock.json with all platform-specific rollup binaries
- Tests now pass on both macOS ARM64 and Linux x64 platforms
2025-09-04 11:10:47 +02:00
czlonkowski
2df1f1b32b chore: update n8n dependencies and fix package-lock.json
- Updated @n8n/n8n-nodes-langchain to 1.109.1
- Updated n8n-nodes-base to 1.108.0 (via dependencies)
- Rebuilt node database with 535 nodes
- Fixed npm ci failures by regenerating package-lock.json
- Resolved pyodide version conflict between @langchain/community and n8n-nodes-base
- All tests passing
2025-09-04 10:54:45 +02:00
czlonkowski
45fac6fe5e chore: update n8n dependencies and rebuild database
- Updated @n8n/n8n-nodes-langchain to 1.109.1
- Updated n8n-nodes-base to 1.108.0 (via dependencies)
- Rebuilt node database with 535 nodes
- All tests passing
2025-09-04 10:36:25 +02:00
czlonkowski
b65a2f8f3d chore: update n8n dependencies to latest versions
- Updated n8n-nodes-base to 1.106.3
- Updated @n8n/n8n-nodes-langchain to 1.106.3
- Enhanced SQL.js compatibility in database adapter
- Fixed parameter binding and state management in SQLJSStatement
- Rebuilt node database with 535 nodes
- All tests passing with Node.js v22.17.0 LTS
2025-09-04 10:24:33 +02:00
czlonkowski
8fd8c082ee chore: update n8n dependencies to v1.107.4
- Updated n8n from 1.106.3 to 1.107.4
- Updated n8n-core from 1.105.3 to 1.106.2
- Updated n8n-workflow from 1.103.3 to 1.104.1
- Updated @n8n/n8n-nodes-langchain from 1.105.3 to 1.106.2
- Rebuilt node database with 535 nodes
- Bumped version to 2.10.5
- All tests passing

🤖 Generated with Claude Code

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-20 19:45:30 +02:00
czlonkowski
b2a5cf49f7 chore: update n8n to v1.106.3
- Updated n8n from 1.105.2 to 1.106.3
- Updated n8n-core from 1.104.1 to 1.105.3
- Updated n8n-workflow from 1.102.1 to 1.103.3
- Updated @n8n/n8n-nodes-langchain from 1.104.1 to 1.105.3
- Rebuilt node database with 535 nodes
- All 1,728 tests passing
- Bumped version to 2.10.4

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-12 08:43:30 +02:00
czlonkowski
6d95786938 2.10.2 2025-08-05 08:09:22 +02:00
czlonkowski
21d4b9b9fb chore: update n8n to v1.105.2 and dependencies
- Updated n8n from 1.104.1 to 1.105.2
- Updated n8n-core from 1.103.1 to 1.104.1
- Updated n8n-workflow from 1.101.0 to 1.102.1
- Updated @n8n/n8n-nodes-langchain from 1.103.1 to 1.104.1
- Rebuilt node database with 534 nodes
- All 1,620 tests passing
- Updated CHANGELOG.md

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-05 08:09:08 +02:00
czlonkowski
a597ef5a92 feat: add n8n integration with MCP Client Tool support
- Add N8N_MODE environment variable for n8n-specific behavior
- Implement HTTP Streamable transport with multiple session support
- Add protocol version endpoint (GET /mcp) for n8n compatibility
- Support multiple initialize requests for stateless n8n clients
- Add Docker configuration for n8n deployment
- Add test script with persistent volume support
- Add comprehensive unit tests for n8n mode
- Fix session management to handle per-request transport pattern

BREAKING CHANGE: Server now creates new transport for each initialize request
when running in n8n mode to support n8n's stateless client architecture

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-01 00:34:31 +02:00
czlonkowski
dce2d9d83b chore: update n8n to ^1.104.1 and bump version to 2.8.1
- Updated n8n to ^1.104.1
- Updated n8n-core to ^1.103.1
- Updated n8n-workflow to ^1.101.0
- Updated @n8n/n8n-nodes-langchain to ^1.103.1
- Rebuilt node database with 532 nodes
- Sanitized 499 workflow templates
- All 1,182 tests passing (933 unit, 249 integration)
- All validation tests passing
- Built and prepared for npm publish

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-30 16:20:51 +02:00
czlonkowski
9b2f6fa365 test: complete Phase 3 - comprehensive unit test coverage
- Implemented 943 unit tests across all services, parsers, and infrastructure
- Created shared test utilities (test-helpers, assertions, data-generators)
- Achieved high coverage for critical services:
  - n8n-api-client: 83.87%
  - workflow-diff-engine: 90.06%
  - node-specific-validators: 98.7%
  - enhanced-config-validator: 94.55%
  - workflow-validator: 97.59%
- Added comprehensive tests for MCP tools and documentation
- All tests passing in CI/CD pipeline
- Integration tests deferred to separate PR due to complexity

Total: 943 tests passing, ~30% overall coverage (up from 2.45%)
2025-07-28 20:45:58 +02:00
czlonkowski
45b271c860 fix: resolve TypeScript and linting errors in test infrastructure
- Add @types/better-sqlite3 dependency
- Remove duplicate database mock file
- Fix property spread order in workflow builder to prevent overwrites
- All 75 tests now pass with no linting errors

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-28 13:26:00 +02:00
czlonkowski
aa3b2a8460 test: migrate from Jest to Vitest (Phase 1 complete)
- Remove Jest and all related packages
- Install Vitest with coverage support
- Create vitest.config.ts with path aliases
- Set up global test configuration
- Migrate all 6 test files to Vitest syntax
- Update TypeScript configuration for better Vitest support
- Create separate tsconfig.build.json for clean builds
- Fix all import/module issues in tests
- All 68 tests passing successfully
- Current coverage baseline: 2.45%

Phase 1 of testing suite improvement complete.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-28 13:05:38 +02:00
czlonkowski
eeb73e1779 chore: update n8n to v1.103.2
- Updated n8n from 1.102.4 to 1.103.2
- Updated n8n-core from 1.101.2 to 1.102.1
- Updated n8n-workflow from 1.99.1 to 1.100.0
- Updated @n8n/n8n-nodes-langchain from 1.101.2 to 1.102.1
- Rebuilt node database with 532 nodes
- Bumped version to 2.7.21
- All validation tests passing

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-23 19:19:50 +02:00
czlonkowski
7a025bc1f0 chore: update n8n to v1.102.4
- Updated n8n from 1.101.1 to 1.102.4
- Updated n8n-core from 1.100.0 to 1.101.2
- Updated n8n-workflow from 1.98.0 to 1.99.1
- Updated @n8n/n8n-nodes-langchain from 1.100.1 to 1.101.2
- Rebuilt node database with 531 nodes
- All validation tests passing

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-18 14:40:58 +02:00
czlonkowski
ba7f8f9ea6 fix: remove faulty auto-generated examples from MCP tools
- Remove examples from get_node_essentials responses
- Remove examples from validate_node_operation when errors occur
- Update documentation to reflect removal of examples
- Keep helpful format hints in get_node_for_task (different purpose)

The auto-generated examples were misleading AI agents with incorrect
configurations (e.g., Slack "channel" vs "select" property). Tools
now focus on validation and error messages instead of examples.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-17 21:35:01 +02:00
czlonkowski
f525303748 chore: update n8n to v1.101.1
- Updated n8n from 1.100.1 to 1.101.1
- Updated n8n-core from 1.99.0 to 1.100.0
- Updated n8n-workflow from 1.97.0 to 1.98.0
- Updated @n8n/n8n-nodes-langchain from 1.99.0 to 1.100.1
- Rebuilt node database with 528 nodes
- All validation tests passing
- Bumped version to 2.7.12

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-11 00:48:43 +02:00
czlonkowski
0f9f8d41a8 2.7.9 2025-07-06 23:24:47 +02:00
czlonkowski
1f12c4b690 feat: add npx support for zero-installation usage (closes #15)
- Add bin configuration to package.json for npx execution
- Implement smart database path resolution for npx/global/local installs
- Create dedicated npm publish script using runtime-only dependencies
- Add .npmignore to control published package contents
- Update README with npx as primary installation method
- Add n8n version badge to README
- Sync version between package.json and package.runtime.json
- Update CHANGELOG for v2.7.8 release

This allows users to run 'npx n8n-mcp' without installing the package,
reducing friction and making it easier to get started with n8n-MCP.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-06 22:40:58 +02:00
czlonkowski
fdaaadba4c chore: update n8n to v1.100.1
- Updated n8n from 1.99.1 to 1.100.1
- Updated n8n-core from 1.98.0 to 1.99.0
- Updated n8n-workflow from 1.96.0 to 1.97.0
- Updated @n8n/n8n-nodes-langchain from 1.98.1 to 1.99.0
- Fixed node loader path for n8n-nodes-base
- Rebuilt node database with 526 nodes
- All validation tests passing

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-01 08:54:35 +02:00
czlonkowski
c60ebde4d2 fix: add missing uuid dependency to Docker runtime
- Added uuid ^10.0.0 to package.json and package.runtime.json
- Fixed MODULE_NOT_FOUND error in Docker containers
- Updated package.runtime.json version to match main (2.7.0)
- Aligned @modelcontextprotocol/sdk version between packages
- Updated CHANGELOG.md with v2.7.0 release notes

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-28 20:36:01 +02:00
czlonkowski
0aab176e7d feat(v2.7.0): add n8n_update_partial_workflow with transactional updates
BREAKING CHANGES:
- Renamed n8n_update_workflow to n8n_update_full_workflow for clarity

NEW FEATURES:
- Added n8n_update_partial_workflow tool for diff-based workflow editing
- Implemented WorkflowDiffEngine with 13 operation types
- Added transactional updates with two-pass processing
- Maximum 5 operations per request for reliability
- Operations can be in any order - engine handles dependencies
- Added validateOnly mode for testing changes before applying
- 80-90% token savings by only sending changes

IMPROVEMENTS:
- Enhanced tool description with comprehensive parameter documentation
- Added clear examples for simple and complex use cases
- Improved error messages and validation
- Added extensive test coverage for all operations

DOCUMENTATION:
- Added workflow-diff-examples.md with usage patterns
- Added transactional-updates-example.md showing before/after
- Updated README.md with v2.7.0 features
- Updated CLAUDE.md with latest changes

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-27 11:33:57 +02:00
czlonkowski
c336e2d270 chore: update n8n to v1.99.1
- Updated n8n from 1.97.1 to 1.99.1
- Updated n8n-core from 1.96.0 to 1.98.0
- Updated n8n-workflow from 1.94.0 to 1.96.0
- Updated @n8n/n8n-nodes-langchain from 1.96.1 to 1.98.1
- Rebuilt node database with 526 nodes
- All validation tests passing

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-23 23:02:37 +02:00
czlonkowski
08f9d1ad30 feat: add n8n workflow templates as MCP tools
- Add 4 new MCP tools for workflow templates
- Integrate with n8n.io API to fetch community templates
- Filter templates to last 6 months only
- Store templates in SQLite with full workflow JSON
- Manual fetch system (not part of regular rebuild)
- Support search by nodes, keywords, and task categories
- Add fetch:templates and test:templates npm scripts
- Update to v2.4.1

🤖 Generated with Claude Code

Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-20 00:02:09 +02:00
czlonkowski
3f165f6ab6 fix: update validation script to use correct node type format
- Fixed node type references to match database format (e.g., 'nodes-base.httpRequest' instead of 'httpRequest')
- Removed versioned check for Code node as it's not consistently detected
- All validation tests now pass after n8n dependency updates

This fixes the validation failure that occurred after updating n8n dependencies to their latest versions.
2025-06-16 00:03:20 +02:00
czlonkowski
89e1df03de feat: add HTTP server mode for remote deployment with token auth 2025-06-13 11:54:42 +02:00
czlonkowski
b476d36275 feat: implement universal Node.js compatibility with automatic database adapter fallback 2025-06-12 23:51:47 +02:00
czlonkowski
8bf670c31e feat: Implement n8n-MCP Enhancement Plan v2.1 Final
- Implement simple node loader supporting n8n-nodes-base and langchain packages
- Create parser handling declarative, programmatic, and versioned nodes
- Build documentation mapper with 89% coverage (405/457 nodes)
- Setup SQLite database with minimal schema
- Create rebuild script for one-command database updates
- Implement validation script for critical nodes
- Update MCP server with documentation-focused tools
- Add npm scripts for streamlined workflow

Successfully loads 457/458 nodes with accurate documentation mapping.
Versioned node detection working (46 nodes detected).
3/4 critical nodes pass validation tests.

Known limitations:
- Slack operations extraction incomplete for some versioned nodes
- One langchain node fails due to missing dependency
- No AI tools detected (none have usableAsTool flag)

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-12 14:18:19 +02:00
czlonkowski
6851d2f253 feat: add node extraction scripts and Docker setup for n8n modules 2025-06-09 00:33:17 +02:00
czlonkowski
ee8aa729c1 Implement remote MCP server deployment capabilities
- Add HTTP/JSON-RPC server for remote MCP access
- Configure domain and authentication via environment variables
- Create comprehensive remote deployment documentation
- Support both local (stdio) and remote (HTTP) deployment modes
- Add PM2 and Nginx configuration examples
- Update README with remote server instructions

The server can now be deployed on a VM (e.g., Hetzner) and accessed
from Claude Desktop over HTTPS using the configured domain.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-08 07:31:12 +00:00
czlonkowski
078b67ff35 Implement SQLite database with full-text search for n8n node documentation
Major features implemented:
- SQLite storage service with FTS5 for fast node search
- Database rebuild mechanism for bulk node extraction
- MCP tools: search_nodes, extract_all_nodes, get_node_statistics
- Production Docker deployment with persistent storage
- Management scripts for database operations
- Comprehensive test suite for all functionality

Database capabilities:
- Stores node source code and metadata
- Full-text search by node name or content
- No versioning (stores latest only as per requirements)
- Supports complete database rebuilds
- ~4.5MB database with 500+ nodes indexed

Production features:
- Automated deployment script
- Docker Compose production configuration
- Database initialization on first run
- Volume persistence for data
- Management utilities for operations

Documentation:
- Updated README with complete instructions
- Production deployment guide
- Clear troubleshooting section
- API reference for all new tools

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-07 21:12:17 +00:00
czlonkowski
1f8140c45c Implement n8n-MCP integration
This commit adds a complete integration between n8n workflow automation and the Model Context Protocol (MCP):

Features:
- MCP server that exposes n8n workflows as tools, resources, and prompts
- Custom n8n node for connecting to MCP servers from workflows
- Bidirectional bridge for data format conversion
- Token-based authentication and credential management
- Comprehensive error handling and logging
- Full test coverage for core components

Infrastructure:
- TypeScript/Node.js project setup with proper build configuration
- Docker support with multi-stage builds
- Development and production docker-compose configurations
- Installation script for n8n custom node deployment

Documentation:
- Detailed README with usage examples and API reference
- Environment configuration templates
- Troubleshooting guide

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-07 15:43:02 +00:00