n8n 2.21.4 → 2.22.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (336) hide show
  1. package/dist/active-workflow-manager.js +4 -0
  2. package/dist/active-workflow-manager.js.map +1 -1
  3. package/dist/build.tsbuildinfo +1 -1
  4. package/dist/commands/base-command.js +2 -1
  5. package/dist/commands/base-command.js.map +1 -1
  6. package/dist/commands/export/entities.d.ts +3 -0
  7. package/dist/commands/export/entities.js +8 -1
  8. package/dist/commands/export/entities.js.map +1 -1
  9. package/dist/concurrency/concurrency-control.service.d.ts +7 -2
  10. package/dist/concurrency/concurrency-control.service.js +72 -47
  11. package/dist/concurrency/concurrency-control.service.js.map +1 -1
  12. package/dist/constants.js +3 -0
  13. package/dist/constants.js.map +1 -1
  14. package/dist/controllers/e2e.controller.js +2 -0
  15. package/dist/controllers/e2e.controller.js.map +1 -1
  16. package/dist/controllers/users.controller.d.ts +1 -1
  17. package/dist/credentials/credentials.service.js.map +1 -1
  18. package/dist/evaluation.ee/evaluation-collection.service.d.ts +38 -0
  19. package/dist/evaluation.ee/evaluation-collection.service.js +327 -0
  20. package/dist/evaluation.ee/evaluation-collection.service.js.map +1 -0
  21. package/dist/evaluation.ee/evaluation-collections.controller.ee.d.ts +50 -0
  22. package/dist/evaluation.ee/evaluation-collections.controller.ee.js +148 -0
  23. package/dist/evaluation.ee/evaluation-collections.controller.ee.js.map +1 -0
  24. package/dist/evaluation.ee/evaluation-concurrency.helper.d.ts +11 -0
  25. package/dist/evaluation.ee/evaluation-concurrency.helper.js +40 -0
  26. package/dist/evaluation.ee/evaluation-concurrency.helper.js.map +1 -0
  27. package/dist/evaluation.ee/test-runner/test-runner.service.ee.d.ts +22 -6
  28. package/dist/evaluation.ee/test-runner/test-runner.service.ee.js +105 -15
  29. package/dist/evaluation.ee/test-runner/test-runner.service.ee.js.map +1 -1
  30. package/dist/evaluation.ee/test-runs.controller.ee.d.ts +5 -6
  31. package/dist/evaluation.ee/test-runs.controller.ee.js +4 -24
  32. package/dist/evaluation.ee/test-runs.controller.ee.js.map +1 -1
  33. package/dist/interfaces.d.ts +6 -0
  34. package/dist/modules/agents/adapters/agents-credential-provider.d.ts +2 -1
  35. package/dist/modules/agents/adapters/agents-credential-provider.js +25 -24
  36. package/dist/modules/agents/adapters/agents-credential-provider.js.map +1 -1
  37. package/dist/modules/agents/agent-execution.service.js +0 -1
  38. package/dist/modules/agents/agent-execution.service.js.map +1 -1
  39. package/dist/modules/agents/agent-skills.service.d.ts +1 -2
  40. package/dist/modules/agents/agent-skills.service.js.map +1 -1
  41. package/dist/modules/agents/agent-sse-stream.d.ts +1 -1
  42. package/dist/modules/agents/agent-sse-stream.js +0 -31
  43. package/dist/modules/agents/agent-sse-stream.js.map +1 -1
  44. package/dist/modules/agents/agents.controller.d.ts +64 -37
  45. package/dist/modules/agents/agents.controller.js +54 -40
  46. package/dist/modules/agents/agents.controller.js.map +1 -1
  47. package/dist/modules/agents/agents.service.d.ts +15 -5
  48. package/dist/modules/agents/agents.service.js +79 -71
  49. package/dist/modules/agents/agents.service.js.map +1 -1
  50. package/dist/modules/agents/builder/agent-builder-preview-path.d.ts +1 -0
  51. package/dist/modules/agents/builder/agent-builder-preview-path.js +9 -0
  52. package/dist/modules/agents/builder/agent-builder-preview-path.js.map +1 -0
  53. package/dist/modules/agents/builder/agents-builder-model-recommendations.d.ts +3 -0
  54. package/dist/modules/agents/builder/agents-builder-model-recommendations.js +106 -0
  55. package/dist/modules/agents/builder/agents-builder-model-recommendations.js.map +1 -0
  56. package/dist/modules/agents/builder/agents-builder-prompts.d.ts +12 -11
  57. package/dist/modules/agents/builder/agents-builder-prompts.js +61 -32
  58. package/dist/modules/agents/builder/agents-builder-prompts.js.map +1 -1
  59. package/dist/modules/agents/builder/agents-builder-tools.service.d.ts +1 -1
  60. package/dist/modules/agents/builder/agents-builder-tools.service.js +7 -8
  61. package/dist/modules/agents/builder/agents-builder-tools.service.js.map +1 -1
  62. package/dist/modules/agents/builder/agents-builder.service.js +6 -3
  63. package/dist/modules/agents/builder/agents-builder.service.js.map +1 -1
  64. package/dist/modules/agents/builder/interactive/ask-llm.tool.js +1 -1
  65. package/dist/modules/agents/builder/interactive/ask-llm.tool.js.map +1 -1
  66. package/dist/modules/agents/builder/interactive/resolve-llm.tool.js +1 -1
  67. package/dist/modules/agents/builder/interactive/resolve-llm.tool.js.map +1 -1
  68. package/dist/modules/agents/entities/agent-execution.entity.d.ts +0 -1
  69. package/dist/modules/agents/entities/agent-execution.entity.js +0 -4
  70. package/dist/modules/agents/entities/agent-execution.entity.js.map +1 -1
  71. package/dist/modules/agents/entities/agent-observation-lock.entity.d.ts +2 -0
  72. package/dist/modules/agents/entities/agent-observation-lock.entity.js +4 -0
  73. package/dist/modules/agents/entities/agent-observation-lock.entity.js.map +1 -1
  74. package/dist/modules/agents/entities/agent-observation.entity.d.ts +9 -5
  75. package/dist/modules/agents/entities/agent-observation.entity.js +21 -11
  76. package/dist/modules/agents/entities/agent-observation.entity.js.map +1 -1
  77. package/dist/modules/agents/entities/agent-published-version.entity.d.ts +1 -2
  78. package/dist/modules/agents/entities/agent-published-version.entity.js.map +1 -1
  79. package/dist/modules/agents/entities/agent.entity.d.ts +2 -3
  80. package/dist/modules/agents/entities/agent.entity.js.map +1 -1
  81. package/dist/modules/agents/execution-recorder.d.ts +1 -8
  82. package/dist/modules/agents/execution-recorder.js +67 -42
  83. package/dist/modules/agents/execution-recorder.js.map +1 -1
  84. package/dist/modules/agents/integrations/agent-chat-bridge.d.ts +6 -4
  85. package/dist/modules/agents/integrations/agent-chat-bridge.js +22 -13
  86. package/dist/modules/agents/integrations/agent-chat-bridge.js.map +1 -1
  87. package/dist/modules/agents/integrations/agent-chat-integration.d.ts +4 -1
  88. package/dist/modules/agents/integrations/agent-chat-integration.js.map +1 -1
  89. package/dist/modules/agents/integrations/chat-integration.service.d.ts +17 -8
  90. package/dist/modules/agents/integrations/chat-integration.service.js +53 -37
  91. package/dist/modules/agents/integrations/chat-integration.service.js.map +1 -1
  92. package/dist/modules/agents/integrations/integrations-sync.d.ts +2 -2
  93. package/dist/modules/agents/integrations/integrations-sync.js +1 -1
  94. package/dist/modules/agents/integrations/integrations-sync.js.map +1 -1
  95. package/dist/modules/agents/integrations/n8n-memory.d.ts +31 -35
  96. package/dist/modules/agents/integrations/n8n-memory.js +121 -127
  97. package/dist/modules/agents/integrations/n8n-memory.js.map +1 -1
  98. package/dist/modules/agents/integrations/platforms/telegram-integration.d.ts +9 -2
  99. package/dist/modules/agents/integrations/platforms/telegram-integration.js +51 -6
  100. package/dist/modules/agents/integrations/platforms/telegram-integration.js.map +1 -1
  101. package/dist/modules/agents/json-config/agent-config-composition.d.ts +2 -3
  102. package/dist/modules/agents/json-config/agent-config-composition.js.map +1 -1
  103. package/dist/modules/agents/json-config/from-json-config.d.ts +1 -2
  104. package/dist/modules/agents/json-config/from-json-config.js +31 -34
  105. package/dist/modules/agents/json-config/from-json-config.js.map +1 -1
  106. package/dist/modules/agents/observation-log-observer.d.ts +2 -0
  107. package/dist/modules/agents/observation-log-observer.js +10 -0
  108. package/dist/modules/agents/observation-log-observer.js.map +1 -0
  109. package/dist/modules/agents/observation-log-reflector.d.ts +2 -0
  110. package/dist/modules/agents/observation-log-reflector.js +9 -0
  111. package/dist/modules/agents/observation-log-reflector.js.map +1 -0
  112. package/dist/modules/agents/repositories/agent-published-version.repository.d.ts +1 -1
  113. package/dist/modules/agents/repositories/agent.repository.js +1 -1
  114. package/dist/modules/agents/repositories/agent.repository.js.map +1 -1
  115. package/dist/modules/agents/tools/node-tool-factory.d.ts +1 -1
  116. package/dist/modules/agents/tools/workflow-tool-factory.d.ts +1 -1
  117. package/dist/modules/agents/tools/workflow-tool-factory.js +40 -2
  118. package/dist/modules/agents/tools/workflow-tool-factory.js.map +1 -1
  119. package/dist/modules/agents/utils/execution-to-message-mapper.d.ts +6 -0
  120. package/dist/modules/agents/utils/execution-to-message-mapper.js +133 -0
  121. package/dist/modules/agents/utils/execution-to-message-mapper.js.map +1 -0
  122. package/dist/modules/chat-hub/chat-hub-workflow.service.js +9 -0
  123. package/dist/modules/chat-hub/chat-hub-workflow.service.js.map +1 -1
  124. package/dist/modules/chat-hub/chat-hub.constants.js +4 -0
  125. package/dist/modules/chat-hub/chat-hub.constants.js.map +1 -1
  126. package/dist/modules/chat-hub/chat-hub.models.service.d.ts +1 -0
  127. package/dist/modules/chat-hub/chat-hub.models.service.js +43 -0
  128. package/dist/modules/chat-hub/chat-hub.models.service.js.map +1 -1
  129. package/dist/modules/chat-hub/chat-hub.module.d.ts +3 -3
  130. package/dist/modules/chat-hub/chat-hub.settings.controller.d.ts +7 -7
  131. package/dist/modules/chat-hub/context-limits.js +1 -0
  132. package/dist/modules/chat-hub/context-limits.js.map +1 -1
  133. package/dist/modules/chat-hub/dto/chat-models-request.dto.d.ts +2 -2
  134. package/dist/modules/community-packages/community-node-types-utils.d.ts +1 -1
  135. package/dist/modules/community-packages/community-node-types-utils.js +1 -1
  136. package/dist/modules/community-packages/community-node-types-utils.js.map +1 -1
  137. package/dist/modules/community-packages/community-node-types.service.js +1 -1
  138. package/dist/modules/community-packages/community-node-types.service.js.map +1 -1
  139. package/dist/modules/data-table/utils/sql-utils.d.ts +2 -0
  140. package/dist/modules/data-table/utils/sql-utils.js +26 -9
  141. package/dist/modules/data-table/utils/sql-utils.js.map +1 -1
  142. package/dist/modules/inbound-secrets/inbound-secrets-context-hook.d.ts +10 -0
  143. package/dist/modules/inbound-secrets/inbound-secrets-context-hook.js +55 -0
  144. package/dist/modules/inbound-secrets/inbound-secrets-context-hook.js.map +1 -0
  145. package/dist/modules/inbound-secrets/inbound-secrets.config.d.ts +3 -0
  146. package/dist/modules/inbound-secrets/inbound-secrets.config.js +27 -0
  147. package/dist/modules/inbound-secrets/inbound-secrets.config.js.map +1 -0
  148. package/dist/modules/inbound-secrets/inbound-secrets.module.d.ts +4 -0
  149. package/dist/modules/inbound-secrets/inbound-secrets.module.js +61 -0
  150. package/dist/modules/inbound-secrets/inbound-secrets.module.js.map +1 -0
  151. package/dist/modules/inbound-secrets/inbound-secrets.schemas.d.ts +3 -0
  152. package/dist/modules/inbound-secrets/inbound-secrets.schemas.js +6 -0
  153. package/dist/modules/inbound-secrets/inbound-secrets.schemas.js.map +1 -0
  154. package/dist/modules/inbound-secrets/inbound-secrets.service.d.ts +17 -0
  155. package/dist/modules/inbound-secrets/inbound-secrets.service.js +76 -0
  156. package/dist/modules/inbound-secrets/inbound-secrets.service.js.map +1 -0
  157. package/dist/modules/inbound-secrets/path-traversal.d.ts +4 -0
  158. package/dist/modules/inbound-secrets/path-traversal.js +51 -0
  159. package/dist/modules/inbound-secrets/path-traversal.js.map +1 -0
  160. package/dist/modules/insights/database/repositories/insights-by-period.repository.d.ts +1 -0
  161. package/dist/modules/insights/database/repositories/insights-by-period.repository.js +19 -4
  162. package/dist/modules/insights/database/repositories/insights-by-period.repository.js.map +1 -1
  163. package/dist/modules/insights/database/repositories/insights-raw.repository.js +1 -0
  164. package/dist/modules/insights/database/repositories/insights-raw.repository.js.map +1 -1
  165. package/dist/modules/insights/insights-compaction.service.d.ts +5 -0
  166. package/dist/modules/insights/insights-compaction.service.js +93 -18
  167. package/dist/modules/insights/insights-compaction.service.js.map +1 -1
  168. package/dist/modules/insights/insights.config.d.ts +3 -0
  169. package/dist/modules/insights/insights.config.js +15 -0
  170. package/dist/modules/insights/insights.config.js.map +1 -1
  171. package/dist/modules/instance-ai/eval/eval-mocked-credentials-helper.d.ts +17 -0
  172. package/dist/modules/instance-ai/eval/eval-mocked-credentials-helper.js +61 -0
  173. package/dist/modules/instance-ai/eval/eval-mocked-credentials-helper.js.map +1 -0
  174. package/dist/modules/instance-ai/eval/execution.service.js +8 -2
  175. package/dist/modules/instance-ai/eval/execution.service.js.map +1 -1
  176. package/dist/modules/instance-ai/eval/mock-handler.d.ts +1 -0
  177. package/dist/modules/instance-ai/eval/mock-handler.js +116 -72
  178. package/dist/modules/instance-ai/eval/mock-handler.js.map +1 -1
  179. package/dist/modules/instance-ai/eval/mock-quirks.d.ts +10 -0
  180. package/dist/modules/instance-ai/eval/mock-quirks.js +25 -0
  181. package/dist/modules/instance-ai/eval/mock-quirks.js.map +1 -0
  182. package/dist/modules/instance-ai/instance-ai-settings.service.js +14 -0
  183. package/dist/modules/instance-ai/instance-ai-settings.service.js.map +1 -1
  184. package/dist/modules/instance-ai/instance-ai.adapter.service.js +25 -5
  185. package/dist/modules/instance-ai/instance-ai.adapter.service.js.map +1 -1
  186. package/dist/modules/instance-ai/instance-ai.controller.d.ts +10 -3
  187. package/dist/modules/instance-ai/instance-ai.controller.js +34 -2
  188. package/dist/modules/instance-ai/instance-ai.controller.js.map +1 -1
  189. package/dist/modules/instance-ai/instance-ai.service.d.ts +2 -1
  190. package/dist/modules/instance-ai/instance-ai.service.js +75 -29
  191. package/dist/modules/instance-ai/instance-ai.service.js.map +1 -1
  192. package/dist/modules/instance-ai/liveness/index.d.ts +1 -1
  193. package/dist/modules/instance-ai/liveness/index.js.map +1 -1
  194. package/dist/modules/instance-ai/liveness/instance-ai-liveness.service.d.ts +12 -3
  195. package/dist/modules/instance-ai/liveness/instance-ai-liveness.service.js +21 -11
  196. package/dist/modules/instance-ai/liveness/instance-ai-liveness.service.js.map +1 -1
  197. package/dist/modules/instance-ai/run-timeout-details.d.ts +8 -0
  198. package/dist/modules/instance-ai/run-timeout-details.js +3 -0
  199. package/dist/modules/instance-ai/run-timeout-details.js.map +1 -0
  200. package/dist/modules/instance-ai/run-trace-metadata.d.ts +15 -0
  201. package/dist/modules/instance-ai/run-trace-metadata.js +63 -0
  202. package/dist/modules/instance-ai/run-trace-metadata.js.map +1 -0
  203. package/dist/modules/instance-version-history/instance-version-history.controller.d.ts +5 -3
  204. package/dist/modules/instance-version-history/instance-version-history.controller.js +9 -9
  205. package/dist/modules/instance-version-history/instance-version-history.controller.js.map +1 -1
  206. package/dist/modules/mcp/mcp-api-key.service.js +1 -0
  207. package/dist/modules/mcp/mcp-api-key.service.js.map +1 -1
  208. package/dist/modules/mcp/mcp-oauth-token.service.d.ts +7 -2
  209. package/dist/modules/mcp/mcp-oauth-token.service.js +16 -6
  210. package/dist/modules/mcp/mcp-oauth-token.service.js.map +1 -1
  211. package/dist/modules/mcp/mcp-server-middleware.service.js +2 -0
  212. package/dist/modules/mcp/mcp-server-middleware.service.js.map +1 -1
  213. package/dist/modules/mcp/mcp.controller.js +1 -0
  214. package/dist/modules/mcp/mcp.controller.js.map +1 -1
  215. package/dist/modules/mcp/mcp.types.d.ts +2 -0
  216. package/dist/modules/mcp/tools/workflow-builder/credential-validation.d.ts +15 -0
  217. package/dist/modules/mcp/tools/workflow-builder/credential-validation.js +91 -0
  218. package/dist/modules/mcp/tools/workflow-builder/credential-validation.js.map +1 -0
  219. package/dist/modules/mcp/tools/workflow-builder/mcp-instructions.js +1 -1
  220. package/dist/modules/mcp/tools/workflow-builder/update-workflow.tool.d.ts +228 -3
  221. package/dist/modules/mcp/tools/workflow-builder/update-workflow.tool.js +74 -60
  222. package/dist/modules/mcp/tools/workflow-builder/update-workflow.tool.js.map +1 -1
  223. package/dist/modules/mcp/tools/workflow-builder/workflow-operations.d.ts +251 -0
  224. package/dist/modules/mcp/tools/workflow-builder/workflow-operations.js +447 -0
  225. package/dist/modules/mcp/tools/workflow-builder/workflow-operations.js.map +1 -0
  226. package/dist/modules/mcp-registry/mcp-registry-node-loader.d.ts +4 -3
  227. package/dist/modules/mcp-registry/mcp-registry-node-loader.js +6 -3
  228. package/dist/modules/mcp-registry/mcp-registry-node-loader.js.map +1 -1
  229. package/dist/modules/mcp-registry/mcp-registry-test.controller.d.ts +12 -0
  230. package/dist/modules/mcp-registry/mcp-registry-test.controller.js +49 -0
  231. package/dist/modules/mcp-registry/mcp-registry-test.controller.js.map +1 -0
  232. package/dist/modules/mcp-registry/mcp-registry.module.d.ts +2 -0
  233. package/dist/modules/mcp-registry/mcp-registry.module.js +12 -2
  234. package/dist/modules/mcp-registry/mcp-registry.module.js.map +1 -1
  235. package/dist/modules/mcp-registry/node-description-transform.js +16 -2
  236. package/dist/modules/mcp-registry/node-description-transform.js.map +1 -1
  237. package/dist/modules/mcp-registry/registry/mcp-registry-api.client.d.ts +8 -0
  238. package/dist/modules/mcp-registry/registry/mcp-registry-api.client.js +58 -0
  239. package/dist/modules/mcp-registry/registry/mcp-registry-api.client.js.map +1 -0
  240. package/dist/modules/mcp-registry/registry/mcp-registry-server.entity.d.ts +36 -0
  241. package/dist/modules/mcp-registry/registry/mcp-registry-server.entity.js +46 -0
  242. package/dist/modules/mcp-registry/registry/mcp-registry-server.entity.js.map +1 -0
  243. package/dist/modules/mcp-registry/registry/mcp-registry-server.repository.d.ts +5 -0
  244. package/dist/modules/mcp-registry/registry/mcp-registry-server.repository.js +26 -0
  245. package/dist/modules/mcp-registry/registry/mcp-registry-server.repository.js.map +1 -0
  246. package/dist/modules/mcp-registry/registry/mcp-registry.service.d.ts +37 -4
  247. package/dist/modules/mcp-registry/registry/mcp-registry.service.js +196 -12
  248. package/dist/modules/mcp-registry/registry/mcp-registry.service.js.map +1 -1
  249. package/dist/modules/mcp-registry/registry/mcp-registry.types.d.ts +9 -1
  250. package/dist/modules/mcp-registry/registry/mcp-registry.types.js +29 -0
  251. package/dist/modules/mcp-registry/registry/mcp-registry.types.js.map +1 -1
  252. package/dist/modules/mcp-registry/registry/mock-servers.js +2 -0
  253. package/dist/modules/mcp-registry/registry/mock-servers.js.map +1 -1
  254. package/dist/modules/otel/execution-level-tracer.js +4 -2
  255. package/dist/modules/otel/execution-level-tracer.js.map +1 -1
  256. package/dist/modules/otel/otel.constants.d.ts +1 -0
  257. package/dist/modules/otel/otel.constants.js +1 -0
  258. package/dist/modules/otel/otel.constants.js.map +1 -1
  259. package/dist/modules/otel/otel.module.d.ts +3 -0
  260. package/dist/modules/otel/otel.module.js +5 -0
  261. package/dist/modules/otel/otel.module.js.map +1 -1
  262. package/dist/modules/redaction/executions/execution-redaction.service.js +8 -3
  263. package/dist/modules/redaction/executions/execution-redaction.service.js.map +1 -1
  264. package/dist/modules/redaction/instance-redaction-enforcement.service.d.ts +14 -0
  265. package/dist/modules/redaction/instance-redaction-enforcement.service.js +91 -0
  266. package/dist/modules/redaction/instance-redaction-enforcement.service.js.map +1 -0
  267. package/dist/modules/redaction/redaction-enforcement.feature-flag.d.ts +2 -0
  268. package/dist/modules/redaction/redaction-enforcement.feature-flag.js +9 -0
  269. package/dist/modules/redaction/redaction-enforcement.feature-flag.js.map +1 -0
  270. package/dist/modules/redaction/redaction-enforcement.service.d.ts +8 -0
  271. package/dist/modules/redaction/redaction-enforcement.service.js +38 -0
  272. package/dist/modules/redaction/redaction-enforcement.service.js.map +1 -0
  273. package/dist/modules/redaction/redaction.config.d.ts +3 -0
  274. package/dist/modules/redaction/redaction.config.js +27 -0
  275. package/dist/modules/redaction/redaction.config.js.map +1 -0
  276. package/dist/modules/source-control.ee/source-control-import.service.ee.d.ts +3 -1
  277. package/dist/modules/source-control.ee/source-control-import.service.ee.js +14 -6
  278. package/dist/modules/source-control.ee/source-control-import.service.ee.js.map +1 -1
  279. package/dist/modules/source-control.ee/source-control.controller.ee.d.ts +2 -2
  280. package/dist/modules/source-control.ee/source-control.service.ee.d.ts +1 -1
  281. package/dist/modules/workflow-index/workflow-index.service.js.map +1 -1
  282. package/dist/oauth/oauth.service.js +1 -0
  283. package/dist/oauth/oauth.service.js.map +1 -1
  284. package/dist/posthog/index.d.ts +0 -1
  285. package/dist/posthog/index.js +2 -10
  286. package/dist/posthog/index.js.map +1 -1
  287. package/dist/public-api/v1/handlers/workflows/workflows.handler.js +2 -1
  288. package/dist/public-api/v1/handlers/workflows/workflows.handler.js.map +1 -1
  289. package/dist/scaling/constants.d.ts +2 -2
  290. package/dist/scaling/pubsub/pubsub.event-map.d.ts +6 -3
  291. package/dist/scaling/pubsub/pubsub.types.d.ts +3 -1
  292. package/dist/scaling/scaling.service.js +3 -2
  293. package/dist/scaling/scaling.service.js.map +1 -1
  294. package/dist/server.d.ts +1 -0
  295. package/dist/server.js +1 -0
  296. package/dist/server.js.map +1 -1
  297. package/dist/services/export.service.d.ts +6 -1
  298. package/dist/services/export.service.js +97 -1
  299. package/dist/services/export.service.js.map +1 -1
  300. package/dist/services/frontend.service.js +3 -1
  301. package/dist/services/frontend.service.js.map +1 -1
  302. package/dist/services/import.service.d.ts +2 -1
  303. package/dist/services/import.service.js +70 -22
  304. package/dist/services/import.service.js.map +1 -1
  305. package/dist/telemetry/index.d.ts +13 -1
  306. package/dist/telemetry/index.js +54 -18
  307. package/dist/telemetry/index.js.map +1 -1
  308. package/dist/{modules/community-packages → utils}/strapi-utils.js +2 -2
  309. package/dist/utils/strapi-utils.js.map +1 -0
  310. package/dist/workflows/workflow-history/workflow-history.controller.d.ts +9 -0
  311. package/dist/workflows/workflow-history/workflow-history.controller.js +17 -0
  312. package/dist/workflows/workflow-history/workflow-history.controller.js.map +1 -1
  313. package/dist/workflows/workflow-history/workflow-history.service.d.ts +16 -2
  314. package/dist/workflows/workflow-history/workflow-history.service.js +55 -1
  315. package/dist/workflows/workflow-history/workflow-history.service.js.map +1 -1
  316. package/dist/workflows/workflow.service.d.ts +3 -1
  317. package/dist/workflows/workflow.service.js +6 -2
  318. package/dist/workflows/workflow.service.js.map +1 -1
  319. package/package.json +37 -37
  320. package/dist/modules/agents/json-config/agent-json-config.d.ts +0 -1022
  321. package/dist/modules/agents/json-config/agent-json-config.js +0 -128
  322. package/dist/modules/agents/json-config/agent-json-config.js.map +0 -1
  323. package/dist/modules/agents/json-config/integration-config.d.ts +0 -61
  324. package/dist/modules/agents/json-config/integration-config.js +0 -33
  325. package/dist/modules/agents/json-config/integration-config.js.map +0 -1
  326. package/dist/modules/community-packages/strapi-utils.js.map +0 -1
  327. package/dist/modules/mcp-registry/mcp-registry-node-loader.test.d.ts +0 -1
  328. package/dist/modules/mcp-registry/mcp-registry-node-loader.test.js +0 -244
  329. package/dist/modules/mcp-registry/mcp-registry-node-loader.test.js.map +0 -1
  330. package/dist/modules/mcp-registry/node-description-transform.test.d.ts +0 -1
  331. package/dist/modules/mcp-registry/node-description-transform.test.js +0 -286
  332. package/dist/modules/mcp-registry/node-description-transform.test.js.map +0 -1
  333. package/dist/modules/mcp-registry/registry/mcp-registry.service.test.d.ts +0 -1
  334. package/dist/modules/mcp-registry/registry/mcp-registry.service.test.js +0 -41
  335. package/dist/modules/mcp-registry/registry/mcp-registry.service.test.js.map +0 -1
  336. /package/dist/{modules/community-packages → utils}/strapi-utils.d.ts +0 -0
