From abc226f11168bf6a0974cb2dc243c3c42e5a2739 Mon Sep 17 00:00:00 2001 From: czlonkowski <56956555+czlonkowski@users.noreply.github.com> Date: Mon, 15 Sep 2025 23:46:33 +0200 Subject: [PATCH] feat: add optional fields parameter to search_templates tool MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Added fields parameter to filter response fields in search_templates - Reduces response size by 70-98% when using selective fields - Maintains backward compatibility with optional parameter - Supports all template fields: id, name, description, author, nodes, views, created, url, metadata - Updated tool documentation with examples 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- README.md | 2 +- data/nodes.db | Bin 51064832 -> 51064832 bytes docs/CHANGELOG.md | 16 + package-lock.json | 2333 +---------------- package.json | 2 +- src/mcp/server.ts | 7 +- .../tool-docs/templates/search-templates.ts | 16 +- src/mcp/tools.ts | 8 + src/templates/template-service.ts | 29 +- tests/unit/services/template-service.test.ts | 2 +- 10 files changed, 76 insertions(+), 2339 deletions(-) diff --git a/README.md b/README.md index b8381a4..1d477ed 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,7 @@ [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT) [![GitHub stars](https://img.shields.io/github/stars/czlonkowski/n8n-mcp?style=social)](https://github.com/czlonkowski/n8n-mcp) -[![Version](https://img.shields.io/badge/version-2.11.0-blue.svg)](https://github.com/czlonkowski/n8n-mcp) +[![Version](https://img.shields.io/badge/version-2.11.1-blue.svg)](https://github.com/czlonkowski/n8n-mcp) [![npm version](https://img.shields.io/npm/v/n8n-mcp.svg)](https://www.npmjs.com/package/n8n-mcp) [![codecov](https://codecov.io/gh/czlonkowski/n8n-mcp/graph/badge.svg?token=YOUR_TOKEN)](https://codecov.io/gh/czlonkowski/n8n-mcp) [![Tests](https://img.shields.io/badge/tests-1728%20passing-brightgreen.svg)](https://github.com/czlonkowski/n8n-mcp/actions) diff --git a/data/nodes.db b/data/nodes.db index 390ecc6dca5e95eabba6dc0f840426e3f424ebcd..46c56d933199c795dc64740ffec6e51a44f34f1a 100644 GIT binary patch delta 2897 zcmWmDQ>P0f>t4`uvNq=Y8A7JTP3WL zRw=8rRmLi7m9xrQ6|9O@C9ASk#rn&tYE`qUTQ#hjRxPWxRmZAp)wAkb4XlP1eHvMf zttM7etC`i@YGJjsT3M~FHdb4!oz>pzV0E-QS)HveR#&T=)!pi0^|X3fy{$f0U#p+h z-x^>Iv<6v&ts&M>%hoV!xHZBWX^pZ*TVt%T);MdtHNl!_O|m9iQ>>}hG;6vw!T4*h@7F$cKrPklpGHbc@kM*y$!dhvqvQ}GbthLrUYrVC>+GuUE zHd|Y)t=2YcyS2mGY3;IhTYId%);?>$b-+4k9kLEvN35gPG3&T>!a8Z4vQArPth3fR z>%4Wrx@cXpE?ZZutJXE^x^=_4Y2C7JTX(Fx);;UK^}u>)J+dBKPpqfbGwZqa!g^`F zvR+$nthd%X>%H~C`e=Q!K3iX`uhuu~yY<8RY5lT(TYp9>*jNQaAc7DaArKOw5E@|+ z7U2*c5fBlP5E)Sr710nKF%T265F2q27x54u36KzpkQhmj6v>brDUcGWkQ!-_7U_^4 z8ITc~kQrH!71@v-Igk^%kQ;fB7x|DM1yB%$P#8r}6va>+B~TKjP#R@W7UfVL6;KhC zP#IP57pkHfs-p&Kq84hS4(g&F>Z1V~;{X1Q&=^h76wS~aEzlCJ&>C&f7VXd;9ncY- z&>3CO72VJsJMZw7yZy5127PSFc?EH6vi+N#|VtXD2&D!jKw&N#{^8oBuvH> zOvN-z#|+HGEX>9n%*8y+#{w+GA}q!dEXChghUNGN|6&DJVii_n4c1~E)?))UViPuF z3$|h#wqpl&Vi$H}5B6do_TvB!;t&qw2#(?yj^hMQ;uKEf49?;l&f@|u;u0?73a;WB zuHy!7;udb>4({R}?&AR-;t?L>37+B^p5p~x;uT)w4c_7%-s1y4;uAjO3%=qTzT*de z;un77Pq2{+WPb!A2*D8oArT6p5e8uq4&f025fKTI5d~2Z4bc$;F%b)~5eIP*5Al%z z36ThikpxMR49SrKDUk}Pkp^jz4(X8r8IcK@kp)?i4cU6bB~c2cQ3hpE4&_k+6;TP5Q3ZdYDypG6YM>@+p*HHEF6yB^8lWNm@81ZG z(F9G=49(F3Ezt_C(FSeN4(-ta9nlG$(FI-64c*ZLJ<$uj(Fc9e5B)I!12G7LF$6KWK6+SOv7}{z)Z}-Y|O!2%)@*vz(Op-Vl2T@{EcN; zj(_kkR$wJoVKvrZE!JT@Hee$*VKcU1E4E=fc3>xVVK??*FZN+S4&WdT;V_QiD30Mc zPT(X?;WWV&?+qP}nww+ENzCSSMOuxG;WA?+?*ipJ~ z2?$8PAs`^d=74~JPyqpx;*3j^F|hlV{<4BufmVw zB3XY~k*z3JR4bYl-TK>#Va2p!S+T7+R$MEd72ir=CA1P*|5%BwBvw)@nU&m1VWqTE zS*fiwR$A*{E1i|z%3x)*GFh3eELK)4o0Z+lVdb=PS-Gt|R$eQgmES606|@Rjg{>l1 zQLC6$+$v#}v`Sf}tuj_wtDIHds$f;LDp{4SDppminpNGZVb!#1S+%V?R$Z%}MW6as z1FNCc$ZBjgv6@=Vtmak=tEJV-YHhW#+FI?b_Erb0qt(gkY<01^THUPfRu8ME)ywK_ z^|AU|{jC1h0BfK%$g(xq8e$E#hFQa{5!Og+lr`EKV~w@OS>vq<)yUNWI$|BQj#tq0aa>yh=?dSX4bo>|YW7uHMb zmG#->o0kPwSWU+xjz1!A2<<0uhAZ2!W6Yh0q9t zun33nh=7QQguf6OQ4kf;5FLLb24W%>Vj~XXA|B!+0TLn+{y}0SK~f|`a-={?q(W+> zL0bHabV!d3$cRkHj4a5CY{-rr$cbFYjXcPUe8`UiD2PHRj3OwCVknLhD2Y-ijWQ^U zawv}qsEA6aj4G&#YN(DHsEJyrjXJ1{dicM8eKbHrG(uxEK~pqCbF@H9v_fmNL0hy# zdvriYbV6rzL05D`cl1C{^g?g+L0|Mke+FdQQ=5~DC0V=xxuFdh>y z5tA?(Q!o|NFdZ{66SFWIb1)b4FdqxB5R0%FORyBnupBF}605KpYp@pUupS$*5u30X zTd)<|upK+F6T7e*d$1S#upb9-5QlIWM{pF!a2zLa5~pw)XK)tha2^+M5tncoS8x^A za2+>r6Sr_1cW@W?a32rw5RdQ}Pw*7a@EkAj60h(YZ}1lH@E#xV5uflGU+@**@Et$! z6Tk2qe}WBDAp0W_K?sfz2#HV#jW7s{a0rhGh=@q|3y~28Q4tN%@i$^1CSoBr;vg>K zAwCiyArj#qBt{Y>MKUBu3Zz6Tq(&N~#lJ|0^vHmW$b`(uf~?4f?8t$f$c5af~u&7>ZpO5sD;|7gSx1P|NGZR z12jY1WMLV=d2XsUybVe6+MK^Ru5A;MY^hO`_ML+b%01U(+ z7=tkcLop1)F#;no3ZpRwV=)fnF#!`X36n7eQ!x$GF#|I(3$rl?b1@I|u>cFP2#c`< zOR)^gu>vcx3ahaOYq1XNu>l*g37fG6Td@t>u>(7?3%jugd$AAuaR3K#2#0Y5M{x|t zaRMiC3a4=fXK@baaRC=`372sNS8)y3aRWDT3%79xcX1E*@c<9;2#@guPw@=T@d7XL z3a{}7Z}ATA@c|$437_!=U-1p!@dH2c3%~IvaF~MFAAtx$aD+feghFV9LD-;O3Kujt F-GAU}SNi|} diff --git a/docs/CHANGELOG.md b/docs/CHANGELOG.md index 05368db..41509ed 100644 --- a/docs/CHANGELOG.md +++ b/docs/CHANGELOG.md @@ -7,6 +7,17 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +## [2.11.1] - 2025-09-15 + +### Added +- **Optional Fields Parameter for search_templates**: Enhanced search_templates tool with field filtering capability + - New optional `fields` parameter accepts an array of field names to include in response + - Supported fields: 'id', 'name', 'description', 'author', 'nodes', 'views', 'created', 'url', 'metadata' + - Reduces response size by 70-98% when requesting only specific fields (e.g., just id and name) + - Maintains full backward compatibility - existing calls without fields parameter work unchanged + - Example: `search_templates({query: "slack", fields: ["id", "name"]})` returns minimal data + - Significantly improves AI agent performance by reducing token usage + ### Added - **Fuzzy Node Type Matching for Templates**: Improved template discovery with flexible node type resolution - Templates can now be found using simple node names: `["slack"]` instead of `["n8n-nodes-base.slack"]` @@ -1286,6 +1297,11 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Basic n8n and MCP integration - Core workflow automation features +[2.11.1]: https://github.com/czlonkowski/n8n-mcp/compare/v2.11.0...v2.11.1 +[2.11.0]: https://github.com/czlonkowski/n8n-mcp/compare/v2.10.9...v2.11.0 +[2.10.9]: https://github.com/czlonkowski/n8n-mcp/compare/v2.10.8...v2.10.9 +[2.10.8]: https://github.com/czlonkowski/n8n-mcp/compare/v2.10.5...v2.10.8 +[2.10.5]: https://github.com/czlonkowski/n8n-mcp/compare/v2.10.4...v2.10.5 [2.10.4]: https://github.com/czlonkowski/n8n-mcp/compare/v2.10.3...v2.10.4 [2.10.3]: https://github.com/czlonkowski/n8n-mcp/compare/v2.10.2...v2.10.3 [2.10.2]: https://github.com/czlonkowski/n8n-mcp/compare/v2.10.1...v2.10.2 diff --git a/package-lock.json b/package-lock.json index 31e1925..e7c651d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "n8n-mcp", - "version": "2.11.0", + "version": "2.11.1", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "n8n-mcp", - "version": "2.11.0", + "version": "2.11.1", "license": "MIT", "dependencies": { "@modelcontextprotocol/sdk": "^1.13.2", @@ -16,8 +16,10 @@ "n8n": "^1.110.1", "n8n-core": "^1.109.0", "n8n-workflow": "^1.107.0", + "openai": "^4.77.0", "sql.js": "^1.13.0", - "uuid": "^10.0.0" + "uuid": "^10.0.0", + "zod": "^3.24.1" }, "bin": { "n8n-mcp": "dist/mcp/index.js" @@ -8249,633 +8251,6 @@ "uuid": "dist/bin/uuid" } }, - "node_modules/@n8n/backend-test-utils/node_modules/@opentelemetry/api-logs": { - "version": "0.57.1", - "resolved": "https://registry.npmjs.org/@opentelemetry/api-logs/-/api-logs-0.57.1.tgz", - "integrity": "sha512-I4PHczeujhQAQv6ZBzqHYEUiggZL4IdSMixtVD3EYqbdrjujE7kRfI5QohjlPoJm8BvenoW5YaTMWRrbpot6tg==", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/api": "^1.3.0" - }, - "engines": { - "node": ">=14" - } - }, - "node_modules/@n8n/backend-test-utils/node_modules/@opentelemetry/instrumentation": { - "version": "0.57.1", - "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation/-/instrumentation-0.57.1.tgz", - "integrity": "sha512-SgHEKXoVxOjc20ZYusPG3Fh+RLIZTSa4x8QtD3NfgAUDyqdFFS9W1F2ZVbZkqDCdyMcQG02Ok4duUGLHJXHgbA==", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/api-logs": "0.57.1", - "@types/shimmer": "^1.2.0", - "import-in-the-middle": "^1.8.1", - "require-in-the-middle": "^7.1.1", - "semver": "^7.5.2", - "shimmer": "^1.2.1" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - } - }, - "node_modules/@n8n/backend-test-utils/node_modules/@opentelemetry/instrumentation-connect": { - "version": "0.43.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation-connect/-/instrumentation-connect-0.43.0.tgz", - "integrity": "sha512-Q57JGpH6T4dkYHo9tKXONgLtxzsh1ZEW5M9A/OwKrZFyEpLqWgjhcZ3hIuVvDlhb426iDF1f9FPToV/mi5rpeA==", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/core": "^1.8.0", - "@opentelemetry/instrumentation": "^0.57.0", - "@opentelemetry/semantic-conventions": "^1.27.0", - "@types/connect": "3.4.36" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - } - }, - "node_modules/@n8n/backend-test-utils/node_modules/@opentelemetry/instrumentation-dataloader": { - "version": "0.16.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation-dataloader/-/instrumentation-dataloader-0.16.0.tgz", - "integrity": "sha512-88+qCHZC02up8PwKHk0UQKLLqGGURzS3hFQBZC7PnGwReuoKjHXS1o29H58S+QkXJpkTr2GACbx8j6mUoGjNPA==", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/instrumentation": "^0.57.0" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - } - }, - "node_modules/@n8n/backend-test-utils/node_modules/@opentelemetry/instrumentation-express": { - "version": "0.47.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation-express/-/instrumentation-express-0.47.0.tgz", - "integrity": "sha512-XFWVx6k0XlU8lu6cBlCa29ONtVt6ADEjmxtyAyeF2+rifk8uBJbk1La0yIVfI0DoKURGbaEDTNelaXG9l/lNNQ==", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/core": "^1.8.0", - "@opentelemetry/instrumentation": "^0.57.0", - "@opentelemetry/semantic-conventions": "^1.27.0" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - } - }, - "node_modules/@n8n/backend-test-utils/node_modules/@opentelemetry/instrumentation-fs": { - "version": "0.19.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation-fs/-/instrumentation-fs-0.19.0.tgz", - "integrity": "sha512-JGwmHhBkRT2G/BYNV1aGI+bBjJu4fJUD/5/Jat0EWZa2ftrLV3YE8z84Fiij/wK32oMZ88eS8DI4ecLGZhpqsQ==", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/core": "^1.8.0", - "@opentelemetry/instrumentation": "^0.57.0" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - } - }, - "node_modules/@n8n/backend-test-utils/node_modules/@opentelemetry/instrumentation-generic-pool": { - "version": "0.43.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation-generic-pool/-/instrumentation-generic-pool-0.43.0.tgz", - "integrity": "sha512-at8GceTtNxD1NfFKGAuwtqM41ot/TpcLh+YsGe4dhf7gvv1HW/ZWdq6nfRtS6UjIvZJOokViqLPJ3GVtZItAnQ==", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/instrumentation": "^0.57.0" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - } - }, - "node_modules/@n8n/backend-test-utils/node_modules/@opentelemetry/instrumentation-graphql": { - "version": "0.47.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation-graphql/-/instrumentation-graphql-0.47.0.tgz", - "integrity": "sha512-Cc8SMf+nLqp0fi8oAnooNEfwZWFnzMiBHCGmDFYqmgjPylyLmi83b+NiTns/rKGwlErpW0AGPt0sMpkbNlzn8w==", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/instrumentation": "^0.57.0" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - } - }, - "node_modules/@n8n/backend-test-utils/node_modules/@opentelemetry/instrumentation-hapi": { - "version": "0.45.1", - "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation-hapi/-/instrumentation-hapi-0.45.1.tgz", - "integrity": "sha512-VH6mU3YqAKTePPfUPwfq4/xr049774qWtfTuJqVHoVspCLiT3bW+fCQ1toZxt6cxRPYASoYaBsMA3CWo8B8rcw==", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/core": "^1.8.0", - "@opentelemetry/instrumentation": "^0.57.0", - "@opentelemetry/semantic-conventions": "^1.27.0" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - } - }, - "node_modules/@n8n/backend-test-utils/node_modules/@opentelemetry/instrumentation-http": { - "version": "0.57.1", - "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation-http/-/instrumentation-http-0.57.1.tgz", - "integrity": "sha512-ThLmzAQDs7b/tdKI3BV2+yawuF09jF111OFsovqT1Qj3D8vjwKBwhi/rDE5xethwn4tSXtZcJ9hBsVAlWFQZ7g==", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/core": "1.30.1", - "@opentelemetry/instrumentation": "0.57.1", - "@opentelemetry/semantic-conventions": "1.28.0", - "forwarded-parse": "2.1.2", - "semver": "^7.5.2" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - } - }, - "node_modules/@n8n/backend-test-utils/node_modules/@opentelemetry/instrumentation-ioredis": { - "version": "0.47.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation-ioredis/-/instrumentation-ioredis-0.47.0.tgz", - "integrity": "sha512-4HqP9IBC8e7pW9p90P3q4ox0XlbLGme65YTrA3UTLvqvo4Z6b0puqZQP203YFu8m9rE/luLfaG7/xrwwqMUpJw==", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/instrumentation": "^0.57.0", - "@opentelemetry/redis-common": "^0.36.2", - "@opentelemetry/semantic-conventions": "^1.27.0" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - } - }, - "node_modules/@n8n/backend-test-utils/node_modules/@opentelemetry/instrumentation-kafkajs": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation-kafkajs/-/instrumentation-kafkajs-0.7.0.tgz", - "integrity": "sha512-LB+3xiNzc034zHfCtgs4ITWhq6Xvdo8bsq7amR058jZlf2aXXDrN9SV4si4z2ya9QX4tz6r4eZJwDkXOp14/AQ==", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/instrumentation": "^0.57.0", - "@opentelemetry/semantic-conventions": "^1.27.0" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - } - }, - "node_modules/@n8n/backend-test-utils/node_modules/@opentelemetry/instrumentation-knex": { - "version": "0.44.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation-knex/-/instrumentation-knex-0.44.0.tgz", - "integrity": "sha512-SlT0+bLA0Lg3VthGje+bSZatlGHw/vwgQywx0R/5u9QC59FddTQSPJeWNw29M6f8ScORMeUOOTwihlQAn4GkJQ==", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/instrumentation": "^0.57.0", - "@opentelemetry/semantic-conventions": "^1.27.0" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - } - }, - "node_modules/@n8n/backend-test-utils/node_modules/@opentelemetry/instrumentation-koa": { - "version": "0.47.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation-koa/-/instrumentation-koa-0.47.0.tgz", - "integrity": "sha512-HFdvqf2+w8sWOuwtEXayGzdZ2vWpCKEQv5F7+2DSA74Te/Cv4rvb2E5So5/lh+ok4/RAIPuvCbCb/SHQFzMmbw==", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/core": "^1.8.0", - "@opentelemetry/instrumentation": "^0.57.0", - "@opentelemetry/semantic-conventions": "^1.27.0" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - } - }, - "node_modules/@n8n/backend-test-utils/node_modules/@opentelemetry/instrumentation-lru-memoizer": { - "version": "0.44.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation-lru-memoizer/-/instrumentation-lru-memoizer-0.44.0.tgz", - "integrity": "sha512-Tn7emHAlvYDFik3vGU0mdwvWJDwtITtkJ+5eT2cUquct6nIs+H8M47sqMJkCpyPe5QIBJoTOHxmc6mj9lz6zDw==", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/instrumentation": "^0.57.0" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - } - }, - "node_modules/@n8n/backend-test-utils/node_modules/@opentelemetry/instrumentation-mongodb": { - "version": "0.51.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation-mongodb/-/instrumentation-mongodb-0.51.0.tgz", - "integrity": "sha512-cMKASxCX4aFxesoj3WK8uoQ0YUrRvnfxaO72QWI2xLu5ZtgX/QvdGBlU3Ehdond5eb74c2s1cqRQUIptBnKz1g==", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/instrumentation": "^0.57.0", - "@opentelemetry/semantic-conventions": "^1.27.0" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - } - }, - "node_modules/@n8n/backend-test-utils/node_modules/@opentelemetry/instrumentation-mongoose": { - "version": "0.46.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation-mongoose/-/instrumentation-mongoose-0.46.0.tgz", - "integrity": "sha512-mtVv6UeaaSaWTeZtLo4cx4P5/ING2obSqfWGItIFSunQBrYROfhuVe7wdIrFUs2RH1tn2YYpAJyMaRe/bnTTIQ==", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/core": "^1.8.0", - "@opentelemetry/instrumentation": "^0.57.0", - "@opentelemetry/semantic-conventions": "^1.27.0" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - } - }, - "node_modules/@n8n/backend-test-utils/node_modules/@opentelemetry/instrumentation-mysql": { - "version": "0.45.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation-mysql/-/instrumentation-mysql-0.45.0.tgz", - "integrity": "sha512-tWWyymgwYcTwZ4t8/rLDfPYbOTF3oYB8SxnYMtIQ1zEf5uDm90Ku3i6U/vhaMyfHNlIHvDhvJh+qx5Nc4Z3Acg==", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/instrumentation": "^0.57.0", - "@opentelemetry/semantic-conventions": "^1.27.0", - "@types/mysql": "2.15.26" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - } - }, - "node_modules/@n8n/backend-test-utils/node_modules/@opentelemetry/instrumentation-mysql2": { - "version": "0.45.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation-mysql2/-/instrumentation-mysql2-0.45.0.tgz", - "integrity": "sha512-qLslv/EPuLj0IXFvcE3b0EqhWI8LKmrgRPIa4gUd8DllbBpqJAvLNJSv3cC6vWwovpbSI3bagNO/3Q2SuXv2xA==", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/instrumentation": "^0.57.0", - "@opentelemetry/semantic-conventions": "^1.27.0", - "@opentelemetry/sql-common": "^0.40.1" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - } - }, - "node_modules/@n8n/backend-test-utils/node_modules/@opentelemetry/instrumentation-pg": { - "version": "0.50.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation-pg/-/instrumentation-pg-0.50.0.tgz", - "integrity": "sha512-TtLxDdYZmBhFswm8UIsrDjh/HFBeDXd4BLmE8h2MxirNHewLJ0VS9UUddKKEverb5Sm2qFVjqRjcU+8Iw4FJ3w==", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/core": "^1.26.0", - "@opentelemetry/instrumentation": "^0.57.0", - "@opentelemetry/semantic-conventions": "1.27.0", - "@opentelemetry/sql-common": "^0.40.1", - "@types/pg": "8.6.1", - "@types/pg-pool": "2.0.6" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - } - }, - "node_modules/@n8n/backend-test-utils/node_modules/@opentelemetry/instrumentation-pg/node_modules/@opentelemetry/semantic-conventions": { - "version": "1.27.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.27.0.tgz", - "integrity": "sha512-sAay1RrB+ONOem0OZanAR1ZI/k7yDpnOQSQmTMuGImUQb2y8EbSaCJ94FQluM74xoU03vlb2d2U90hZluL6nQg==", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "engines": { - "node": ">=14" - } - }, - "node_modules/@n8n/backend-test-utils/node_modules/@opentelemetry/instrumentation-redis-4": { - "version": "0.46.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation-redis-4/-/instrumentation-redis-4-0.46.0.tgz", - "integrity": "sha512-aTUWbzbFMFeRODn3720TZO0tsh/49T8H3h8vVnVKJ+yE36AeW38Uj/8zykQ/9nO8Vrtjr5yKuX3uMiG/W8FKNw==", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/instrumentation": "^0.57.0", - "@opentelemetry/redis-common": "^0.36.2", - "@opentelemetry/semantic-conventions": "^1.27.0" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - } - }, - "node_modules/@n8n/backend-test-utils/node_modules/@opentelemetry/instrumentation-tedious": { - "version": "0.18.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation-tedious/-/instrumentation-tedious-0.18.0.tgz", - "integrity": "sha512-9zhjDpUDOtD+coeADnYEJQ0IeLVCj7w/hqzIutdp5NqS1VqTAanaEfsEcSypyvYv5DX3YOsTUoF+nr2wDXPETA==", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/instrumentation": "^0.57.0", - "@opentelemetry/semantic-conventions": "^1.27.0", - "@types/tedious": "^4.0.14" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - } - }, - "node_modules/@n8n/backend-test-utils/node_modules/@opentelemetry/instrumentation-undici": { - "version": "0.10.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation-undici/-/instrumentation-undici-0.10.0.tgz", - "integrity": "sha512-vm+V255NGw9gaSsPD6CP0oGo8L55BffBc8KnxqsMuc6XiAD1L8SFNzsW0RHhxJFqy9CJaJh+YiJ5EHXuZ5rZBw==", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/core": "^1.8.0", - "@opentelemetry/instrumentation": "^0.57.0" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.7.0" - } - }, - "node_modules/@n8n/backend-test-utils/node_modules/@opentelemetry/semantic-conventions": { - "version": "1.28.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.28.0.tgz", - "integrity": "sha512-lp4qAiMTD4sNWW4DbKLBkfiMZ4jbAboJIGOQr5DvciMRI494OapieI9qiODpOt0XBr1LjIDy1xAGAnVs5supTA==", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "engines": { - "node": ">=14" - } - }, - "node_modules/@n8n/backend-test-utils/node_modules/@prisma/instrumentation": { - "version": "5.22.0", - "resolved": "https://registry.npmjs.org/@prisma/instrumentation/-/instrumentation-5.22.0.tgz", - "integrity": "sha512-LxccF392NN37ISGxIurUljZSh1YWnphO34V5a0+T7FVQG2u9bhAXRTJpgmQ3483woVhkraQZFF7cbRrpbw/F4Q==", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/api": "^1.8", - "@opentelemetry/instrumentation": "^0.49 || ^0.50 || ^0.51 || ^0.52.0 || ^0.53.0", - "@opentelemetry/sdk-trace-base": "^1.22" - } - }, - "node_modules/@n8n/backend-test-utils/node_modules/@prisma/instrumentation/node_modules/@opentelemetry/api-logs": { - "version": "0.53.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/api-logs/-/api-logs-0.53.0.tgz", - "integrity": "sha512-8HArjKx+RaAI8uEIgcORbZIPklyh1YLjPSBus8hjRmvLi6DeFzgOcdZ7KwPabKj8mXF8dX0hyfAyGfycz0DbFw==", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/api": "^1.0.0" - }, - "engines": { - "node": ">=14" - } - }, - "node_modules/@n8n/backend-test-utils/node_modules/@prisma/instrumentation/node_modules/@opentelemetry/instrumentation": { - "version": "0.53.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation/-/instrumentation-0.53.0.tgz", - "integrity": "sha512-DMwg0hy4wzf7K73JJtl95m/e0boSoWhH07rfvHvYzQtBD3Bmv0Wc1x733vyZBqmFm8OjJD0/pfiUg1W3JjFX0A==", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/api-logs": "0.53.0", - "@types/shimmer": "^1.2.0", - "import-in-the-middle": "^1.8.1", - "require-in-the-middle": "^7.1.1", - "semver": "^7.5.2", - "shimmer": "^1.2.1" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - } - }, - "node_modules/@n8n/backend-test-utils/node_modules/@sentry/core": { - "version": "8.55.0", - "resolved": "https://registry.npmjs.org/@sentry/core/-/core-8.55.0.tgz", - "integrity": "sha512-6g7jpbefjHYs821Z+EBJ8r4Z7LT5h80YSWRJaylGS4nW5W5Z2KXzpdnyFarv37O7QjauzVC2E+PABmpkw5/JGA==", - "license": "MIT", - "optional": true, - "peer": true, - "engines": { - "node": ">=14.18" - } - }, - "node_modules/@n8n/backend-test-utils/node_modules/@sentry/node": { - "version": "8.55.0", - "resolved": "https://registry.npmjs.org/@sentry/node/-/node-8.55.0.tgz", - "integrity": "sha512-h10LJLDTRAzYgay60Oy7moMookqqSZSviCWkkmHZyaDn+4WURnPp5SKhhfrzPRQcXKrweiOwDSHBgn1tweDssg==", - "license": "MIT", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/api": "^1.9.0", - "@opentelemetry/context-async-hooks": "^1.30.1", - "@opentelemetry/core": "^1.30.1", - "@opentelemetry/instrumentation": "^0.57.1", - "@opentelemetry/instrumentation-amqplib": "^0.46.0", - "@opentelemetry/instrumentation-connect": "0.43.0", - "@opentelemetry/instrumentation-dataloader": "0.16.0", - "@opentelemetry/instrumentation-express": "0.47.0", - "@opentelemetry/instrumentation-fastify": "0.44.1", - "@opentelemetry/instrumentation-fs": "0.19.0", - "@opentelemetry/instrumentation-generic-pool": "0.43.0", - "@opentelemetry/instrumentation-graphql": "0.47.0", - "@opentelemetry/instrumentation-hapi": "0.45.1", - "@opentelemetry/instrumentation-http": "0.57.1", - "@opentelemetry/instrumentation-ioredis": "0.47.0", - "@opentelemetry/instrumentation-kafkajs": "0.7.0", - "@opentelemetry/instrumentation-knex": "0.44.0", - "@opentelemetry/instrumentation-koa": "0.47.0", - "@opentelemetry/instrumentation-lru-memoizer": "0.44.0", - "@opentelemetry/instrumentation-mongodb": "0.51.0", - "@opentelemetry/instrumentation-mongoose": "0.46.0", - "@opentelemetry/instrumentation-mysql": "0.45.0", - "@opentelemetry/instrumentation-mysql2": "0.45.0", - "@opentelemetry/instrumentation-nestjs-core": "0.44.0", - "@opentelemetry/instrumentation-pg": "0.50.0", - "@opentelemetry/instrumentation-redis-4": "0.46.0", - "@opentelemetry/instrumentation-tedious": "0.18.0", - "@opentelemetry/instrumentation-undici": "0.10.0", - "@opentelemetry/resources": "^1.30.1", - "@opentelemetry/sdk-trace-base": "^1.30.1", - "@opentelemetry/semantic-conventions": "^1.28.0", - "@prisma/instrumentation": "5.22.0", - "@sentry/core": "8.55.0", - "@sentry/opentelemetry": "8.55.0", - "import-in-the-middle": "^1.11.2" - }, - "engines": { - "node": ">=14.18" - } - }, - "node_modules/@n8n/backend-test-utils/node_modules/@sentry/opentelemetry": { - "version": "8.55.0", - "resolved": "https://registry.npmjs.org/@sentry/opentelemetry/-/opentelemetry-8.55.0.tgz", - "integrity": "sha512-UvatdmSr3Xf+4PLBzJNLZ2JjG1yAPWGe/VrJlJAqyTJ2gKeTzgXJJw8rp4pbvNZO8NaTGEYhhO+scLUj0UtLAQ==", - "license": "MIT", - "optional": true, - "peer": true, - "dependencies": { - "@sentry/core": "8.55.0" - }, - "engines": { - "node": ">=14.18" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.9.0", - "@opentelemetry/context-async-hooks": "^1.30.1", - "@opentelemetry/core": "^1.30.1", - "@opentelemetry/instrumentation": "^0.57.1", - "@opentelemetry/sdk-trace-base": "^1.30.1", - "@opentelemetry/semantic-conventions": "^1.28.0" - } - }, - "node_modules/@n8n/backend-test-utils/node_modules/@types/connect": { - "version": "3.4.36", - "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.36.tgz", - "integrity": "sha512-P63Zd/JUGq+PdrM1lv0Wv5SBYeA2+CORvbrXbngriYY0jzLUWfQMQQxOhjONEz/wlHOAxOdY7CY65rgQdTjq2w==", - "license": "MIT", - "optional": true, - "peer": true, - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@n8n/backend-test-utils/node_modules/@types/whatwg-url": { - "version": "8.2.2", - "resolved": "https://registry.npmjs.org/@types/whatwg-url/-/whatwg-url-8.2.2.tgz", - "integrity": "sha512-FtQu10RWgn3D9U4aazdwIE2yzphmTJREDqNdODHrbrZmmMqI0vMheC/6NE/J1Yveaj8H+ela+YwWTjq5PGmuhA==", - "license": "MIT", - "optional": true, - "peer": true, - "dependencies": { - "@types/node": "*", - "@types/webidl-conversions": "*" - } - }, - "node_modules/@n8n/backend-test-utils/node_modules/better-sqlite3": { - "version": "9.6.0", - "resolved": "https://registry.npmjs.org/better-sqlite3/-/better-sqlite3-9.6.0.tgz", - "integrity": "sha512-yR5HATnqeYNVnkaUTf4bOP2dJSnyhP4puJN/QPRyx4YkBEEUxib422n2XzPqDEHjQQqazoYoADdAm5vE15+dAQ==", - "hasInstallScript": true, - "license": "MIT", - "optional": true, - "peer": true, - "dependencies": { - "bindings": "^1.5.0", - "prebuild-install": "^7.1.1" - } - }, - "node_modules/@n8n/backend-test-utils/node_modules/bson": { - "version": "5.5.1", - "resolved": "https://registry.npmjs.org/bson/-/bson-5.5.1.tgz", - "integrity": "sha512-ix0EwukN2EpC0SRWIj/7B5+A6uQMQy6KMREI9qQqvgpkV2frH63T0UDVd1SYedL6dNCmDBYB3QtXi4ISk9YT+g==", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "engines": { - "node": ">=14.20.1" - } - }, "node_modules/@n8n/backend-test-utils/node_modules/glob": { "version": "10.4.5", "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz", @@ -8932,61 +8307,6 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/@n8n/backend-test-utils/node_modules/mongodb": { - "version": "5.9.2", - "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-5.9.2.tgz", - "integrity": "sha512-H60HecKO4Bc+7dhOv4sJlgvenK4fQNqqUIlXxZYQNbfEWSALGAwGoyJd/0Qwk4TttFXUOHJ2ZJQe/52ScaUwtQ==", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "bson": "^5.5.0", - "mongodb-connection-string-url": "^2.6.0", - "socks": "^2.7.1" - }, - "engines": { - "node": ">=14.20.1" - }, - "optionalDependencies": { - "@mongodb-js/saslprep": "^1.1.0" - }, - "peerDependencies": { - "@aws-sdk/credential-providers": "^3.188.0", - "@mongodb-js/zstd": "^1.0.0", - "kerberos": "^1.0.0 || ^2.0.0", - "mongodb-client-encryption": ">=2.3.0 <3", - "snappy": "^7.2.2" - }, - "peerDependenciesMeta": { - "@aws-sdk/credential-providers": { - "optional": true - }, - "@mongodb-js/zstd": { - "optional": true - }, - "kerberos": { - "optional": true - }, - "mongodb-client-encryption": { - "optional": true - }, - "snappy": { - "optional": true - } - } - }, - "node_modules/@n8n/backend-test-utils/node_modules/mongodb-connection-string-url": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/mongodb-connection-string-url/-/mongodb-connection-string-url-2.6.0.tgz", - "integrity": "sha512-WvTZlI9ab0QYtTYnuMLgobULWhokRjtC7db9LtcVfJ+Hsnyr5eo6ZtNAt3Ly24XZScGMelOcGtm7lSn0332tPQ==", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@types/whatwg-url": "^8.2.1", - "whatwg-url": "^11.0.0" - } - }, "node_modules/@n8n/backend-test-utils/node_modules/path-scurry": { "version": "1.11.1", "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.1.tgz", @@ -9003,35 +8323,6 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/@n8n/backend-test-utils/node_modules/tr46": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-3.0.0.tgz", - "integrity": "sha512-l7FvfAHlcmulp8kr+flpQZmVwtu7nfRV7NZujtN0OqES8EL4O4e0qqzL0DC5gAvx/ZC/9lk6rhcUwYvkBnBnYA==", - "license": "MIT", - "optional": true, - "peer": true, - "dependencies": { - "punycode": "^2.1.1" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@n8n/backend-test-utils/node_modules/whatwg-url": { - "version": "11.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-11.0.0.tgz", - "integrity": "sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ==", - "license": "MIT", - "optional": true, - "peer": true, - "dependencies": { - "tr46": "^3.0.0", - "webidl-conversions": "^7.0.0" - }, - "engines": { - "node": ">=12" - } - }, "node_modules/@n8n/client-oauth2": { "version": "0.29.0", "license": "SEE LICENSE IN LICENSE.md", @@ -9228,633 +8519,6 @@ "uuid": "dist/bin/uuid" } }, - "node_modules/@n8n/db/node_modules/@opentelemetry/api-logs": { - "version": "0.57.1", - "resolved": "https://registry.npmjs.org/@opentelemetry/api-logs/-/api-logs-0.57.1.tgz", - "integrity": "sha512-I4PHczeujhQAQv6ZBzqHYEUiggZL4IdSMixtVD3EYqbdrjujE7kRfI5QohjlPoJm8BvenoW5YaTMWRrbpot6tg==", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/api": "^1.3.0" - }, - "engines": { - "node": ">=14" - } - }, - "node_modules/@n8n/db/node_modules/@opentelemetry/instrumentation": { - "version": "0.57.1", - "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation/-/instrumentation-0.57.1.tgz", - "integrity": "sha512-SgHEKXoVxOjc20ZYusPG3Fh+RLIZTSa4x8QtD3NfgAUDyqdFFS9W1F2ZVbZkqDCdyMcQG02Ok4duUGLHJXHgbA==", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/api-logs": "0.57.1", - "@types/shimmer": "^1.2.0", - "import-in-the-middle": "^1.8.1", - "require-in-the-middle": "^7.1.1", - "semver": "^7.5.2", - "shimmer": "^1.2.1" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - } - }, - "node_modules/@n8n/db/node_modules/@opentelemetry/instrumentation-connect": { - "version": "0.43.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation-connect/-/instrumentation-connect-0.43.0.tgz", - "integrity": "sha512-Q57JGpH6T4dkYHo9tKXONgLtxzsh1ZEW5M9A/OwKrZFyEpLqWgjhcZ3hIuVvDlhb426iDF1f9FPToV/mi5rpeA==", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/core": "^1.8.0", - "@opentelemetry/instrumentation": "^0.57.0", - "@opentelemetry/semantic-conventions": "^1.27.0", - "@types/connect": "3.4.36" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - } - }, - "node_modules/@n8n/db/node_modules/@opentelemetry/instrumentation-dataloader": { - "version": "0.16.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation-dataloader/-/instrumentation-dataloader-0.16.0.tgz", - "integrity": "sha512-88+qCHZC02up8PwKHk0UQKLLqGGURzS3hFQBZC7PnGwReuoKjHXS1o29H58S+QkXJpkTr2GACbx8j6mUoGjNPA==", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/instrumentation": "^0.57.0" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - } - }, - "node_modules/@n8n/db/node_modules/@opentelemetry/instrumentation-express": { - "version": "0.47.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation-express/-/instrumentation-express-0.47.0.tgz", - "integrity": "sha512-XFWVx6k0XlU8lu6cBlCa29ONtVt6ADEjmxtyAyeF2+rifk8uBJbk1La0yIVfI0DoKURGbaEDTNelaXG9l/lNNQ==", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/core": "^1.8.0", - "@opentelemetry/instrumentation": "^0.57.0", - "@opentelemetry/semantic-conventions": "^1.27.0" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - } - }, - "node_modules/@n8n/db/node_modules/@opentelemetry/instrumentation-fs": { - "version": "0.19.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation-fs/-/instrumentation-fs-0.19.0.tgz", - "integrity": "sha512-JGwmHhBkRT2G/BYNV1aGI+bBjJu4fJUD/5/Jat0EWZa2ftrLV3YE8z84Fiij/wK32oMZ88eS8DI4ecLGZhpqsQ==", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/core": "^1.8.0", - "@opentelemetry/instrumentation": "^0.57.0" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - } - }, - "node_modules/@n8n/db/node_modules/@opentelemetry/instrumentation-generic-pool": { - "version": "0.43.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation-generic-pool/-/instrumentation-generic-pool-0.43.0.tgz", - "integrity": "sha512-at8GceTtNxD1NfFKGAuwtqM41ot/TpcLh+YsGe4dhf7gvv1HW/ZWdq6nfRtS6UjIvZJOokViqLPJ3GVtZItAnQ==", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/instrumentation": "^0.57.0" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - } - }, - "node_modules/@n8n/db/node_modules/@opentelemetry/instrumentation-graphql": { - "version": "0.47.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation-graphql/-/instrumentation-graphql-0.47.0.tgz", - "integrity": "sha512-Cc8SMf+nLqp0fi8oAnooNEfwZWFnzMiBHCGmDFYqmgjPylyLmi83b+NiTns/rKGwlErpW0AGPt0sMpkbNlzn8w==", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/instrumentation": "^0.57.0" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - } - }, - "node_modules/@n8n/db/node_modules/@opentelemetry/instrumentation-hapi": { - "version": "0.45.1", - "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation-hapi/-/instrumentation-hapi-0.45.1.tgz", - "integrity": "sha512-VH6mU3YqAKTePPfUPwfq4/xr049774qWtfTuJqVHoVspCLiT3bW+fCQ1toZxt6cxRPYASoYaBsMA3CWo8B8rcw==", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/core": "^1.8.0", - "@opentelemetry/instrumentation": "^0.57.0", - "@opentelemetry/semantic-conventions": "^1.27.0" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - } - }, - "node_modules/@n8n/db/node_modules/@opentelemetry/instrumentation-http": { - "version": "0.57.1", - "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation-http/-/instrumentation-http-0.57.1.tgz", - "integrity": "sha512-ThLmzAQDs7b/tdKI3BV2+yawuF09jF111OFsovqT1Qj3D8vjwKBwhi/rDE5xethwn4tSXtZcJ9hBsVAlWFQZ7g==", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/core": "1.30.1", - "@opentelemetry/instrumentation": "0.57.1", - "@opentelemetry/semantic-conventions": "1.28.0", - "forwarded-parse": "2.1.2", - "semver": "^7.5.2" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - } - }, - "node_modules/@n8n/db/node_modules/@opentelemetry/instrumentation-ioredis": { - "version": "0.47.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation-ioredis/-/instrumentation-ioredis-0.47.0.tgz", - "integrity": "sha512-4HqP9IBC8e7pW9p90P3q4ox0XlbLGme65YTrA3UTLvqvo4Z6b0puqZQP203YFu8m9rE/luLfaG7/xrwwqMUpJw==", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/instrumentation": "^0.57.0", - "@opentelemetry/redis-common": "^0.36.2", - "@opentelemetry/semantic-conventions": "^1.27.0" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - } - }, - "node_modules/@n8n/db/node_modules/@opentelemetry/instrumentation-kafkajs": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation-kafkajs/-/instrumentation-kafkajs-0.7.0.tgz", - "integrity": "sha512-LB+3xiNzc034zHfCtgs4ITWhq6Xvdo8bsq7amR058jZlf2aXXDrN9SV4si4z2ya9QX4tz6r4eZJwDkXOp14/AQ==", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/instrumentation": "^0.57.0", - "@opentelemetry/semantic-conventions": "^1.27.0" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - } - }, - "node_modules/@n8n/db/node_modules/@opentelemetry/instrumentation-knex": { - "version": "0.44.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation-knex/-/instrumentation-knex-0.44.0.tgz", - "integrity": "sha512-SlT0+bLA0Lg3VthGje+bSZatlGHw/vwgQywx0R/5u9QC59FddTQSPJeWNw29M6f8ScORMeUOOTwihlQAn4GkJQ==", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/instrumentation": "^0.57.0", - "@opentelemetry/semantic-conventions": "^1.27.0" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - } - }, - "node_modules/@n8n/db/node_modules/@opentelemetry/instrumentation-koa": { - "version": "0.47.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation-koa/-/instrumentation-koa-0.47.0.tgz", - "integrity": "sha512-HFdvqf2+w8sWOuwtEXayGzdZ2vWpCKEQv5F7+2DSA74Te/Cv4rvb2E5So5/lh+ok4/RAIPuvCbCb/SHQFzMmbw==", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/core": "^1.8.0", - "@opentelemetry/instrumentation": "^0.57.0", - "@opentelemetry/semantic-conventions": "^1.27.0" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - } - }, - "node_modules/@n8n/db/node_modules/@opentelemetry/instrumentation-lru-memoizer": { - "version": "0.44.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation-lru-memoizer/-/instrumentation-lru-memoizer-0.44.0.tgz", - "integrity": "sha512-Tn7emHAlvYDFik3vGU0mdwvWJDwtITtkJ+5eT2cUquct6nIs+H8M47sqMJkCpyPe5QIBJoTOHxmc6mj9lz6zDw==", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/instrumentation": "^0.57.0" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - } - }, - "node_modules/@n8n/db/node_modules/@opentelemetry/instrumentation-mongodb": { - "version": "0.51.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation-mongodb/-/instrumentation-mongodb-0.51.0.tgz", - "integrity": "sha512-cMKASxCX4aFxesoj3WK8uoQ0YUrRvnfxaO72QWI2xLu5ZtgX/QvdGBlU3Ehdond5eb74c2s1cqRQUIptBnKz1g==", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/instrumentation": "^0.57.0", - "@opentelemetry/semantic-conventions": "^1.27.0" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - } - }, - "node_modules/@n8n/db/node_modules/@opentelemetry/instrumentation-mongoose": { - "version": "0.46.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation-mongoose/-/instrumentation-mongoose-0.46.0.tgz", - "integrity": "sha512-mtVv6UeaaSaWTeZtLo4cx4P5/ING2obSqfWGItIFSunQBrYROfhuVe7wdIrFUs2RH1tn2YYpAJyMaRe/bnTTIQ==", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/core": "^1.8.0", - "@opentelemetry/instrumentation": "^0.57.0", - "@opentelemetry/semantic-conventions": "^1.27.0" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - } - }, - "node_modules/@n8n/db/node_modules/@opentelemetry/instrumentation-mysql": { - "version": "0.45.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation-mysql/-/instrumentation-mysql-0.45.0.tgz", - "integrity": "sha512-tWWyymgwYcTwZ4t8/rLDfPYbOTF3oYB8SxnYMtIQ1zEf5uDm90Ku3i6U/vhaMyfHNlIHvDhvJh+qx5Nc4Z3Acg==", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/instrumentation": "^0.57.0", - "@opentelemetry/semantic-conventions": "^1.27.0", - "@types/mysql": "2.15.26" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - } - }, - "node_modules/@n8n/db/node_modules/@opentelemetry/instrumentation-mysql2": { - "version": "0.45.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation-mysql2/-/instrumentation-mysql2-0.45.0.tgz", - "integrity": "sha512-qLslv/EPuLj0IXFvcE3b0EqhWI8LKmrgRPIa4gUd8DllbBpqJAvLNJSv3cC6vWwovpbSI3bagNO/3Q2SuXv2xA==", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/instrumentation": "^0.57.0", - "@opentelemetry/semantic-conventions": "^1.27.0", - "@opentelemetry/sql-common": "^0.40.1" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - } - }, - "node_modules/@n8n/db/node_modules/@opentelemetry/instrumentation-pg": { - "version": "0.50.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation-pg/-/instrumentation-pg-0.50.0.tgz", - "integrity": "sha512-TtLxDdYZmBhFswm8UIsrDjh/HFBeDXd4BLmE8h2MxirNHewLJ0VS9UUddKKEverb5Sm2qFVjqRjcU+8Iw4FJ3w==", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/core": "^1.26.0", - "@opentelemetry/instrumentation": "^0.57.0", - "@opentelemetry/semantic-conventions": "1.27.0", - "@opentelemetry/sql-common": "^0.40.1", - "@types/pg": "8.6.1", - "@types/pg-pool": "2.0.6" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - } - }, - "node_modules/@n8n/db/node_modules/@opentelemetry/instrumentation-pg/node_modules/@opentelemetry/semantic-conventions": { - "version": "1.27.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.27.0.tgz", - "integrity": "sha512-sAay1RrB+ONOem0OZanAR1ZI/k7yDpnOQSQmTMuGImUQb2y8EbSaCJ94FQluM74xoU03vlb2d2U90hZluL6nQg==", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "engines": { - "node": ">=14" - } - }, - "node_modules/@n8n/db/node_modules/@opentelemetry/instrumentation-redis-4": { - "version": "0.46.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation-redis-4/-/instrumentation-redis-4-0.46.0.tgz", - "integrity": "sha512-aTUWbzbFMFeRODn3720TZO0tsh/49T8H3h8vVnVKJ+yE36AeW38Uj/8zykQ/9nO8Vrtjr5yKuX3uMiG/W8FKNw==", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/instrumentation": "^0.57.0", - "@opentelemetry/redis-common": "^0.36.2", - "@opentelemetry/semantic-conventions": "^1.27.0" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - } - }, - "node_modules/@n8n/db/node_modules/@opentelemetry/instrumentation-tedious": { - "version": "0.18.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation-tedious/-/instrumentation-tedious-0.18.0.tgz", - "integrity": "sha512-9zhjDpUDOtD+coeADnYEJQ0IeLVCj7w/hqzIutdp5NqS1VqTAanaEfsEcSypyvYv5DX3YOsTUoF+nr2wDXPETA==", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/instrumentation": "^0.57.0", - "@opentelemetry/semantic-conventions": "^1.27.0", - "@types/tedious": "^4.0.14" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - } - }, - "node_modules/@n8n/db/node_modules/@opentelemetry/instrumentation-undici": { - "version": "0.10.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation-undici/-/instrumentation-undici-0.10.0.tgz", - "integrity": "sha512-vm+V255NGw9gaSsPD6CP0oGo8L55BffBc8KnxqsMuc6XiAD1L8SFNzsW0RHhxJFqy9CJaJh+YiJ5EHXuZ5rZBw==", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/core": "^1.8.0", - "@opentelemetry/instrumentation": "^0.57.0" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.7.0" - } - }, - "node_modules/@n8n/db/node_modules/@opentelemetry/semantic-conventions": { - "version": "1.28.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.28.0.tgz", - "integrity": "sha512-lp4qAiMTD4sNWW4DbKLBkfiMZ4jbAboJIGOQr5DvciMRI494OapieI9qiODpOt0XBr1LjIDy1xAGAnVs5supTA==", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "engines": { - "node": ">=14" - } - }, - "node_modules/@n8n/db/node_modules/@prisma/instrumentation": { - "version": "5.22.0", - "resolved": "https://registry.npmjs.org/@prisma/instrumentation/-/instrumentation-5.22.0.tgz", - "integrity": "sha512-LxccF392NN37ISGxIurUljZSh1YWnphO34V5a0+T7FVQG2u9bhAXRTJpgmQ3483woVhkraQZFF7cbRrpbw/F4Q==", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/api": "^1.8", - "@opentelemetry/instrumentation": "^0.49 || ^0.50 || ^0.51 || ^0.52.0 || ^0.53.0", - "@opentelemetry/sdk-trace-base": "^1.22" - } - }, - "node_modules/@n8n/db/node_modules/@prisma/instrumentation/node_modules/@opentelemetry/api-logs": { - "version": "0.53.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/api-logs/-/api-logs-0.53.0.tgz", - "integrity": "sha512-8HArjKx+RaAI8uEIgcORbZIPklyh1YLjPSBus8hjRmvLi6DeFzgOcdZ7KwPabKj8mXF8dX0hyfAyGfycz0DbFw==", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/api": "^1.0.0" - }, - "engines": { - "node": ">=14" - } - }, - "node_modules/@n8n/db/node_modules/@prisma/instrumentation/node_modules/@opentelemetry/instrumentation": { - "version": "0.53.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation/-/instrumentation-0.53.0.tgz", - "integrity": "sha512-DMwg0hy4wzf7K73JJtl95m/e0boSoWhH07rfvHvYzQtBD3Bmv0Wc1x733vyZBqmFm8OjJD0/pfiUg1W3JjFX0A==", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/api-logs": "0.53.0", - "@types/shimmer": "^1.2.0", - "import-in-the-middle": "^1.8.1", - "require-in-the-middle": "^7.1.1", - "semver": "^7.5.2", - "shimmer": "^1.2.1" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - } - }, - "node_modules/@n8n/db/node_modules/@sentry/core": { - "version": "8.55.0", - "resolved": "https://registry.npmjs.org/@sentry/core/-/core-8.55.0.tgz", - "integrity": "sha512-6g7jpbefjHYs821Z+EBJ8r4Z7LT5h80YSWRJaylGS4nW5W5Z2KXzpdnyFarv37O7QjauzVC2E+PABmpkw5/JGA==", - "license": "MIT", - "optional": true, - "peer": true, - "engines": { - "node": ">=14.18" - } - }, - "node_modules/@n8n/db/node_modules/@sentry/node": { - "version": "8.55.0", - "resolved": "https://registry.npmjs.org/@sentry/node/-/node-8.55.0.tgz", - "integrity": "sha512-h10LJLDTRAzYgay60Oy7moMookqqSZSviCWkkmHZyaDn+4WURnPp5SKhhfrzPRQcXKrweiOwDSHBgn1tweDssg==", - "license": "MIT", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/api": "^1.9.0", - "@opentelemetry/context-async-hooks": "^1.30.1", - "@opentelemetry/core": "^1.30.1", - "@opentelemetry/instrumentation": "^0.57.1", - "@opentelemetry/instrumentation-amqplib": "^0.46.0", - "@opentelemetry/instrumentation-connect": "0.43.0", - "@opentelemetry/instrumentation-dataloader": "0.16.0", - "@opentelemetry/instrumentation-express": "0.47.0", - "@opentelemetry/instrumentation-fastify": "0.44.1", - "@opentelemetry/instrumentation-fs": "0.19.0", - "@opentelemetry/instrumentation-generic-pool": "0.43.0", - "@opentelemetry/instrumentation-graphql": "0.47.0", - "@opentelemetry/instrumentation-hapi": "0.45.1", - "@opentelemetry/instrumentation-http": "0.57.1", - "@opentelemetry/instrumentation-ioredis": "0.47.0", - "@opentelemetry/instrumentation-kafkajs": "0.7.0", - "@opentelemetry/instrumentation-knex": "0.44.0", - "@opentelemetry/instrumentation-koa": "0.47.0", - "@opentelemetry/instrumentation-lru-memoizer": "0.44.0", - "@opentelemetry/instrumentation-mongodb": "0.51.0", - "@opentelemetry/instrumentation-mongoose": "0.46.0", - "@opentelemetry/instrumentation-mysql": "0.45.0", - "@opentelemetry/instrumentation-mysql2": "0.45.0", - "@opentelemetry/instrumentation-nestjs-core": "0.44.0", - "@opentelemetry/instrumentation-pg": "0.50.0", - "@opentelemetry/instrumentation-redis-4": "0.46.0", - "@opentelemetry/instrumentation-tedious": "0.18.0", - "@opentelemetry/instrumentation-undici": "0.10.0", - "@opentelemetry/resources": "^1.30.1", - "@opentelemetry/sdk-trace-base": "^1.30.1", - "@opentelemetry/semantic-conventions": "^1.28.0", - "@prisma/instrumentation": "5.22.0", - "@sentry/core": "8.55.0", - "@sentry/opentelemetry": "8.55.0", - "import-in-the-middle": "^1.11.2" - }, - "engines": { - "node": ">=14.18" - } - }, - "node_modules/@n8n/db/node_modules/@sentry/opentelemetry": { - "version": "8.55.0", - "resolved": "https://registry.npmjs.org/@sentry/opentelemetry/-/opentelemetry-8.55.0.tgz", - "integrity": "sha512-UvatdmSr3Xf+4PLBzJNLZ2JjG1yAPWGe/VrJlJAqyTJ2gKeTzgXJJw8rp4pbvNZO8NaTGEYhhO+scLUj0UtLAQ==", - "license": "MIT", - "optional": true, - "peer": true, - "dependencies": { - "@sentry/core": "8.55.0" - }, - "engines": { - "node": ">=14.18" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.9.0", - "@opentelemetry/context-async-hooks": "^1.30.1", - "@opentelemetry/core": "^1.30.1", - "@opentelemetry/instrumentation": "^0.57.1", - "@opentelemetry/sdk-trace-base": "^1.30.1", - "@opentelemetry/semantic-conventions": "^1.28.0" - } - }, - "node_modules/@n8n/db/node_modules/@types/connect": { - "version": "3.4.36", - "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.36.tgz", - "integrity": "sha512-P63Zd/JUGq+PdrM1lv0Wv5SBYeA2+CORvbrXbngriYY0jzLUWfQMQQxOhjONEz/wlHOAxOdY7CY65rgQdTjq2w==", - "license": "MIT", - "optional": true, - "peer": true, - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@n8n/db/node_modules/@types/whatwg-url": { - "version": "8.2.2", - "resolved": "https://registry.npmjs.org/@types/whatwg-url/-/whatwg-url-8.2.2.tgz", - "integrity": "sha512-FtQu10RWgn3D9U4aazdwIE2yzphmTJREDqNdODHrbrZmmMqI0vMheC/6NE/J1Yveaj8H+ela+YwWTjq5PGmuhA==", - "license": "MIT", - "optional": true, - "peer": true, - "dependencies": { - "@types/node": "*", - "@types/webidl-conversions": "*" - } - }, - "node_modules/@n8n/db/node_modules/better-sqlite3": { - "version": "9.6.0", - "resolved": "https://registry.npmjs.org/better-sqlite3/-/better-sqlite3-9.6.0.tgz", - "integrity": "sha512-yR5HATnqeYNVnkaUTf4bOP2dJSnyhP4puJN/QPRyx4YkBEEUxib422n2XzPqDEHjQQqazoYoADdAm5vE15+dAQ==", - "hasInstallScript": true, - "license": "MIT", - "optional": true, - "peer": true, - "dependencies": { - "bindings": "^1.5.0", - "prebuild-install": "^7.1.1" - } - }, - "node_modules/@n8n/db/node_modules/bson": { - "version": "5.5.1", - "resolved": "https://registry.npmjs.org/bson/-/bson-5.5.1.tgz", - "integrity": "sha512-ix0EwukN2EpC0SRWIj/7B5+A6uQMQy6KMREI9qQqvgpkV2frH63T0UDVd1SYedL6dNCmDBYB3QtXi4ISk9YT+g==", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "engines": { - "node": ">=14.20.1" - } - }, "node_modules/@n8n/db/node_modules/flatted": { "version": "3.2.7", "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz", @@ -9917,61 +8581,6 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/@n8n/db/node_modules/mongodb": { - "version": "5.9.2", - "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-5.9.2.tgz", - "integrity": "sha512-H60HecKO4Bc+7dhOv4sJlgvenK4fQNqqUIlXxZYQNbfEWSALGAwGoyJd/0Qwk4TttFXUOHJ2ZJQe/52ScaUwtQ==", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "bson": "^5.5.0", - "mongodb-connection-string-url": "^2.6.0", - "socks": "^2.7.1" - }, - "engines": { - "node": ">=14.20.1" - }, - "optionalDependencies": { - "@mongodb-js/saslprep": "^1.1.0" - }, - "peerDependencies": { - "@aws-sdk/credential-providers": "^3.188.0", - "@mongodb-js/zstd": "^1.0.0", - "kerberos": "^1.0.0 || ^2.0.0", - "mongodb-client-encryption": ">=2.3.0 <3", - "snappy": "^7.2.2" - }, - "peerDependenciesMeta": { - "@aws-sdk/credential-providers": { - "optional": true - }, - "@mongodb-js/zstd": { - "optional": true - }, - "kerberos": { - "optional": true - }, - "mongodb-client-encryption": { - "optional": true - }, - "snappy": { - "optional": true - } - } - }, - "node_modules/@n8n/db/node_modules/mongodb-connection-string-url": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/mongodb-connection-string-url/-/mongodb-connection-string-url-2.6.0.tgz", - "integrity": "sha512-WvTZlI9ab0QYtTYnuMLgobULWhokRjtC7db9LtcVfJ+Hsnyr5eo6ZtNAt3Ly24XZScGMelOcGtm7lSn0332tPQ==", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@types/whatwg-url": "^8.2.1", - "whatwg-url": "^11.0.0" - } - }, "node_modules/@n8n/db/node_modules/path-scurry": { "version": "1.11.1", "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.1.tgz", @@ -9988,35 +8597,6 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/@n8n/db/node_modules/tr46": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-3.0.0.tgz", - "integrity": "sha512-l7FvfAHlcmulp8kr+flpQZmVwtu7nfRV7NZujtN0OqES8EL4O4e0qqzL0DC5gAvx/ZC/9lk6rhcUwYvkBnBnYA==", - "license": "MIT", - "optional": true, - "peer": true, - "dependencies": { - "punycode": "^2.1.1" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@n8n/db/node_modules/whatwg-url": { - "version": "11.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-11.0.0.tgz", - "integrity": "sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ==", - "license": "MIT", - "optional": true, - "peer": true, - "dependencies": { - "tr46": "^3.0.0", - "webidl-conversions": "^7.0.0" - }, - "engines": { - "node": ">=12" - } - }, "node_modules/@n8n/db/node_modules/zod": { "version": "3.25.67", "resolved": "https://registry.npmjs.org/zod/-/zod-3.25.67.tgz", @@ -10309,449 +8889,6 @@ } } }, - "node_modules/@n8n/n8n-nodes-langchain/node_modules/@opentelemetry/api-logs": { - "version": "0.57.1", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/api": "^1.3.0" - }, - "engines": { - "node": ">=14" - } - }, - "node_modules/@n8n/n8n-nodes-langchain/node_modules/@opentelemetry/instrumentation": { - "version": "0.57.1", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/api-logs": "0.57.1", - "@types/shimmer": "^1.2.0", - "import-in-the-middle": "^1.8.1", - "require-in-the-middle": "^7.1.1", - "semver": "^7.5.2", - "shimmer": "^1.2.1" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - } - }, - "node_modules/@n8n/n8n-nodes-langchain/node_modules/@opentelemetry/instrumentation-connect": { - "version": "0.43.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/core": "^1.8.0", - "@opentelemetry/instrumentation": "^0.57.0", - "@opentelemetry/semantic-conventions": "^1.27.0", - "@types/connect": "3.4.36" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - } - }, - "node_modules/@n8n/n8n-nodes-langchain/node_modules/@opentelemetry/instrumentation-dataloader": { - "version": "0.16.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/instrumentation": "^0.57.0" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - } - }, - "node_modules/@n8n/n8n-nodes-langchain/node_modules/@opentelemetry/instrumentation-express": { - "version": "0.47.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/core": "^1.8.0", - "@opentelemetry/instrumentation": "^0.57.0", - "@opentelemetry/semantic-conventions": "^1.27.0" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - } - }, - "node_modules/@n8n/n8n-nodes-langchain/node_modules/@opentelemetry/instrumentation-fs": { - "version": "0.19.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/core": "^1.8.0", - "@opentelemetry/instrumentation": "^0.57.0" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - } - }, - "node_modules/@n8n/n8n-nodes-langchain/node_modules/@opentelemetry/instrumentation-generic-pool": { - "version": "0.43.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/instrumentation": "^0.57.0" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - } - }, - "node_modules/@n8n/n8n-nodes-langchain/node_modules/@opentelemetry/instrumentation-graphql": { - "version": "0.47.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/instrumentation": "^0.57.0" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - } - }, - "node_modules/@n8n/n8n-nodes-langchain/node_modules/@opentelemetry/instrumentation-hapi": { - "version": "0.45.1", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/core": "^1.8.0", - "@opentelemetry/instrumentation": "^0.57.0", - "@opentelemetry/semantic-conventions": "^1.27.0" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - } - }, - "node_modules/@n8n/n8n-nodes-langchain/node_modules/@opentelemetry/instrumentation-http": { - "version": "0.57.1", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/core": "1.30.1", - "@opentelemetry/instrumentation": "0.57.1", - "@opentelemetry/semantic-conventions": "1.28.0", - "forwarded-parse": "2.1.2", - "semver": "^7.5.2" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - } - }, - "node_modules/@n8n/n8n-nodes-langchain/node_modules/@opentelemetry/instrumentation-ioredis": { - "version": "0.47.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/instrumentation": "^0.57.0", - "@opentelemetry/redis-common": "^0.36.2", - "@opentelemetry/semantic-conventions": "^1.27.0" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - } - }, - "node_modules/@n8n/n8n-nodes-langchain/node_modules/@opentelemetry/instrumentation-kafkajs": { - "version": "0.7.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/instrumentation": "^0.57.0", - "@opentelemetry/semantic-conventions": "^1.27.0" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - } - }, - "node_modules/@n8n/n8n-nodes-langchain/node_modules/@opentelemetry/instrumentation-knex": { - "version": "0.44.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/instrumentation": "^0.57.0", - "@opentelemetry/semantic-conventions": "^1.27.0" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - } - }, - "node_modules/@n8n/n8n-nodes-langchain/node_modules/@opentelemetry/instrumentation-koa": { - "version": "0.47.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/core": "^1.8.0", - "@opentelemetry/instrumentation": "^0.57.0", - "@opentelemetry/semantic-conventions": "^1.27.0" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - } - }, - "node_modules/@n8n/n8n-nodes-langchain/node_modules/@opentelemetry/instrumentation-lru-memoizer": { - "version": "0.44.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/instrumentation": "^0.57.0" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - } - }, - "node_modules/@n8n/n8n-nodes-langchain/node_modules/@opentelemetry/instrumentation-mongodb": { - "version": "0.51.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/instrumentation": "^0.57.0", - "@opentelemetry/semantic-conventions": "^1.27.0" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - } - }, - "node_modules/@n8n/n8n-nodes-langchain/node_modules/@opentelemetry/instrumentation-mongoose": { - "version": "0.46.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/core": "^1.8.0", - "@opentelemetry/instrumentation": "^0.57.0", - "@opentelemetry/semantic-conventions": "^1.27.0" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - } - }, - "node_modules/@n8n/n8n-nodes-langchain/node_modules/@opentelemetry/instrumentation-mysql": { - "version": "0.45.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/instrumentation": "^0.57.0", - "@opentelemetry/semantic-conventions": "^1.27.0", - "@types/mysql": "2.15.26" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - } - }, - "node_modules/@n8n/n8n-nodes-langchain/node_modules/@opentelemetry/instrumentation-mysql2": { - "version": "0.45.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/instrumentation": "^0.57.0", - "@opentelemetry/semantic-conventions": "^1.27.0", - "@opentelemetry/sql-common": "^0.40.1" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - } - }, - "node_modules/@n8n/n8n-nodes-langchain/node_modules/@opentelemetry/instrumentation-pg": { - "version": "0.50.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/core": "^1.26.0", - "@opentelemetry/instrumentation": "^0.57.0", - "@opentelemetry/semantic-conventions": "1.27.0", - "@opentelemetry/sql-common": "^0.40.1", - "@types/pg": "8.6.1", - "@types/pg-pool": "2.0.6" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - } - }, - "node_modules/@n8n/n8n-nodes-langchain/node_modules/@opentelemetry/instrumentation-pg/node_modules/@opentelemetry/semantic-conventions": { - "version": "1.27.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "engines": { - "node": ">=14" - } - }, - "node_modules/@n8n/n8n-nodes-langchain/node_modules/@opentelemetry/instrumentation-redis-4": { - "version": "0.46.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/instrumentation": "^0.57.0", - "@opentelemetry/redis-common": "^0.36.2", - "@opentelemetry/semantic-conventions": "^1.27.0" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - } - }, - "node_modules/@n8n/n8n-nodes-langchain/node_modules/@opentelemetry/instrumentation-tedious": { - "version": "0.18.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/instrumentation": "^0.57.0", - "@opentelemetry/semantic-conventions": "^1.27.0", - "@types/tedious": "^4.0.14" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - } - }, - "node_modules/@n8n/n8n-nodes-langchain/node_modules/@opentelemetry/instrumentation-undici": { - "version": "0.10.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/core": "^1.8.0", - "@opentelemetry/instrumentation": "^0.57.0" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.7.0" - } - }, - "node_modules/@n8n/n8n-nodes-langchain/node_modules/@opentelemetry/semantic-conventions": { - "version": "1.28.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "engines": { - "node": ">=14" - } - }, - "node_modules/@n8n/n8n-nodes-langchain/node_modules/@prisma/instrumentation": { - "version": "5.22.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/api": "^1.8", - "@opentelemetry/instrumentation": "^0.49 || ^0.50 || ^0.51 || ^0.52.0 || ^0.53.0", - "@opentelemetry/sdk-trace-base": "^1.22" - } - }, - "node_modules/@n8n/n8n-nodes-langchain/node_modules/@prisma/instrumentation/node_modules/@opentelemetry/api-logs": { - "version": "0.53.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/api": "^1.0.0" - }, - "engines": { - "node": ">=14" - } - }, - "node_modules/@n8n/n8n-nodes-langchain/node_modules/@prisma/instrumentation/node_modules/@opentelemetry/instrumentation": { - "version": "0.53.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/api-logs": "0.53.0", - "@types/shimmer": "^1.2.0", - "import-in-the-middle": "^1.8.1", - "require-in-the-middle": "^7.1.1", - "semver": "^7.5.2", - "shimmer": "^1.2.1" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - } - }, "node_modules/@n8n/n8n-nodes-langchain/node_modules/@qdrant/js-client-rest": { "version": "1.14.1", "license": "Apache-2.0", @@ -10768,101 +8905,6 @@ "typescript": ">=4.7" } }, - "node_modules/@n8n/n8n-nodes-langchain/node_modules/@sentry/core": { - "version": "8.55.0", - "license": "MIT", - "optional": true, - "peer": true, - "engines": { - "node": ">=14.18" - } - }, - "node_modules/@n8n/n8n-nodes-langchain/node_modules/@sentry/node": { - "version": "8.55.0", - "license": "MIT", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/api": "^1.9.0", - "@opentelemetry/context-async-hooks": "^1.30.1", - "@opentelemetry/core": "^1.30.1", - "@opentelemetry/instrumentation": "^0.57.1", - "@opentelemetry/instrumentation-amqplib": "^0.46.0", - "@opentelemetry/instrumentation-connect": "0.43.0", - "@opentelemetry/instrumentation-dataloader": "0.16.0", - "@opentelemetry/instrumentation-express": "0.47.0", - "@opentelemetry/instrumentation-fastify": "0.44.1", - "@opentelemetry/instrumentation-fs": "0.19.0", - "@opentelemetry/instrumentation-generic-pool": "0.43.0", - "@opentelemetry/instrumentation-graphql": "0.47.0", - "@opentelemetry/instrumentation-hapi": "0.45.1", - "@opentelemetry/instrumentation-http": "0.57.1", - "@opentelemetry/instrumentation-ioredis": "0.47.0", - "@opentelemetry/instrumentation-kafkajs": "0.7.0", - "@opentelemetry/instrumentation-knex": "0.44.0", - "@opentelemetry/instrumentation-koa": "0.47.0", - "@opentelemetry/instrumentation-lru-memoizer": "0.44.0", - "@opentelemetry/instrumentation-mongodb": "0.51.0", - "@opentelemetry/instrumentation-mongoose": "0.46.0", - "@opentelemetry/instrumentation-mysql": "0.45.0", - "@opentelemetry/instrumentation-mysql2": "0.45.0", - "@opentelemetry/instrumentation-nestjs-core": "0.44.0", - "@opentelemetry/instrumentation-pg": "0.50.0", - "@opentelemetry/instrumentation-redis-4": "0.46.0", - "@opentelemetry/instrumentation-tedious": "0.18.0", - "@opentelemetry/instrumentation-undici": "0.10.0", - "@opentelemetry/resources": "^1.30.1", - "@opentelemetry/sdk-trace-base": "^1.30.1", - "@opentelemetry/semantic-conventions": "^1.28.0", - "@prisma/instrumentation": "5.22.0", - "@sentry/core": "8.55.0", - "@sentry/opentelemetry": "8.55.0", - "import-in-the-middle": "^1.11.2" - }, - "engines": { - "node": ">=14.18" - } - }, - "node_modules/@n8n/n8n-nodes-langchain/node_modules/@sentry/opentelemetry": { - "version": "8.55.0", - "license": "MIT", - "optional": true, - "peer": true, - "dependencies": { - "@sentry/core": "8.55.0" - }, - "engines": { - "node": ">=14.18" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.9.0", - "@opentelemetry/context-async-hooks": "^1.30.1", - "@opentelemetry/core": "^1.30.1", - "@opentelemetry/instrumentation": "^0.57.1", - "@opentelemetry/sdk-trace-base": "^1.30.1", - "@opentelemetry/semantic-conventions": "^1.28.0" - } - }, - "node_modules/@n8n/n8n-nodes-langchain/node_modules/@types/connect": { - "version": "3.4.36", - "license": "MIT", - "optional": true, - "peer": true, - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@n8n/n8n-nodes-langchain/node_modules/better-sqlite3": { - "version": "9.6.0", - "hasInstallScript": true, - "license": "MIT", - "optional": true, - "peer": true, - "dependencies": { - "bindings": "^1.5.0", - "prebuild-install": "^7.1.1" - } - }, "node_modules/@n8n/n8n-nodes-langchain/node_modules/glob": { "version": "10.4.5", "license": "ISC", @@ -11520,23 +9562,6 @@ "@opentelemetry/api": "^1.3.0" } }, - "node_modules/@opentelemetry/instrumentation-fastify": { - "version": "0.44.1", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/core": "^1.8.0", - "@opentelemetry/instrumentation": "^0.57.0", - "@opentelemetry/semantic-conventions": "^1.27.0" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - } - }, "node_modules/@opentelemetry/instrumentation-fs": { "version": "0.19.1", "license": "Apache-2.0", @@ -11746,22 +9771,6 @@ "@opentelemetry/api": "^1.3.0" } }, - "node_modules/@opentelemetry/instrumentation-nestjs-core": { - "version": "0.44.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@opentelemetry/instrumentation": "^0.57.0", - "@opentelemetry/semantic-conventions": "^1.27.0" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - } - }, "node_modules/@opentelemetry/instrumentation-pg": { "version": "0.51.1", "license": "Apache-2.0", @@ -12415,42 +10424,6 @@ "node": ">=18.0.0" } }, - "node_modules/@smithy/eventstream-codec": { - "version": "2.2.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@aws-crypto/crc32": "3.0.0", - "@smithy/types": "^2.12.0", - "@smithy/util-hex-encoding": "^2.2.0", - "tslib": "^2.6.2" - } - }, - "node_modules/@smithy/eventstream-codec/node_modules/@smithy/types": { - "version": "2.12.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/@smithy/eventstream-codec/node_modules/@smithy/util-hex-encoding": { - "version": "2.2.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=14.0.0" - } - }, "node_modules/@smithy/eventstream-serde-browser": { "version": "4.0.5", "license": "Apache-2.0", @@ -12816,31 +10789,6 @@ "node": ">=18.0.0" } }, - "node_modules/@smithy/protocol-http": { - "version": "3.3.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@smithy/types": "^2.12.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/@smithy/protocol-http/node_modules/@smithy/types": { - "version": "2.12.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=14.0.0" - } - }, "node_modules/@smithy/querystring-builder": { "version": "4.0.5", "license": "Apache-2.0", @@ -12885,73 +10833,6 @@ "node": ">=18.0.0" } }, - "node_modules/@smithy/signature-v4": { - "version": "2.3.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@smithy/is-array-buffer": "^2.2.0", - "@smithy/types": "^2.12.0", - "@smithy/util-hex-encoding": "^2.2.0", - "@smithy/util-middleware": "^2.2.0", - "@smithy/util-uri-escape": "^2.2.0", - "@smithy/util-utf8": "^2.3.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/@smithy/signature-v4/node_modules/@smithy/types": { - "version": "2.12.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/@smithy/signature-v4/node_modules/@smithy/util-hex-encoding": { - "version": "2.2.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/@smithy/signature-v4/node_modules/@smithy/util-middleware": { - "version": "2.2.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@smithy/types": "^2.12.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/@smithy/signature-v4/node_modules/@smithy/util-uri-escape": { - "version": "2.2.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=14.0.0" - } - }, "node_modules/@smithy/smithy-client": { "version": "4.5.2", "license": "Apache-2.0", @@ -18236,59 +16117,6 @@ "url": "https://opencollective.com/node-fetch" } }, - "node_modules/gcp-metadata": { - "version": "5.3.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "gaxios": "^5.0.0", - "json-bigint": "^1.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/gcp-metadata/node_modules/agent-base": { - "version": "6.0.2", - "license": "MIT", - "optional": true, - "peer": true, - "dependencies": { - "debug": "4" - }, - "engines": { - "node": ">= 6.0.0" - } - }, - "node_modules/gcp-metadata/node_modules/gaxios": { - "version": "5.1.3", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "extend": "^3.0.2", - "https-proxy-agent": "^5.0.0", - "is-stream": "^2.0.0", - "node-fetch": "^2.6.9" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/gcp-metadata/node_modules/https-proxy-agent": { - "version": "5.0.1", - "license": "MIT", - "optional": true, - "peer": true, - "dependencies": { - "agent-base": "6", - "debug": "4" - }, - "engines": { - "node": ">= 6" - } - }, "node_modules/generate-function": { "version": "2.3.1", "license": "MIT", @@ -22975,18 +20803,6 @@ "uuid": "dist/bin/uuid" } }, - "node_modules/n8n/node_modules/@types/whatwg-url": { - "version": "8.2.2", - "resolved": "https://registry.npmjs.org/@types/whatwg-url/-/whatwg-url-8.2.2.tgz", - "integrity": "sha512-FtQu10RWgn3D9U4aazdwIE2yzphmTJREDqNdODHrbrZmmMqI0vMheC/6NE/J1Yveaj8H+ela+YwWTjq5PGmuhA==", - "license": "MIT", - "optional": true, - "peer": true, - "dependencies": { - "@types/node": "*", - "@types/webidl-conversions": "*" - } - }, "node_modules/n8n/node_modules/axios": { "version": "1.8.3", "resolved": "https://registry.npmjs.org/axios/-/axios-1.8.3.tgz", @@ -22998,30 +20814,6 @@ "proxy-from-env": "^1.1.0" } }, - "node_modules/n8n/node_modules/better-sqlite3": { - "version": "9.6.0", - "resolved": "https://registry.npmjs.org/better-sqlite3/-/better-sqlite3-9.6.0.tgz", - "integrity": "sha512-yR5HATnqeYNVnkaUTf4bOP2dJSnyhP4puJN/QPRyx4YkBEEUxib422n2XzPqDEHjQQqazoYoADdAm5vE15+dAQ==", - "hasInstallScript": true, - "license": "MIT", - "optional": true, - "peer": true, - "dependencies": { - "bindings": "^1.5.0", - "prebuild-install": "^7.1.1" - } - }, - "node_modules/n8n/node_modules/bson": { - "version": "5.5.1", - "resolved": "https://registry.npmjs.org/bson/-/bson-5.5.1.tgz", - "integrity": "sha512-ix0EwukN2EpC0SRWIj/7B5+A6uQMQy6KMREI9qQqvgpkV2frH63T0UDVd1SYedL6dNCmDBYB3QtXi4ISk9YT+g==", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "engines": { - "node": ">=14.20.1" - } - }, "node_modules/n8n/node_modules/dotenv": { "version": "8.6.0", "license": "BSD-2-Clause", @@ -23116,61 +20908,6 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/n8n/node_modules/mongodb": { - "version": "5.9.2", - "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-5.9.2.tgz", - "integrity": "sha512-H60HecKO4Bc+7dhOv4sJlgvenK4fQNqqUIlXxZYQNbfEWSALGAwGoyJd/0Qwk4TttFXUOHJ2ZJQe/52ScaUwtQ==", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "bson": "^5.5.0", - "mongodb-connection-string-url": "^2.6.0", - "socks": "^2.7.1" - }, - "engines": { - "node": ">=14.20.1" - }, - "optionalDependencies": { - "@mongodb-js/saslprep": "^1.1.0" - }, - "peerDependencies": { - "@aws-sdk/credential-providers": "^3.188.0", - "@mongodb-js/zstd": "^1.0.0", - "kerberos": "^1.0.0 || ^2.0.0", - "mongodb-client-encryption": ">=2.3.0 <3", - "snappy": "^7.2.2" - }, - "peerDependenciesMeta": { - "@aws-sdk/credential-providers": { - "optional": true - }, - "@mongodb-js/zstd": { - "optional": true - }, - "kerberos": { - "optional": true - }, - "mongodb-client-encryption": { - "optional": true - }, - "snappy": { - "optional": true - } - } - }, - "node_modules/n8n/node_modules/mongodb-connection-string-url": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/mongodb-connection-string-url/-/mongodb-connection-string-url-2.6.0.tgz", - "integrity": "sha512-WvTZlI9ab0QYtTYnuMLgobULWhokRjtC7db9LtcVfJ+Hsnyr5eo6ZtNAt3Ly24XZScGMelOcGtm7lSn0332tPQ==", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@types/whatwg-url": "^8.2.1", - "whatwg-url": "^11.0.0" - } - }, "node_modules/n8n/node_modules/open": { "version": "7.4.2", "license": "MIT", @@ -23249,35 +20986,6 @@ "node": ">=10" } }, - "node_modules/n8n/node_modules/tr46": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-3.0.0.tgz", - "integrity": "sha512-l7FvfAHlcmulp8kr+flpQZmVwtu7nfRV7NZujtN0OqES8EL4O4e0qqzL0DC5gAvx/ZC/9lk6rhcUwYvkBnBnYA==", - "license": "MIT", - "optional": true, - "peer": true, - "dependencies": { - "punycode": "^2.1.1" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/n8n/node_modules/whatwg-url": { - "version": "11.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-11.0.0.tgz", - "integrity": "sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ==", - "license": "MIT", - "optional": true, - "peer": true, - "dependencies": { - "tr46": "^3.0.0", - "webidl-conversions": "^7.0.0" - }, - "engines": { - "node": ">=12" - } - }, "node_modules/n8n/node_modules/ws": { "version": "8.17.1", "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.1.tgz", @@ -24028,7 +21736,6 @@ "node_modules/openai": { "version": "4.104.0", "license": "Apache-2.0", - "peer": true, "dependencies": { "@types/node": "^18.11.18", "@types/node-fetch": "^2.6.4", @@ -24057,15 +21764,13 @@ "node_modules/openai/node_modules/@types/node": { "version": "18.19.123", "license": "MIT", - "peer": true, "dependencies": { "undici-types": "~5.26.4" } }, "node_modules/openai/node_modules/undici-types": { "version": "5.26.5", - "license": "MIT", - "peer": true + "license": "MIT" }, "node_modules/openapi-types": { "version": "12.1.3", @@ -24639,18 +22344,6 @@ "node": ">=18" } }, - "node_modules/playwright/node_modules/fsevents": { - "version": "2.3.2", - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "peer": true, - "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" - } - }, "node_modules/possible-typed-array-names": { "version": "1.1.0", "license": "MIT", @@ -24968,20 +22661,6 @@ "license": "MIT", "peer": true }, - "node_modules/pyodide": { - "version": "0.26.4", - "resolved": "https://registry.npmjs.org/pyodide/-/pyodide-0.26.4.tgz", - "integrity": "sha512-z2CHsjVlhhJi5tYBF0AYAfNEPo3zq/z+xOpFtk1tweJkRaTqU4UK/7pLvo8DBU2VDPH31vB3pSI+8fnoqrVrFg==", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "ws": "^8.5.0" - }, - "engines": { - "node": ">=18.0.0" - } - }, "node_modules/python-struct": { "version": "1.1.3", "license": "MIT", diff --git a/package.json b/package.json index 766e746..fc0ad42 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "n8n-mcp", - "version": "2.11.0", + "version": "2.11.1", "description": "Integration between n8n workflow automation and Model Context Protocol (MCP)", "main": "dist/index.js", "bin": { diff --git a/src/mcp/server.ts b/src/mcp/server.ts index 3604f2e..3fc9b43 100644 --- a/src/mcp/server.ts +++ b/src/mcp/server.ts @@ -746,7 +746,8 @@ export class N8NDocumentationMCPServer { this.validateToolParams(name, args, ['query']); const searchLimit = Math.min(Math.max(Number(args.limit) || 20, 1), 100); const searchOffset = Math.max(Number(args.offset) || 0, 0); - return this.searchTemplates(args.query, searchLimit, searchOffset); + const searchFields = args.fields as string[] | undefined; + return this.searchTemplates(args.query, searchLimit, searchOffset, searchFields); case 'get_templates_for_task': this.validateToolParams(name, args, ['task']); const taskLimit = Math.min(Math.max(Number(args.limit) || 10, 1), 100); @@ -2399,11 +2400,11 @@ Full documentation is being prepared. For now, use get_node_essentials for confi }; } - private async searchTemplates(query: string, limit: number = 20, offset: number = 0): Promise { + private async searchTemplates(query: string, limit: number = 20, offset: number = 0, fields?: string[]): Promise { await this.ensureInitialized(); if (!this.templateService) throw new Error('Template service not initialized'); - const result = await this.templateService.searchTemplates(query, limit, offset); + const result = await this.templateService.searchTemplates(query, limit, offset, fields); if (result.items.length === 0 && offset === 0) { return { diff --git a/src/mcp/tool-docs/templates/search-templates.ts b/src/mcp/tool-docs/templates/search-templates.ts index b5007c4..363e278 100644 --- a/src/mcp/tool-docs/templates/search-templates.ts +++ b/src/mcp/tool-docs/templates/search-templates.ts @@ -5,13 +5,14 @@ export const searchTemplatesDoc: ToolDocumentation = { category: 'templates', essentials: { description: 'Search templates by name/description keywords. NOT for node types! For nodes use list_node_templates. Example: "chatbot".', - keyParameters: ['query', 'limit'], - example: 'search_templates({query: "chatbot"})', + keyParameters: ['query', 'limit', 'fields'], + example: 'search_templates({query: "chatbot", fields: ["id", "name"]})', performance: 'Fast (<100ms) - FTS5 full-text search', tips: [ 'Searches template names and descriptions, NOT node types', 'Use keywords like "automation", "sync", "notification"', - 'For node-specific search, use list_node_templates instead' + 'For node-specific search, use list_node_templates instead', + 'Use fields parameter to get only specific data (reduces response by 70-90%)' ] }, full: { @@ -22,6 +23,11 @@ export const searchTemplatesDoc: ToolDocumentation = { required: true, description: 'Search query for template names/descriptions. NOT for node types! Examples: "chatbot", "automation", "social media", "webhook". For node-based search use list_node_templates instead.' }, + fields: { + type: 'array', + required: false, + description: 'Fields to include in response. Options: "id", "name", "description", "author", "nodes", "views", "created", "url", "metadata". Default: all fields. Example: ["id", "name"] for minimal response.' + }, limit: { type: 'number', required: false, @@ -47,7 +53,9 @@ export const searchTemplatesDoc: ToolDocumentation = { 'search_templates({query: "email notification"}) - Find email alert workflows', 'search_templates({query: "data sync"}) - Find data synchronization workflows', 'search_templates({query: "webhook automation", limit: 30}) - Find webhook-based automations', - 'search_templates({query: "social media scheduler"}) - Find social posting workflows' + 'search_templates({query: "social media scheduler"}) - Find social posting workflows', + 'search_templates({query: "slack", fields: ["id", "name"]}) - Get only IDs and names of Slack templates', + 'search_templates({query: "automation", fields: ["id", "name", "description"]}) - Get minimal info for automation templates' ], useCases: [ 'Find workflows by business purpose', diff --git a/src/mcp/tools.ts b/src/mcp/tools.ts index f31edcb..5ebd32d 100644 --- a/src/mcp/tools.ts +++ b/src/mcp/tools.ts @@ -414,6 +414,14 @@ export const n8nDocumentationToolsFinal: ToolDefinition[] = [ type: 'string', description: 'Search keyword as string. Example: "chatbot"', }, + fields: { + type: 'array', + items: { + type: 'string', + enum: ['id', 'name', 'description', 'author', 'nodes', 'views', 'created', 'url', 'metadata'], + }, + description: 'Fields to include in response. Default: all fields. Example: ["id", "name"] for minimal response.', + }, limit: { type: 'number', description: 'Maximum number of results. Default 20.', diff --git a/src/templates/template-service.ts b/src/templates/template-service.ts index 3066077..9897967 100644 --- a/src/templates/template-service.ts +++ b/src/templates/template-service.ts @@ -55,6 +55,9 @@ export interface TemplateMinimal { }; } +export type TemplateField = 'id' | 'name' | 'description' | 'author' | 'nodes' | 'views' | 'created' | 'url' | 'metadata'; +export type PartialTemplateInfo = Partial; + export class TemplateService { private repository: TemplateRepository; @@ -124,12 +127,17 @@ export class TemplateService { /** * Search templates by query */ - async searchTemplates(query: string, limit: number = 20, offset: number = 0): Promise> { + async searchTemplates(query: string, limit: number = 20, offset: number = 0, fields?: string[]): Promise> { const templates = this.repository.searchTemplates(query, limit, offset); const total = this.repository.getSearchCount(query); + // If fields are specified, filter the template info + const items = fields + ? templates.map(t => this.formatTemplateWithFields(t, fields)) + : templates.map(t => this.formatTemplateInfo(t)); + return { - items: templates.map(this.formatTemplateInfo), + items, total, limit, offset, @@ -403,4 +411,21 @@ export class TemplateService { return info; } + + /** + * Format template with only specified fields + */ + private formatTemplateWithFields(template: StoredTemplate, fields: string[]): PartialTemplateInfo { + const fullInfo = this.formatTemplateInfo(template); + const result: PartialTemplateInfo = {}; + + // Only include requested fields + for (const field of fields) { + if (field in fullInfo) { + (result as any)[field] = (fullInfo as any)[field]; + } + } + + return result; + } } \ No newline at end of file diff --git a/tests/unit/services/template-service.test.ts b/tests/unit/services/template-service.test.ts index 7dd9499..df1123d 100644 --- a/tests/unit/services/template-service.test.ts +++ b/tests/unit/services/template-service.test.ts @@ -683,7 +683,7 @@ describe('TemplateService', () => { const result = await service.searchTemplates('test'); - expect(result.items[0].author.verified).toBe(false); + expect(result.items[0]?.author?.verified).toBe(false); }); }); }); \ No newline at end of file