{"_id":"@eekfonky/n8n-mcp-modern","_rev":"5-bffba39f737f25fe0fdec351ed072c8e","name":"@eekfonky/n8n-mcp-modern","dist-tags":{"latest":"9.2.0"},"versions":{"8.2.0":{"name":"@eekfonky/n8n-mcp-modern","version":"8.2.0","keywords":["n8n","mcp","model-context-protocol","ai","workflow","automation","typescript","modern","claude-code","github-packages","126-tools","zero-debt"],"author":{"name":"Enhanced by eekfonky - Modern TypeScript rebuild"},"license":"MIT","_id":"@eekfonky/n8n-mcp-modern@8.2.0","maintainers":[{"name":"chriswelsh","email":"chris.welsh23@gmail.com"}],"homepage":"https://github.com/eekfonky/n8n-mcp-modern#readme","bugs":{"url":"https://github.com/eekfonky/n8n-mcp-modern/issues"},"bin":{"n8n-mcp":"dist/index.js"},"dist":{"shasum":"b311a9022db12615170a52e64a49f407e23c4f91","tarball":"https://registry.npmjs.org/@eekfonky/n8n-mcp-modern/-/n8n-mcp-modern-8.2.0.tgz","fileCount":332,"integrity":"sha512-FJbVsbowmlHkualDesrAFdxFyEne66IPU6uy/CfggnPehMSXvvOo1WQWrnmQyOEN3O6ppqmCckvSBmwBKMVCSg==","signatures":[{"sig":"MEUCIQDFLxgKxYaw5fTHJ9I101mCg+PgYoBZ0vcK7s+z6jwelgIgGZa+dTtKxWr3wqeu6bn81bohk4ThXkXhaZWAXwyEx40=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":3301692},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22.0.0"},"gitHead":"0313f6a9cec25039a44031951b654c6c31d3e416","scripts":{"ci":"npm audit --audit-level high && npm run lint && npm run typecheck && npm run test","dev":"tsx watch src/index.ts","lint":"eslint .","test":"vitest run","build":"tsc && chmod +x dist/index.js && (chmod +x dist/mcp/enhanced-server.js 2>/dev/null || true)","start":"node dist/index.js","prepare":"simple-git-hooks","release":"npm run ci && npm run build && npm run publish:dual && git push --tags","lint:fix":"eslint . --fix","mcp:setup":"node scripts/interactive-setup.cjs","precommit":"npm run lint && npm run typecheck && npm run test && npm run validate-readme","typecheck":"tsc --noEmit","mcp:backup":"node scripts/upgrade-rollback.cjs backup","mcp:health":"node scripts/health-check.cjs","test:watch":"vitest","mcp:install":"node scripts/install-mcp.js","mcp:restore":"node scripts/upgrade-rollback.cjs restore","postinstall":"node scripts/postinstall.cjs","publish:npm":"npm publish --registry https://registry.npmjs.org --access public","dev:enhanced":"tsx watch src/mcp/enhanced-server.ts","mcp:rollback":"node scripts/upgrade-rollback.cjs rollback","publish:dual":"npm publish --registry https://registry.npmjs.org --access public && npm publish --registry https://npm.pkg.github.com --access public","sync-release":"./scripts/sync-release.sh","sync-version":"node scripts/sync-version.cjs","run-discovery":"node scripts/run-discovery.js","test:coverage":"vitest run --coverage","version-check":"node -p \"'📦 Version: ' + require('./package.json').version\"","install-agents":"node scripts/install-claude-mcp.js","publish:github":"npm publish --registry https://npm.pkg.github.com --access public","start:enhanced":"node dist/mcp/enhanced-server.js","validate-readme":"node scripts/validate-readme.cjs","mcp:install-user":"echo 'Run: claude mcp add n8n-mcp-modern --scope user --env N8N_API_URL=your-url --env N8N_API_KEY=your-key -- npx -y @eekfonky/n8n-mcp-modern'","mcp:install-local":"echo 'Run: claude mcp add n8n-mcp-modern --env N8N_API_URL=your-url --env N8N_API_KEY=your-key -- npx -y @eekfonky/n8n-mcp-modern'","update-node-counts":"tsx src/scripts/update-node-count-references.ts","setup-github-packages":"node scripts/install-github-packages.cjs","update-node-counts:dry":"tsx src/scripts/update-node-count-references.ts --dry-run"},"_npmUser":{"name":"chriswelsh","email":"chris.welsh23@gmail.com"},"repository":{"url":"git+https://github.com/eekfonky/n8n-mcp-modern.git","type":"git"},"_npmVersion":"11.5.2","description":"Modern n8n MCP server with agent handovers - intelligent complexity assessment, collaborative multi-agent workflows, and context preservation for complex n8n integrations","directories":{},"lint-staged":{"*.{js,ts}":["eslint --fix"],"*.{js,ts,json,md}":["npm run typecheck"]},"_nodeVersion":"22.17.0","dependencies":{"zod":"^3.25.76","dotenv":"^17.2.1","@modelcontextprotocol/sdk":"^1.17.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","eslint":"^9.17.0","vitest":"^3.2.4","typescript":"^5.9.2","@types/node":"^22.17.2","lint-staged":"^16.1.6","simple-git-hooks":"^2.13.1","@vitest/coverage-v8":"^3.2.4","@antfu/eslint-config":"^5.2.1","eslint-plugin-format":"^1.0.1","@types/better-sqlite3":"^7.6.13","@typescript-eslint/parser":"^8.18.0","@typescript-eslint/eslint-plugin":"^8.18.0"},"simple-git-hooks":{"pre-commit":"lint-staged"},"optionalDependencies":{"better-sqlite3":"^12.2.0"},"_npmOperationalInternal":{"tmp":"tmp/n8n-mcp-modern_8.2.0_1757414243476_0.4818908965511215","host":"s3://npm-registry-packages-npm-production"}},"8.2.1":{"name":"@eekfonky/n8n-mcp-modern","version":"8.2.1","keywords":["n8n","mcp","model-context-protocol","ai","workflow","automation","typescript","modern","claude-code","github-packages","126-tools","zero-debt"],"author":{"name":"Enhanced by eekfonky - Modern TypeScript rebuild"},"license":"MIT","_id":"@eekfonky/n8n-mcp-modern@8.2.1","maintainers":[{"name":"chriswelsh","email":"chris.welsh23@gmail.com"}],"homepage":"https://github.com/eekfonky/n8n-mcp-modern#readme","bugs":{"url":"https://github.com/eekfonky/n8n-mcp-modern/issues"},"bin":{"n8n-mcp":"dist/index.js"},"dist":{"shasum":"a5aa0d91ac58aa8f32fd7f8de6fd33efca6b69da","tarball":"https://registry.npmjs.org/@eekfonky/n8n-mcp-modern/-/n8n-mcp-modern-8.2.1.tgz","fileCount":332,"integrity":"sha512-yt6M0gsCTmVVxl9WJF5Pv/eav1pdmMDh/o2bphk6iO3QASpgZz/1P/alq59g5JWyd4xmakAxguw672W49pTYBQ==","signatures":[{"sig":"MEQCIAI57A5Yz+6h9hXpjR3q+xc7VCW0R7Lcuxk4309loHuwAiBUvllfoLgKfedWP+NT1atNPcNThosj8zGLmhPuTn6iKw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":3302257},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22.0.0"},"gitHead":"0313f6a9cec25039a44031951b654c6c31d3e416","scripts":{"ci":"npm audit --audit-level high && npm run lint && npm run typecheck && npm run test","dev":"tsx watch src/index.ts","lint":"eslint .","test":"vitest run","build":"tsc && chmod +x dist/index.js && (chmod +x dist/mcp/enhanced-server.js 2>/dev/null || true)","start":"node dist/index.js","prepare":"simple-git-hooks","release":"npm run ci && npm run build && npm run publish:dual && git push --tags","lint:fix":"eslint . --fix","mcp:setup":"node scripts/interactive-setup.cjs","precommit":"npm run lint && npm run typecheck && npm run test && npm run validate-readme","typecheck":"tsc --noEmit","mcp:backup":"node scripts/upgrade-rollback.cjs backup","mcp:health":"node scripts/health-check.cjs","test:watch":"vitest","mcp:install":"node scripts/install-mcp.js","mcp:restore":"node scripts/upgrade-rollback.cjs restore","postinstall":"node scripts/postinstall.cjs","publish:npm":"npm publish --registry https://registry.npmjs.org --access public","dev:enhanced":"tsx watch src/mcp/enhanced-server.ts","mcp:rollback":"node scripts/upgrade-rollback.cjs rollback","publish:dual":"npm publish --registry https://registry.npmjs.org --access public && npm publish --registry https://npm.pkg.github.com --access public","sync-release":"./scripts/sync-release.sh","sync-version":"node scripts/sync-version.cjs","run-discovery":"node scripts/run-discovery.js","test:coverage":"vitest run --coverage","version-check":"node -p \"'📦 Version: ' + require('./package.json').version\"","install-agents":"node scripts/install-claude-mcp.js","publish:github":"npm publish --registry https://npm.pkg.github.com --access public","start:enhanced":"node dist/mcp/enhanced-server.js","validate-readme":"node scripts/validate-readme.cjs","mcp:install-user":"echo 'Run: claude mcp add n8n-mcp-modern --scope user --env N8N_API_URL=your-url --env N8N_API_KEY=your-key -- npx -y @eekfonky/n8n-mcp-modern'","mcp:install-local":"echo 'Run: claude mcp add n8n-mcp-modern --env N8N_API_URL=your-url --env N8N_API_KEY=your-key -- npx -y @eekfonky/n8n-mcp-modern'","update-node-counts":"tsx src/scripts/update-node-count-references.ts","setup-github-packages":"node scripts/install-github-packages.cjs","update-node-counts:dry":"tsx src/scripts/update-node-count-references.ts --dry-run"},"_npmUser":{"name":"chriswelsh","email":"chris.welsh23@gmail.com"},"repository":{"url":"git+https://github.com/eekfonky/n8n-mcp-modern.git","type":"git"},"_npmVersion":"11.5.2","description":"Modern n8n MCP server with agent handovers - intelligent complexity assessment, collaborative multi-agent workflows, and context preservation for complex n8n integrations","directories":{},"lint-staged":{"*.{js,ts}":["eslint --fix"],"*.{js,ts,json,md}":["npm run typecheck"]},"_nodeVersion":"22.17.0","dependencies":{"zod":"^3.25.76","dotenv":"^17.2.1","@modelcontextprotocol/sdk":"^1.17.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","eslint":"^9.17.0","vitest":"^3.2.4","typescript":"^5.9.2","@types/node":"^22.17.2","lint-staged":"^16.1.6","simple-git-hooks":"^2.13.1","@vitest/coverage-v8":"^3.2.4","@antfu/eslint-config":"^5.2.1","eslint-plugin-format":"^1.0.1","@types/better-sqlite3":"^7.6.13","@typescript-eslint/parser":"^8.18.0","@typescript-eslint/eslint-plugin":"^8.18.0"},"simple-git-hooks":{"pre-commit":"lint-staged"},"optionalDependencies":{"better-sqlite3":"^12.2.0"},"_npmOperationalInternal":{"tmp":"tmp/n8n-mcp-modern_8.2.1_1757416151523_0.03801657373803291","host":"s3://npm-registry-packages-npm-production"}},"9.0.1":{"name":"@eekfonky/n8n-mcp-modern","version":"9.0.1","keywords":["n8n","mcp","model-context-protocol","ai","workflow","automation","typescript","modern","claude-code","github-packages","dynamic-tools","conversation-driven","zero-debt"],"author":{"name":"Enhanced by eekfonky - Modern TypeScript rebuild"},"license":"MIT","_id":"@eekfonky/n8n-mcp-modern@9.0.1","maintainers":[{"name":"chriswelsh","email":"chris.welsh23@gmail.com"}],"homepage":"https://github.com/eekfonky/n8n-mcp-modern#readme","bugs":{"url":"https://github.com/eekfonky/n8n-mcp-modern/issues"},"bin":{"n8n-mcp":"dist/index.js"},"dist":{"shasum":"21ec26e188e83b1dfff5d288426fd923e647ecbf","tarball":"https://registry.npmjs.org/@eekfonky/n8n-mcp-modern/-/n8n-mcp-modern-9.0.1.tgz","fileCount":304,"integrity":"sha512-ZDkyTOqHypenHD3rCNmzqq9Cv1Me14FOKNzs6WyHAMF2osXoNcglkzee0zICdLWrfbhA0onC4M92vIZA7HUABQ==","signatures":[{"sig":"MEUCIHpwINuZ9ESU8eFnPkWgDO5wZt/vG2CuX54IzWoYG+t1AiEAwGteBLGc8mePx2bgeWq4FGb2a82ygkxdJvjZiIfJotA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2509364},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22.0.0"},"gitHead":"9929bead8de4486661eb4aedc74c047e991259b2","scripts":{"ci":"npm audit --audit-level high && npm run lint && npm run typecheck && npm run test","dev":"tsx watch src/index.ts","lint":"eslint .","test":"vitest run","build":"tsc && node -e \"if(process.platform!=='win32'){require('child_process').execSync('chmod +x dist/index.js')}\"","start":"node dist/index.js","config":"node scripts/config-manager.cjs","health":"node scripts/health-checker.cjs","update":"node scripts/smart-updater.cjs","install":"node scripts/unified-installer.cjs","publish":"npm publish --registry https://registry.npmjs.org --access public","release":"npm run ci && npm run build && npm publish","lint:fix":"eslint . --fix","precommit":"npm run lint && npm run typecheck && npm run test && npm run validate-readme","typecheck":"tsc --noEmit","test:watch":"vitest","postinstall":"node scripts/simple-postinstall.cjs","test:coverage":"vitest run --coverage","validate-readme":"node scripts/validate-readme.cjs"},"_npmUser":{"name":"chriswelsh","email":"chris.welsh23@gmail.com"},"repository":{"url":"git+https://github.com/eekfonky/n8n-mcp-modern.git","type":"git"},"_npmVersion":"11.5.2","description":"Ultra-lean, dynamic MCP server for conversation-driven n8n workflow automation with 2 dependencies","directories":{},"_nodeVersion":"22.17.0","dependencies":{"zod":"^3.25.76","@modelcontextprotocol/sdk":"^1.17.3"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","eslint":"^9.17.0","vitest":"^3.2.4","typescript":"^5.9.2","@types/node":"^22.17.2","lint-staged":"^16.1.6","simple-git-hooks":"^2.13.1","@vitest/coverage-v8":"^3.2.4","@antfu/eslint-config":"^5.2.1","eslint-plugin-format":"^1.0.1","@types/better-sqlite3":"^7.6.13","@typescript-eslint/parser":"^8.18.0","@typescript-eslint/eslint-plugin":"^8.18.0"},"_npmOperationalInternal":{"tmp":"tmp/n8n-mcp-modern_9.0.1_1758198760157_0.8722969034697416","host":"s3://npm-registry-packages-npm-production"}},"9.1.0":{"name":"@eekfonky/n8n-mcp-modern","version":"9.1.0","keywords":["n8n","mcp","model-context-protocol","ai","workflow","automation","typescript","modern","claude-code","github-packages","dynamic-tools","conversation-driven","zero-debt"],"author":{"name":"Enhanced by eekfonky - Modern TypeScript rebuild"},"license":"MIT","_id":"@eekfonky/n8n-mcp-modern@9.1.0","maintainers":[{"name":"chriswelsh","email":"chris.welsh23@gmail.com"}],"homepage":"https://github.com/eekfonky/n8n-mcp-modern#readme","bugs":{"url":"https://github.com/eekfonky/n8n-mcp-modern/issues"},"bin":{"n8n-mcp":"dist/index.js"},"dist":{"shasum":"ce5138de84868a103273caa06d3ceccc0dba4c52","tarball":"https://registry.npmjs.org/@eekfonky/n8n-mcp-modern/-/n8n-mcp-modern-9.1.0.tgz","fileCount":304,"integrity":"sha512-1s2uvjhioVj/X+XrM7gTpUTXqLPcUibzAAw9Gnk4+1wBWW6hwFS5zfVcRQaB0D2pGtSNVZLiB5cYl/ieZMqa9A==","signatures":[{"sig":"MEUCIQD3wMEitUuLOeNeOJY/NRGHNBnoPU9nbXN/YtxWNrOzXAIgN6+Smmsmtnba38D9YuSbvR1kIiz/mxFSkHGOC3f7szk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2509364},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22.0.0"},"gitHead":"b5ca7728d53bf7a0b0098c1372358e8bb6ddcdb2","scripts":{"ci":"npm audit --audit-level high && npm run lint && npm run typecheck && npm run test","dev":"tsx watch src/index.ts","lint":"eslint .","test":"vitest run","build":"tsc && node -e \"if(process.platform!=='win32'){require('child_process').execSync('chmod +x dist/index.js')}\"","start":"node dist/index.js","config":"node scripts/config-manager.cjs","health":"node scripts/health-checker.cjs","update":"node scripts/smart-updater.cjs","install":"node scripts/unified-installer.cjs","publish":"npm publish --registry https://registry.npmjs.org --access public","release":"npm run ci && npm run build && npm publish","lint:fix":"eslint . --fix","precommit":"npm run lint && npm run typecheck && npm run test && npm run validate-readme","typecheck":"tsc --noEmit","test:watch":"vitest","postinstall":"node scripts/simple-postinstall.cjs","test:coverage":"vitest run --coverage","validate-readme":"node scripts/validate-readme.cjs"},"_npmUser":{"name":"chriswelsh","email":"chris.welsh23@gmail.com"},"repository":{"url":"git+https://github.com/eekfonky/n8n-mcp-modern.git","type":"git"},"_npmVersion":"11.5.2","description":"Ultra-lean, dynamic MCP server for conversation-driven n8n workflow automation with 2 dependencies","directories":{},"_nodeVersion":"22.17.0","dependencies":{"zod":"^3.25.76","@modelcontextprotocol/sdk":"^1.17.3"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","eslint":"^9.17.0","vitest":"^3.2.4","typescript":"^5.9.2","@types/node":"^22.17.2","lint-staged":"^16.1.6","simple-git-hooks":"^2.13.1","@vitest/coverage-v8":"^3.2.4","@antfu/eslint-config":"^5.2.1","eslint-plugin-format":"^1.0.1","@types/better-sqlite3":"^7.6.13","@typescript-eslint/parser":"^8.18.0","@typescript-eslint/eslint-plugin":"^8.18.0"},"_npmOperationalInternal":{"tmp":"tmp/n8n-mcp-modern_9.1.0_1758198851276_0.34299959496271715","host":"s3://npm-registry-packages-npm-production"}},"9.2.0":{"name":"@eekfonky/n8n-mcp-modern","version":"9.2.0","description":"Ultra-lean, dynamic MCP server for conversation-driven n8n workflow automation with 2 dependencies","type":"module","main":"dist/index.js","bin":{"n8n-mcp":"dist/index.js"},"scripts":{"dev":"tsx watch src/index.ts","build":"tsc && node -e \"if(process.platform!=='win32'){require('child_process').execSync('chmod +x dist/index.js')}\"","start":"node dist/index.js","postinstall":"node scripts/simple-postinstall.cjs","test":"vitest run","test:watch":"vitest","test:coverage":"vitest run --coverage","lint":"eslint .","lint:fix":"eslint . --fix","typecheck":"tsc --noEmit","validate-readme":"node scripts/validate-readme.cjs","install":"node scripts/unified-installer.cjs","config":"node scripts/config-manager.cjs","health":"node scripts/health-checker.cjs","update":"node scripts/smart-updater.cjs","ci":"npm audit --audit-level high && npm run lint && npm run typecheck && npm run test","precommit":"npm run lint && npm run typecheck && npm run test && npm run validate-readme","release":"npm run ci && npm run build && npm publish","publish":"npm publish --registry https://registry.npmjs.org --access public"},"keywords":["n8n","mcp","model-context-protocol","ai","workflow","automation","typescript","modern","claude-code","github-packages","dynamic-tools","conversation-driven","zero-debt"],"author":{"name":"Enhanced by eekfonky - Modern TypeScript rebuild"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/eekfonky/n8n-mcp-modern.git"},"bugs":{"url":"https://github.com/eekfonky/n8n-mcp-modern/issues"},"homepage":"https://github.com/eekfonky/n8n-mcp-modern#readme","publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"engines":{"node":">=22.0.0"},"dependencies":{"@modelcontextprotocol/sdk":"^1.17.3","zod":"^3.25.76"},"devDependencies":{"@antfu/eslint-config":"^5.2.1","@types/better-sqlite3":"^7.6.13","@types/node":"^22.17.2","@typescript-eslint/eslint-plugin":"^8.18.0","@typescript-eslint/parser":"^8.18.0","@vitest/coverage-v8":"^3.2.4","eslint":"^9.17.0","eslint-plugin-format":"^1.0.1","lint-staged":"^16.1.6","simple-git-hooks":"^2.13.1","tsx":"^4.19.2","typescript":"^5.9.2","vitest":"^3.2.4"},"_id":"@eekfonky/n8n-mcp-modern@9.2.0","gitHead":"b5ca7728d53bf7a0b0098c1372358e8bb6ddcdb2","types":"./dist/index.d.ts","_nodeVersion":"22.17.0","_npmVersion":"11.5.2","dist":{"integrity":"sha512-xTd75+V4jJ4VeuEvs8TVBQYpZZ49fNPi8OhnlIhAJxXo1lERAd5iL4GqHKr3ZXKInjvGlFI5mNM+zOEoOf2oAg==","shasum":"df6daf265f6b98b58ebb9b80e8084e2dbc59eff3","tarball":"https://registry.npmjs.org/@eekfonky/n8n-mcp-modern/-/n8n-mcp-modern-9.2.0.tgz","fileCount":304,"unpackedSize":2509364,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIE89U93fUZrqQYCnyS6WqL3ShEnb1ORQiYFQKxJ8+hQ1AiBv7H06L5IRLlpFVfBnqKdtXk1q3OIOWwa+/8DiH53kJQ=="}]},"_npmUser":{"name":"chriswelsh","email":"chris.welsh23@gmail.com"},"directories":{},"maintainers":[{"name":"chriswelsh","email":"chris.welsh23@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/n8n-mcp-modern_9.2.0_1758198872352_0.19063836826530167"},"_hasShrinkwrap":false}},"time":{"created":"2025-09-09T10:37:23.403Z","modified":"2025-09-18T12:34:32.826Z","8.2.0":"2025-09-09T10:37:23.680Z","8.2.1":"2025-09-09T11:09:11.802Z","9.0.1":"2025-09-18T12:32:40.397Z","9.1.0":"2025-09-18T12:34:11.498Z","9.2.0":"2025-09-18T12:34:32.621Z"},"bugs":{"url":"https://github.com/eekfonky/n8n-mcp-modern/issues"},"author":{"name":"Enhanced by eekfonky - Modern TypeScript rebuild"},"license":"MIT","homepage":"https://github.com/eekfonky/n8n-mcp-modern#readme","keywords":["n8n","mcp","model-context-protocol","ai","workflow","automation","typescript","modern","claude-code","github-packages","dynamic-tools","conversation-driven","zero-debt"],"repository":{"type":"git","url":"git+https://github.com/eekfonky/n8n-mcp-modern.git"},"description":"Ultra-lean, dynamic MCP server for conversation-driven n8n workflow automation with 2 dependencies","maintainers":[{"name":"chriswelsh","email":"chris.welsh23@gmail.com"}],"readme":"# n8n-MCP Modern 🚀\n\n**Ultra-lean, dynamic MCP server for conversation-driven n8n workflow automation with zero legacy dependencies.**\n\n[![npm version](https://img.shields.io/npm/v/@eekfonky/n8n-mcp-modern.svg)](https://www.npmjs.com/package/@eekfonky/n8n-mcp-modern)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n\n## ✨ Features\n\n🗣️ **Conversation-Driven Development** - Build n8n workflows through natural language\n🔍 **Real-Time Node Discovery** - Automatically discovers your n8n instance's capabilities\n🛡️ **Type-Safe Integration** - Direct n8n REST API integration with Zod validation\n🤖 **15-Agent Hierarchical System** - Optimized for 675+ n8n nodes\n⚡ **Ultra-Minimal Dependencies** - Just 2 core packages (vs 1000+ in legacy versions)\n🔄 **One-Command Installation** - Simplified setup with multiple fallback strategies\n🌐 **Universal AI Compatibility** - Works with Claude and any MCP-compatible AI assistant\n📖 **Open Source** - Community-driven development with zero technical debt\n\n## 🚀 Quick Start\n\n### Simple Installation\n\n```bash\n# Install globally from npmjs.org\nnpm install -g @eekfonky/n8n-mcp-modern\n\n# Start using immediately\nn8n-mcp\n```\n\n### Claude Code Integration\n\n**One-Command Setup:**\n```bash\n# Install globally with auto-setup\nnpm install -g @eekfonky/n8n-mcp-modern\n\n# Or via Claude Code (recommended)\nclaude mcp add @eekfonky/n8n-mcp-modern\n```\n\nThis automatically installs:\n- ✅ n8n-MCP Modern server\n- ✅ 6 specialized Claude Code agents\n- ✅ Required MCP dependencies (sequential-thinking, memory, filesystem, context7)\n- ✅ Dynamic node discovery system\n- ✅ Enhanced database schema\n\n**Manual Setup (if needed):**\n```bash\n# Clone and setup\ngit clone https://github.com/eekfonky/n8n-mcp-modern.git\ncd n8n-mcp-modern\nnpm install\nnpm run build\nnode scripts/setup-agents.js\n```\n\n**Configuration:**\nUpdate your `.mcp.json` with your n8n instance:\n```json\n{\n  \"mcpServers\": {\n    \"n8n-mcp-modern\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@eekfonky/n8n-mcp-modern\"],\n      \"env\": {\n        \"N8N_API_URL\": \"https://your-n8n-instance.com\",\n        \"N8N_API_KEY\": \"your-api-key\"\n      }\n    }\n  }\n}\n```\n\n**That's it!** Start building workflows with AI agents:\n> \"Create a workflow that sends a Slack message when a new GitHub issue is opened\"\n\n## 📦 Advanced Installation\n\n### Unified Installer (Recommended)\n```bash\n# Run the unified installer with multiple fallback strategies\nnpm run install\n\n# Options:\nnpm run install --global    # Install globally\nnpm run install --verbose   # Show detailed progress\nnpm run install --force     # Force reinstall\n```\n\n### Manual Installation\n```bash\n# Primary: Install from npmjs.org\nnpm install -g @eekfonky/n8n-mcp-modern\n\n# Fallback: If above fails, try GitHub Packages\nnpm install -g @eekfonky/n8n-mcp-modern --registry=https://npm.pkg.github.com\n\n# Emergency: Install from source\ngit clone https://github.com/eekfonky/n8n-mcp-modern.git\ncd n8n-mcp-modern\nnpm install && npm run build && npm install -g .\n```\n\n## ⚙️ Configuration\n\n### Environment Variables\n\n| Variable | Required | Description | Example |\n|----------|----------|-------------|---------|\n| `N8N_API_URL` | Optional | Your n8n instance URL | `https://n8n.example.com` |\n| `N8N_API_KEY` | Optional | n8n API key | `your-api-key` |\n| `MCP_MODE` | No | MCP protocol mode | `stdio` (default) |\n| `LOG_LEVEL` | No | Logging level | `info`, `debug`, `error` |\n| `ENABLE_CACHE` | No | Enable response caching | `true` (default) |\n| `CACHE_TTL` | No | Cache TTL in seconds | `3600` (1 hour) |\n\n### Configuration Manager\n```bash\n# Interactive configuration setup\nnpm run config\n\n# Backup current configurations\nnpm run config --backup\n\n# Non-interactive setup\nnpm run config --non-interactive\n```\n\nThe config manager handles:\n- Claude Code integration\n- VS Code MCP settings\n- Environment variable setup\n- API key configuration\n\n## 🏗️ Hybrid Architecture\n\n### Claude Code Sub-Agents (6 Specialists)\n\n**Master Orchestrator:**\n- **n8n-control** (Opus) - Strategic planning & agent coordination\n\n**Core Specialists:**\n- **n8n-architect** (Opus) - Workflow architecture & design patterns\n- **n8n-node** (Sonnet) - Node selection & configuration expert\n- **n8n-connector** (Sonnet) - Authentication & API connectivity\n- **n8n-scriptguard** (Sonnet) - JavaScript validation & security\n- **n8n-guide** (Haiku) - Documentation & user guidance\n\n### Dynamic Node Discovery\n\n**Real-Time Intelligence:**\n- Connects to your n8n instance via REST API\n- Discovers 675+ nodes (built-in + community) automatically\n- Stores schemas and capabilities in SQLite database\n- Updates when you install new community nodes\n\n**Agent Delegation Examples:**\n```bash\n# Complex workflows\n\"n8n-control, create a data processing pipeline with error handling\"\n\n# Node expertise\n\"n8n-node, find the best way to connect to PostgreSQL\"\n\n# Authentication help\n\"n8n-connector, set up OAuth for Google Sheets integration\"\n\n# Code validation\n\"n8n-scriptguard, review this JavaScript for security issues\"\n\n# Documentation\n\"n8n-guide, explain how webhook triggers work\"\n```\n\n### Intelligent Learning System\n\n**Pattern Recognition:**\n- Learns from successful workflow patterns\n- Stores node configurations that work well together\n- Suggests optimizations based on usage history\n- Builds knowledge graph of effective connections\n\n**Zero Static Dependencies:**\n- No hardcoded node lists or schemas\n- Everything discovered dynamically from your instance\n- Adapts automatically to your specific n8n setup\n\n## 🔄 Maintenance & Updates\n\n### Smart Updater\n```bash\n# Check for updates and optionally apply them\nnpm run update\n\n# Options:\nnpm run update --force          # Force update regardless of version\nnpm run update --dry-run        # Preview what would be updated\nnpm run update --auto-consent   # Skip confirmation prompts\n```\n\n### Health Monitoring\n```bash\n# Comprehensive health check\nnpm run health\n\n# Options:\nnpm run health --verbose        # Detailed diagnostics\nnpm run health --json          # Machine-readable output\nnpm run health --quick          # Skip network tests\n```\n\n### Troubleshooting\n```bash\n# Reinstall with unified installer\nnpm run install --force\n\n# Check installation integrity\nnpm run health\n\n# View detailed logs\nLOG_LEVEL=debug n8n-mcp\n```\n\n## 📊 Performance Benchmarks\n\n| Metric | Legacy (v3.x) | Modern (v4.0) | Improvement |\n|--------|---------------|---------------|-------------|\n| Bundle Size | 1.1GB | 15MB | 95% smaller |\n| Dependencies | 1000+ | 5 core | 99.5% fewer |\n| Installation | 3+ minutes | <30 seconds | 10x faster |\n| Runtime Speed | Baseline | 2x faster | 100% faster |\n| Security Issues | 16 critical | 0 vulnerabilities | 100% secure |\n\n## 🧪 Testing\n\nThe project uses Vitest with organized test structure:\n\n```bash\n# Run all tests\nnpm test\n\n# Run by category\nnpm test tests/unit/           # Unit tests\nnpm test tests/integration/    # Integration tests\nnpm test tests/behavioral/     # End-to-end behavioral tests\n\n# Coverage and reporting\nnpm run test:coverage         # Generate coverage report\nnpm run test:watch           # Watch mode for development\n```\n\nTest organization:\n- `tests/unit/` - Component and utility tests\n- `tests/integration/` - API and system integration tests\n- `tests/behavioral/` - User workflow and agent behavior tests\n\n## 🛡️ Security\n\n- **Type-safe API handling** with comprehensive Zod validation\n- **Zero vulnerabilities** (regular security audits)\n- **Structured error handling** prevents information leaks\n- **Rate limiting** protects against API abuse\n- **Input sanitization** for all user data\n\n## 📚 Agent Orchestration Examples\n\n### Multi-Agent Workflow Creation\n```text\nUser: \"Create a complete data processing pipeline with monitoring\"\n\nn8n-control: 🎯 Analyzing requirements and delegating to specialists...\n├── n8n-architect: 🏗️ Designing pipeline architecture with error handling\n├── n8n-node: 🔧 Selecting optimal nodes (CSV, PostgreSQL, Slack)\n├── n8n-connector: 🔐 Configuring database and API authentication\n└── n8n-scriptguard: 🛡️ Validating data transformation scripts\n\nResult: ✅ Production-ready workflow with monitoring and alerts\n```\n\n### Intelligent Node Discovery\n```text\nUser: \"Find nodes for processing payments\"\n\nn8n-node: 🔍 Discovering payment nodes from your instance...\n🆔 Found: Stripe (v2.1), PayPal (v1.8), Square (community v1.2)\n📊 Usage patterns: Stripe most reliable for subscriptions\n🔧 Configuration: OAuth required for all payment nodes\n💡 Recommendation: Use Stripe for recurring, PayPal for one-time\n```\n\n### Dynamic Learning & Optimization\n```text\nUser: \"Optimize my email marketing workflow\"\n\nn8n-architect: 📈 Analyzing current workflow performance...\n🧠 Memory: Similar workflows show 40% better rates with personalization\n🔄 Pattern: Successful configs use conditional branching + A/B testing\n⚡ Optimization: Batch processing reduces API calls by 60%\n✅ Updated workflow with performance improvements\n```\n\n### Security & Validation\n```text\nUser: \"Review this workflow for security issues\"\n\nn8n-scriptguard: 🛡️ Scanning workflow for security vulnerabilities...\n⚠️  Found: Unsanitized user input in Code node (line 23)\n⚠️  Found: API key in plain text (should use credentials)\n✅ No infinite loops detected\n💡 Recommendations: Input validation + credential management\n```\n\n## 📝 Dynamic MCP Tools\n\n### Auto-Generated from Your n8n Instance\n\nn8n-MCP Modern creates tools dynamically based on your discovered nodes:\n\n**Core Workflow Tools:**\n- `discover_nodes` - Scan and cache all available nodes\n- `search_nodes` - Find nodes by capability or category\n- `create_workflow` - Build new workflows\n- `validate_workflow` - Check for errors and best practices\n- `suggest_node_config` - Get configuration recommendations\n\n**Node-Specific Tools (Auto-Generated):**\n```typescript\n// Examples based on your n8n instance:\nn8n_slack_send_message()     // If Slack node available\nn8n_postgres_query()         // If PostgreSQL node available\nn8n_http_request()          // HTTP Request node\nn8n_webhook_trigger()       // Webhook trigger node\n```\n\n**Learning & Analytics:**\n- `save_workflow_pattern` - Store successful patterns\n- `suggest_workflow_patterns` - Get pattern recommendations\n- `get_node_stats` - View usage and performance data\n\n### Agent-Specific Capabilities\n\nEach Claude Code agent has specialized tool access:\n\n- **n8n-control**: All tools + orchestration capabilities\n- **n8n-architect**: Pattern analysis + performance tools\n- **n8n-node**: Node discovery + configuration tools\n- **n8n-connector**: Authentication + API tools\n- **n8n-scriptguard**: Code validation + security tools\n- **n8n-guide**: Documentation + help tools\n\n## 🤝 Contributing\n\n1. Fork the repository\n2. Create a feature branch: `git checkout -b feature/amazing-feature`\n3. Commit changes: `git commit -m 'feat: add amazing feature'`\n4. Push to branch: `git push origin feature/amazing-feature`\n5. Open a Pull Request\n\n### Development Workflow\n```bash\n# Setup\ngit clone https://github.com/eekfonky/n8n-mcp-modern.git\ncd n8n-mcp-modern\nnpm install\n\n# Development\nnpm run dev\n\n# Testing\nnpm run lint\nnpm run typecheck\nnpm test\n\n# Build\nnpm run build\n```\n\n## 📋 Requirements\n\n- **Node.js**: 22+ (for modern `fetch()` API and ES2024 features)\n- **npm**: 8+\n- **n8n instance**: Optional (enhanced features with API access)\n- **MCP-compatible AI**: Claude Code, Claude Desktop, or any MCP client\n\n## 🐛 Troubleshooting\n\n### Common Issues\n\n**MCP Connection Failed:**\n```bash\n# Check Node.js version\nnode --version  # Should be 22+\n\n# Verify installation\nnpm list -g @eekfonky/n8n-mcp-modern\n```\n\n**API Authentication Error:**\n```bash\n# Test API connectivity\ncurl -H \"X-N8N-API-KEY: your-key\" https://your-n8n.com/api/v1/workflows\n```\n\n**Discovery Not Working:**\n- Ensure n8n API credentials are configured\n- Check firewall/network access to n8n instance\n- Verify API key has sufficient permissions\n\n## 📖 Documentation\n\n- [API Documentation](docs/api.md)\n- [Agent System Guide](docs/agents.md)  \n- [Configuration Reference](docs/config.md)\n- [Troubleshooting Guide](docs/troubleshooting.md)\n\n## 📄 License\n\nMIT License - see [LICENSE](LICENSE) file for details.\n\n## 🙏 Acknowledgments\n\n- n8n team for the amazing workflow automation platform\n- Anthropic for Claude and MCP protocol\n- Open source community for contributions and feedback\n\n---\n\n**Built with ❤️ for the n8n and Claude communities**\n\n*Need help? Open an issue or check our [documentation](docs/).*","readmeFilename":"README.md"}