@@ -1,128 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.AgentJsonConfigPartialSchema = exports.AgentJsonConfigSchema = exports.NodeConfigSchema = void 0;
4
- exports.tryParseConfigJson = tryParseConfigJson;
5
- exports.formatZodErrors = formatZodErrors;
6
- exports.isNodeToolsEnabled = isNodeToolsEnabled;
7
- const zod_1 = require("zod");
8
- const integration_config_1 = require("./integration-config");
9
- const SemanticRecallSchema = zod_1.z.object({
10
- topK: zod_1.z.number().int().min(1).max(100),
11
- scope: zod_1.z.enum(['thread', 'resource']).optional(),
12
- messageRange: zod_1.z
13
- .object({
14
- before: zod_1.z.number().int().min(0),
15
- after: zod_1.z.number().int().min(0),
16
- })
17
- .optional(),
18
- embedder: zod_1.z.string().optional(),
19
- });
20
- const MemoryConfigSchema = zod_1.z.object({
21
- enabled: zod_1.z.boolean(),
22
- storage: zod_1.z.enum(['n8n', 'sqlite', 'postgres']),
23
- connection: zod_1.z.record(zod_1.z.unknown()).optional(),
24
- lastMessages: zod_1.z.number().int().min(1).max(200).optional(),
25
- semanticRecall: SemanticRecallSchema.optional(),
26
- });
27
- const ThinkingConfigSchema = zod_1.z.object({
28
- provider: zod_1.z.enum(['anthropic', 'openai']),
29
- budgetTokens: zod_1.z.number().int().optional(),
30
- reasoningEffort: zod_1.z.string().optional(),
31
- });
32
- const NodeToolCredentialSchema = zod_1.z.object({
33
- id: zod_1.z.string(),
34
- name: zod_1.z.string(),
35
- });
36
- exports.NodeConfigSchema = zod_1.z.object({
37
- nodeType: zod_1.z.string().min(1),
38
- nodeTypeVersion: zod_1.z.number(),
39
- nodeParameters: zod_1.z.record(zod_1.z.unknown()).optional().default({}),
40
- credentials: zod_1.z.record(NodeToolCredentialSchema).optional(),
41
- });
42
- const AgentJsonSkillConfigSchema = zod_1.z.object({
43
- type: zod_1.z.literal('skill'),
44
- id: zod_1.z
45
- .string()
46
- .min(1)
47
- .regex(/^[A-Za-z0-9_-]+$/),
48
- });
49
- const AgentJsonToolConfigSchema = zod_1.z.discriminatedUnion('type', [
50
- zod_1.z.object({
51
- type: zod_1.z.literal('custom'),
52
- id: zod_1.z
53
- .string()
54
- .min(1)
55
- .regex(/^[A-Za-z0-9_-]+$/),
56
- requireApproval: zod_1.z.boolean().optional(),
57
- }),
58
- zod_1.z
59
- .object({
60
- type: zod_1.z.literal('workflow'),
61
- workflow: zod_1.z.string().min(1),
62
- name: zod_1.z.string().optional(),
63
- description: zod_1.z.string().optional(),
64
- requireApproval: zod_1.z.boolean().optional(),
65
- allOutputs: zod_1.z
66
- .boolean()
67
- .optional()
68
- .describe('Whether to return all node outputs instead of just the last node'),
69
- })
70
- .strict(),
71
- zod_1.z
72
- .object({
73
- type: zod_1.z.literal('node'),
74
- name: zod_1.z.string().min(1),
75
- description: zod_1.z.string().optional(),
76
- node: exports.NodeConfigSchema,
77
- requireApproval: zod_1.z.boolean().optional(),
78
- })
79
- .strict(),
80
- ]);
81
- exports.AgentJsonConfigSchema = zod_1.z.object({
82
- name: zod_1.z.string().min(1).max(128),
83
- description: zod_1.z.string().max(512).optional(),
84
- model: zod_1.z
85
- .string()
86
- .min(1)
87
- .regex(/^[a-z0-9-]+\/(?:[a-z0-9._-]+\/)*[a-z0-9._-]+$/i, 'Model must be "provider/model-name" format (e.g. "anthropic/claude-sonnet-4-5" or "openrouter/amazon/nova-micro-v1")'),
88
- credential: zod_1.z.string().optional(),
89
- instructions: zod_1.z.string(),
90
- memory: MemoryConfigSchema.optional(),
91
- tools: zod_1.z.array(AgentJsonToolConfigSchema).optional(),
92
- skills: zod_1.z.array(AgentJsonSkillConfigSchema).optional(),
93
- providerTools: zod_1.z.record(zod_1.z.record(zod_1.z.unknown())).optional(),
94
- integrations: zod_1.z.array(integration_config_1.AgentIntegrationSchema).optional(),
95
- config: zod_1.z
96
- .object({
97
- thinking: ThinkingConfigSchema.optional(),
98
- toolCallConcurrency: zod_1.z.number().int().min(1).max(20).optional(),
99
- nodeTools: zod_1.z
100
- .object({
101
- enabled: zod_1.z.boolean(),
102
- })
103
- .optional(),
104
- })
105
- .optional(),
106
- });
107
- exports.AgentJsonConfigPartialSchema = exports.AgentJsonConfigSchema.partial();
108
- function tryParseConfigJson(raw) {
109
- try {
110
- return { ok: true, data: JSON.parse(raw) };
111
- }
112
- catch (e) {
113
- const msg = e instanceof SyntaxError ? e.message : String(e);
114
- return { ok: false, errors: [{ path: '(root)', message: `JSON parse error: ${msg}` }] };
115
- }
116
- }
117
- function formatZodErrors(error) {
118
- return error.issues.map((issue) => ({
119
- path: issue.path.join('.') || '(root)',
120
- message: issue.message,
121
- expected: 'expected' in issue ? String(issue.expected) : undefined,
122
- received: 'received' in issue ? String(issue.received) : undefined,
123
- }));
124
- }
125
- function isNodeToolsEnabled(config) {
126
- return config?.nodeTools?.enabled === true;
127
- }
128
- //# sourceMappingURL=agent-json-config.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"agent-json-config.js","sourceRoot":"","sources":["../../../../src/modules/agents/json-config/agent-json-config.ts"],"names":[],"mappings":"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"}
@@ -1,61 +0,0 @@
1
- import { z } from 'zod';
2
- export declare const AgentScheduleIntegrationSchema: z.ZodObject<{
3
- type: z.ZodLiteral<"schedule">;
4
- active: z.ZodBoolean;
5
- cronExpression: z.ZodEffects<z.ZodString, string, string>;
6
- wakeUpPrompt: z.ZodString;
7
- }, "strict", z.ZodTypeAny, {
8
- active: boolean;
9
- type: "schedule";
10
- cronExpression: string;
11
- wakeUpPrompt: string;
12
- }, {
13
- active: boolean;
14
- type: "schedule";
15
- cronExpression: string;
16
- wakeUpPrompt: string;
17
- }>;
18
- export declare const AgentCredentialIntegrationSchema: z.ZodObject<{
19
- type: z.ZodEffects<z.ZodString, string, string>;
20
- credentialId: z.ZodString;
21
- credentialName: z.ZodString;
22
- }, "strict", z.ZodTypeAny, {
23
- type: string;
24
- credentialName: string;
25
- credentialId: string;
26
- }, {
27
- type: string;
28
- credentialName: string;
29
- credentialId: string;
30
- }>;
31
- export declare const AgentIntegrationSchema: z.ZodUnion<[z.ZodObject<{
32
- type: z.ZodLiteral<"schedule">;
33
- active: z.ZodBoolean;
34
- cronExpression: z.ZodEffects<z.ZodString, string, string>;
35
- wakeUpPrompt: z.ZodString;
36
- }, "strict", z.ZodTypeAny, {
37
- active: boolean;
38
- type: "schedule";
39
- cronExpression: string;
40
- wakeUpPrompt: string;
41
- }, {
42
- active: boolean;
43
- type: "schedule";
44
- cronExpression: string;
45
- wakeUpPrompt: string;
46
- }>, z.ZodObject<{
47
- type: z.ZodEffects<z.ZodString, string, string>;
48
- credentialId: z.ZodString;
49
- credentialName: z.ZodString;
50
- }, "strict", z.ZodTypeAny, {
51
- type: string;
52
- credentialName: string;
53
- credentialId: string;
54
- }, {
55
- type: string;
56
- credentialName: string;
57
- credentialId: string;
58
- }>]>;
59
- export type AgentScheduleIntegrationConfig = z.infer<typeof AgentScheduleIntegrationSchema>;
60
- export type AgentCredentialIntegrationConfig = z.infer<typeof AgentCredentialIntegrationSchema>;
61
- export type AgentIntegrationConfig = z.infer<typeof AgentIntegrationSchema>;
@@ -1,33 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.AgentIntegrationSchema = exports.AgentCredentialIntegrationSchema = exports.AgentScheduleIntegrationSchema = void 0;
4
- const zod_1 = require("zod");
5
- const cron_validation_1 = require("../integrations/cron-validation");
6
- exports.AgentScheduleIntegrationSchema = zod_1.z
7
- .object({
8
- type: zod_1.z.literal('schedule'),
9
- active: zod_1.z.boolean(),
10
- cronExpression: zod_1.z
11
- .string()
12
- .min(1, 'cronExpression is required')
13
- .refine(cron_validation_1.isValidCronExpression, { message: 'Invalid cron expression' }),
14
- wakeUpPrompt: zod_1.z.string().min(1, 'wakeUpPrompt is required'),
15
- })
16
- .strict();
17
- exports.AgentCredentialIntegrationSchema = zod_1.z
18
- .object({
19
- type: zod_1.z
20
- .string()
21
- .min(1)
22
- .refine((value) => value !== 'schedule', {
23
- message: 'Type "schedule" is reserved for the schedule trigger',
24
- }),
25
- credentialId: zod_1.z.string().min(1),
26
- credentialName: zod_1.z.string().min(1),
27
- })
28
- .strict();
29
- exports.AgentIntegrationSchema = zod_1.z.union([
30
- exports.AgentScheduleIntegrationSchema,
31
- exports.AgentCredentialIntegrationSchema,
32
- ]);
33
- //# sourceMappingURL=integration-config.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"integration-config.js","sourceRoot":"","sources":["../../../../src/modules/agents/json-config/integration-config.ts"],"names":[],"mappings":";;;AAAA,6BAAwB;AAExB,qEAAwE;AAE3D,QAAA,8BAA8B,GAAG,OAAC;KAC7C,MAAM,CAAC;IACP,IAAI,EAAE,OAAC,CAAC,OAAO,CAAC,UAAU,CAAC;IAC3B,MAAM,EAAE,OAAC,CAAC,OAAO,EAAE;IACnB,cAAc,EAAE,OAAC;SACf,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,EAAE,4BAA4B,CAAC;SACpC,MAAM,CAAC,uCAAqB,EAAE,EAAE,OAAO,EAAE,yBAAyB,EAAE,CAAC;IACvE,YAAY,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,0BAA0B,CAAC;CAC3D,CAAC;KACD,MAAM,EAAE,CAAC;AAEE,QAAA,gCAAgC,GAAG,OAAC;KAC/C,MAAM,CAAC;IACP,IAAI,EAAE,OAAC;SACL,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,CAAC;SACN,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,KAAK,UAAU,EAAE;QACxC,OAAO,EAAE,sDAAsD;KAC/D,CAAC;IACH,YAAY,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC/B,cAAc,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;CACjC,CAAC;KACD,MAAM,EAAE,CAAC;AAEE,QAAA,sBAAsB,GAAG,OAAC,CAAC,KAAK,CAAC;IAC7C,sCAA8B;IAC9B,wCAAgC;CAChC,CAAC,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"strapi-utils.js","sourceRoot":"","sources":["../../../src/modules/community-packages/strapi-utils.ts"],"names":[],"mappings":";;;;;AA6CA,4CA4CC;AAED,wDAQC;AAnGD,wDAA6C;AAC7C,gCAAoC;AACpC,kDAA0B;AAC1B,uCAAyC;AAwCzC,MAAM,kBAAkB,GAAG,IAAI,CAAC;AAEzB,KAAK,UAAU,gBAAgB,CACrC,GAAW,EACX,MAA+B,EAC/B,OAAkC;IAElC,IAAI,UAAU,GAAQ,EAAE,CAAC;IACzB,IAAI,YAAY,GAAoB,EAAE,CAAC;IAEvC,GAAG,CAAC;QACH,IAAI,QAAQ,CAAC;QACb,IAAI,CAAC;YACJ,QAAQ,GAAG,MAAM,eAAK,CAAC,GAAG,CAAkB,GAAG,EAAE;gBAChD,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;gBAC/C,MAAM;gBACN,OAAO,EAAE,kBAAkB;aAC3B,CAAC,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,cAAS,CAAC,GAAG,CAAC,wBAAa,CAAC,CAAC,KAAK,CAAC,KAAK,EAAE;gBACzC,IAAI,EAAE,EAAE,MAAM,EAAE,gCAAgC,EAAE;aAClD,CAAC,CAAC;YACH,cAAS,CAAC,GAAG,CAAC,uBAAM,CAAC,CAAC,KAAK,CAC1B,yCAA0C,KAAe,CAAC,OAAO,EAAE,CACnE,CAAC;YACF,IAAI,OAAO,EAAE,YAAY;gBAAE,MAAM,KAAK,CAAC;YAEvC,MAAM;QACP,CAAC;QAED,YAAY,GAAG,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;QAE1F,IAAI,CAAC,YAAY,EAAE,MAAM;YAAE,MAAM;QAEjC,UAAU,GAAG,UAAU,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QAE7C,IAAI,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;YACtC,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC;YAE3D,IAAI,IAAI,KAAK,SAAS;gBAAE,MAAM;QAC/B,CAAC;QAED,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;IAC1B,CAAC,QAAQ,YAAY,EAAE,MAAM,EAAE;IAE/B,OAAO,UAAU,CAAC;AACnB,CAAC;AAED,SAAgB,sBAAsB,CAAC,GAAa;IACnD,OAAO;QACN,OAAO,EAAE;YACR,EAAE,EAAE;gBACH,GAAG,EAAE,GAAG;aACR;SACD;KACD,CAAC;AACH,CAAC"}
@@ -1,244 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const jest_mock_extended_1 = require("jest-mock-extended");
4
- const n8n_core_1 = require("n8n-core");
5
- const logger = (0, jest_mock_extended_1.mock)();
6
- const mcp_registry_node_loader_1 = require("./mcp-registry-node-loader");
7
- const node_description_transform_1 = require("./node-description-transform");
8
- const mock_servers_1 = require("./registry/mock-servers");
9
- const baseDescription = {
10
- displayName: 'MCP Registry Client (internal)',
11
- name: 'mcpRegistryClientTool',
12
- hidden: true,
13
- group: ['output'],
14
- version: 1,
15
- description: 'Runtime backing for MCP registry-derived nodes',
16
- defaults: { name: 'MCP Registry Client' },
17
- codex: {
18
- categories: ['AI'],
19
- subcategories: { AI: ['Model Context Protocol'] },
20
- alias: ['MCP', 'Model Context Protocol'],
21
- },
22
- inputs: [],
23
- outputs: [],
24
- credentials: [{ name: 'mcpOAuth2Api', required: true }],
25
- properties: [
26
- { displayName: 'Endpoint URL', name: 'endpointUrl', type: 'hidden', default: '' },
27
- {
28
- displayName: 'Server Transport',
29
- name: 'serverTransport',
30
- type: 'hidden',
31
- default: 'httpStreamable',
32
- },
33
- ],
34
- };
35
- function createBaseNodeClass() {
36
- const baseInstance = {
37
- description: baseDescription,
38
- methods: {
39
- loadOptions: {
40
- getTools: jest.fn(),
41
- },
42
- },
43
- };
44
- return baseInstance;
45
- }
46
- function createLoadNodesAndCredentials(options) {
47
- const baseNode = createBaseNodeClass();
48
- const sourcePath = '/path/to/McpRegistryClientTool.node.js';
49
- const langchainLoader = (0, jest_mock_extended_1.mock)();
50
- langchainLoader.getNode.mockImplementation((nodeType) => {
51
- if (options?.withBaseNode !== false && nodeType === node_description_transform_1.MCP_REGISTRY_BASE_NODE_NAME) {
52
- return { type: baseNode, sourcePath };
53
- }
54
- throw new Error('not found');
55
- });
56
- const loaders = options?.withLangchainLoader === false ? {} : { [node_description_transform_1.LANGCHAIN_PACKAGE_NAME]: langchainLoader };
57
- const loadNodesAndCredentials = (0, jest_mock_extended_1.mock)({
58
- loaders,
59
- });
60
- return { loadNodesAndCredentials, baseNode, sourcePath };
61
- }
62
- function createServiceWithServers(servers) {
63
- const service = (0, jest_mock_extended_1.mock)();
64
- service.getAll.mockReturnValue(servers);
65
- return service;
66
- }
67
- describe('McpRegistryNodeLoader', () => {
68
- describe('packageName', () => {
69
- it('matches MCP_REGISTRY_PACKAGE_NAME', () => {
70
- const { loadNodesAndCredentials } = createLoadNodesAndCredentials();
71
- const service = createServiceWithServers([]);
72
- const loader = new mcp_registry_node_loader_1.McpRegistryNodeLoader(service, loadNodesAndCredentials, logger);
73
- expect(loader.packageName).toBe(node_description_transform_1.MCP_REGISTRY_PACKAGE_NAME);
74
- });
75
- });
76
- describe('loadAll', () => {
77
- it('populates `types`, `known`, registers synthetic nodes and credentials for each supported server', async () => {
78
- const { loadNodesAndCredentials, sourcePath } = createLoadNodesAndCredentials();
79
- const service = createServiceWithServers([mock_servers_1.notionMockServer]);
80
- const loader = new mcp_registry_node_loader_1.McpRegistryNodeLoader(service, loadNodesAndCredentials, logger);
81
- await loader.loadAll();
82
- expect(loader.types.nodes).toHaveLength(1);
83
- expect(loader.types.nodes[0]).toMatchObject({
84
- name: 'notion',
85
- displayName: 'Notion MCP',
86
- });
87
- expect(loader.types.credentials).toHaveLength(1);
88
- expect(loader.types.credentials[0]).toMatchObject({
89
- name: 'notionMcpOAuth2Api',
90
- displayName: 'Notion MCP OAuth2',
91
- });
92
- const loadedNode = loader.getNode('notion');
93
- const loadedCredential = loader.getCredential('notionMcpOAuth2Api');
94
- expect(loadedNode).toBeDefined();
95
- expect(loadedNode.sourcePath).toBe(sourcePath);
96
- expect(loadedCredential).toBeDefined();
97
- expect(loadedCredential.sourcePath).toBe('');
98
- expect(loader.known.nodes.notion).toEqual({
99
- className: 'McpRegistryClientTool',
100
- sourcePath,
101
- });
102
- expect(loader.known.credentials.notionMcpOAuth2Api).toEqual({
103
- className: 'McpRegistryApi',
104
- sourcePath: '',
105
- extends: ['mcpOAuth2Api'],
106
- supportedNodes: ['notion'],
107
- });
108
- });
109
- it('inherits prototype methods from the base node class on synthetic nodes', async () => {
110
- const { loadNodesAndCredentials, baseNode } = createLoadNodesAndCredentials();
111
- const service = createServiceWithServers([mock_servers_1.notionMockServer]);
112
- const loader = new mcp_registry_node_loader_1.McpRegistryNodeLoader(service, loadNodesAndCredentials, logger);
113
- await loader.loadAll();
114
- const synthetic = loader.getNode('notion').type;
115
- expect(synthetic.methods).toBe(baseNode.methods);
116
- expect(synthetic.description.name).toBe('notion');
117
- expect(synthetic.description.displayName).toBe('Notion MCP');
118
- });
119
- it('skips servers whose remote selection returns null', async () => {
120
- const unsupportedServer = {
121
- ...mock_servers_1.notionMockServer,
122
- slug: 'no-remotes',
123
- title: 'No Remotes',
124
- remotes: [],
125
- };
126
- const { loadNodesAndCredentials } = createLoadNodesAndCredentials();
127
- const service = createServiceWithServers([mock_servers_1.notionMockServer, unsupportedServer]);
128
- const loader = new mcp_registry_node_loader_1.McpRegistryNodeLoader(service, loadNodesAndCredentials, logger);
129
- await loader.loadAll();
130
- expect(loader.types.nodes).toHaveLength(1);
131
- expect(loader.types.nodes[0].name).toBe('notion');
132
- expect(loader.types.credentials).toHaveLength(1);
133
- expect(loader.types.credentials[0].name).toBe('notionMcpOAuth2Api');
134
- expect(() => loader.getNode('noRemotes')).toThrow(n8n_core_1.UnrecognizedNodeTypeError);
135
- expect(() => loader.getCredential('noRemotesMcpOAuth2Api')).toThrow(n8n_core_1.UnrecognizedCredentialTypeError);
136
- });
137
- it('no-ops when the langchain loader is missing', async () => {
138
- const { loadNodesAndCredentials } = createLoadNodesAndCredentials({
139
- withLangchainLoader: false,
140
- });
141
- const service = createServiceWithServers([mock_servers_1.notionMockServer]);
142
- const loader = new mcp_registry_node_loader_1.McpRegistryNodeLoader(service, loadNodesAndCredentials, logger);
143
- await loader.loadAll();
144
- expect(loader.types.nodes).toHaveLength(0);
145
- expect(loader.types.credentials).toHaveLength(0);
146
- });
147
- it('no-ops when the base node is not registered on the langchain loader', async () => {
148
- const { loadNodesAndCredentials } = createLoadNodesAndCredentials({
149
- withBaseNode: false,
150
- });
151
- const service = createServiceWithServers([mock_servers_1.notionMockServer]);
152
- const loader = new mcp_registry_node_loader_1.McpRegistryNodeLoader(service, loadNodesAndCredentials, logger);
153
- await loader.loadAll();
154
- expect(loader.types.nodes).toHaveLength(0);
155
- expect(loader.types.credentials).toHaveLength(0);
156
- });
157
- it('resets prior state before loading', async () => {
158
- const { loadNodesAndCredentials } = createLoadNodesAndCredentials();
159
- const service = createServiceWithServers([mock_servers_1.notionMockServer]);
160
- const loader = new mcp_registry_node_loader_1.McpRegistryNodeLoader(service, loadNodesAndCredentials, logger);
161
- await loader.loadAll();
162
- await loader.loadAll();
163
- expect(loader.types.nodes).toHaveLength(1);
164
- expect(loader.types.credentials).toHaveLength(1);
165
- });
166
- it('requests deprecated servers from the registry so existing workflows keep loading', async () => {
167
- const { loadNodesAndCredentials } = createLoadNodesAndCredentials();
168
- const service = createServiceWithServers([mock_servers_1.notionMockServer]);
169
- const loader = new mcp_registry_node_loader_1.McpRegistryNodeLoader(service, loadNodesAndCredentials, logger);
170
- await loader.loadAll();
171
- expect(service.getAll).toHaveBeenCalledWith({ includeDeprecated: true });
172
- });
173
- });
174
- describe('getNode', () => {
175
- it('returns the synthetic LoadedClass for a known type', async () => {
176
- const { loadNodesAndCredentials } = createLoadNodesAndCredentials();
177
- const service = createServiceWithServers([mock_servers_1.notionMockServer]);
178
- const loader = new mcp_registry_node_loader_1.McpRegistryNodeLoader(service, loadNodesAndCredentials, logger);
179
- await loader.loadAll();
180
- const result = loader.getNode('notion');
181
- expect(result.type).toBeDefined();
182
- expect(result.type.description.name).toBe('notion');
183
- });
184
- it('throws UnrecognizedNodeTypeError for an unknown type', () => {
185
- const { loadNodesAndCredentials } = createLoadNodesAndCredentials();
186
- const service = createServiceWithServers([]);
187
- const loader = new mcp_registry_node_loader_1.McpRegistryNodeLoader(service, loadNodesAndCredentials, logger);
188
- expect(() => loader.getNode('unknown')).toThrow(n8n_core_1.UnrecognizedNodeTypeError);
189
- });
190
- });
191
- describe('getCredential', () => {
192
- it('returns the credential for a known credential type', async () => {
193
- const { loadNodesAndCredentials } = createLoadNodesAndCredentials();
194
- const service = createServiceWithServers([mock_servers_1.notionMockServer]);
195
- const loader = new mcp_registry_node_loader_1.McpRegistryNodeLoader(service, loadNodesAndCredentials, logger);
196
- await loader.loadAll();
197
- const result = loader.getCredential('notionMcpOAuth2Api');
198
- expect(result.type).toBeDefined();
199
- expect(result.type.name).toBe('notionMcpOAuth2Api');
200
- });
201
- it('throws UnrecognizedCredentialTypeError for an unknown credential type', () => {
202
- const { loadNodesAndCredentials } = createLoadNodesAndCredentials();
203
- const service = createServiceWithServers([]);
204
- const loader = new mcp_registry_node_loader_1.McpRegistryNodeLoader(service, loadNodesAndCredentials, logger);
205
- expect(() => loader.getCredential('unknown')).toThrow(n8n_core_1.UnrecognizedCredentialTypeError);
206
- });
207
- });
208
- describe('state management', () => {
209
- it('reset clears known, types, and registered node types', async () => {
210
- const { loadNodesAndCredentials } = createLoadNodesAndCredentials();
211
- const service = createServiceWithServers([mock_servers_1.notionMockServer]);
212
- const loader = new mcp_registry_node_loader_1.McpRegistryNodeLoader(service, loadNodesAndCredentials, logger);
213
- await loader.loadAll();
214
- loader.reset();
215
- expect(loader.types.nodes).toEqual([]);
216
- expect(loader.types.credentials).toEqual([]);
217
- expect(loader.known.nodes).toEqual({});
218
- expect(loader.known.credentials).toEqual({});
219
- expect(() => loader.getNode('notion')).toThrow(n8n_core_1.UnrecognizedNodeTypeError);
220
- expect(() => loader.getCredential('notionMcpOAuth2Api')).toThrow(n8n_core_1.UnrecognizedCredentialTypeError);
221
- });
222
- it('releaseTypes only clears types', async () => {
223
- const { loadNodesAndCredentials } = createLoadNodesAndCredentials();
224
- const service = createServiceWithServers([mock_servers_1.notionMockServer]);
225
- const loader = new mcp_registry_node_loader_1.McpRegistryNodeLoader(service, loadNodesAndCredentials, logger);
226
- await loader.loadAll();
227
- loader.releaseTypes();
228
- expect(loader.types.nodes).toEqual([]);
229
- expect(loader.types.credentials).toEqual([]);
230
- expect(loader.getNode('notion')).toBeDefined();
231
- expect(loader.getCredential('notionMcpOAuth2Api')).toBeDefined();
232
- });
233
- it('ensureTypesLoaded calls loadAll only when types are empty', async () => {
234
- const { loadNodesAndCredentials } = createLoadNodesAndCredentials();
235
- const service = createServiceWithServers([mock_servers_1.notionMockServer]);
236
- const loader = new mcp_registry_node_loader_1.McpRegistryNodeLoader(service, loadNodesAndCredentials, logger);
237
- await loader.ensureTypesLoaded();
238
- expect(service.getAll).toHaveBeenCalledTimes(1);
239
- await loader.ensureTypesLoaded();
240
- expect(service.getAll).toHaveBeenCalledTimes(1);
241
- });
242
- });
243
- });
244
- //# sourceMappingURL=mcp-registry-node-loader.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mcp-registry-node-loader.test.js","sourceRoot":"","sources":["../../../src/modules/mcp-registry/mcp-registry-node-loader.test.ts"],"names":[],"mappings":"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"}