n8n 2.20.7 → 2.21.1

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 (580) hide show
  1. package/dist/abstract-server.d.ts +1 -0
  2. package/dist/abstract-server.js +10 -3
  3. package/dist/abstract-server.js.map +1 -1
  4. package/dist/agent-library-bundle.js +5989 -0
  5. package/dist/auth/auth.service.js +3 -3
  6. package/dist/auth/auth.service.js.map +1 -1
  7. package/dist/build.tsbuildinfo +1 -1
  8. package/dist/commands/execute-batch.d.ts +2 -2
  9. package/dist/commands/export/workflow.d.ts +2 -2
  10. package/dist/commands/import/workflow.d.ts +3 -0
  11. package/dist/commands/import/workflow.js +15 -1
  12. package/dist/commands/import/workflow.js.map +1 -1
  13. package/dist/commands/start.js +2 -0
  14. package/dist/commands/start.js.map +1 -1
  15. package/dist/constants.d.ts +1 -0
  16. package/dist/constants.js +6 -1
  17. package/dist/constants.js.map +1 -1
  18. package/dist/controller.registry.js +6 -0
  19. package/dist/controller.registry.js.map +1 -1
  20. package/dist/controllers/auth.controller.js +7 -2
  21. package/dist/controllers/auth.controller.js.map +1 -1
  22. package/dist/controllers/me.controller.d.ts +1 -0
  23. package/dist/controllers/me.controller.js +4 -1
  24. package/dist/controllers/me.controller.js.map +1 -1
  25. package/dist/controllers/users.controller.d.ts +2 -2
  26. package/dist/credentials/credentials.service.d.ts +1 -0
  27. package/dist/credentials/credentials.service.js +11 -4
  28. package/dist/credentials/credentials.service.js.map +1 -1
  29. package/dist/evaluation.ee/evaluation-api-error.d.ts +7 -0
  30. package/dist/evaluation.ee/evaluation-api-error.js +16 -0
  31. package/dist/evaluation.ee/evaluation-api-error.js.map +1 -0
  32. package/dist/evaluation.ee/evaluation-config-validator.d.ts +30 -0
  33. package/dist/evaluation.ee/evaluation-config-validator.js +236 -0
  34. package/dist/evaluation.ee/evaluation-config-validator.js.map +1 -0
  35. package/dist/evaluation.ee/evaluation-config.controller.d.ts +24 -0
  36. package/dist/evaluation.ee/evaluation-config.controller.js +94 -0
  37. package/dist/evaluation.ee/evaluation-config.controller.js.map +1 -0
  38. package/dist/evaluation.ee/evaluation-config.service.d.ts +18 -0
  39. package/dist/evaluation.ee/evaluation-config.service.js +74 -0
  40. package/dist/evaluation.ee/evaluation-config.service.js.map +1 -0
  41. package/dist/evaluation.ee/llm-judge-provider-registry.d.ts +13 -0
  42. package/dist/evaluation.ee/llm-judge-provider-registry.js +122 -0
  43. package/dist/evaluation.ee/llm-judge-provider-registry.js.map +1 -0
  44. package/dist/evaluation.ee/test-runner/test-runner.service.ee.d.ts +5 -0
  45. package/dist/evaluation.ee/test-runner/test-runner.service.ee.js +32 -10
  46. package/dist/evaluation.ee/test-runner/test-runner.service.ee.js.map +1 -1
  47. package/dist/evaluation.ee/test-runner/workflow-compiler.service.d.ts +22 -0
  48. package/dist/evaluation.ee/test-runner/workflow-compiler.service.js +285 -0
  49. package/dist/evaluation.ee/test-runner/workflow-compiler.service.js.map +1 -0
  50. package/dist/evaluation.ee/test-runs.controller.ee.d.ts +3 -0
  51. package/dist/evaluation.ee/test-runs.controller.ee.js +26 -9
  52. package/dist/evaluation.ee/test-runs.controller.ee.js.map +1 -1
  53. package/dist/evaluation.ee/test-runs.types.ee.d.ts +3 -0
  54. package/dist/eventbus/message-event-bus/message-event-bus.d.ts +2 -0
  55. package/dist/eventbus/message-event-bus/message-event-bus.js +54 -46
  56. package/dist/eventbus/message-event-bus/message-event-bus.js.map +1 -1
  57. package/dist/events/maps/relay.event-map.d.ts +3 -0
  58. package/dist/instance-settings-loader/instance-settings-loader.service.d.ts +4 -2
  59. package/dist/instance-settings-loader/instance-settings-loader.service.js +7 -3
  60. package/dist/instance-settings-loader/instance-settings-loader.service.js.map +1 -1
  61. package/dist/instance-settings-loader/loaders/community-packages.instance-settings-loader.d.ts +20 -0
  62. package/dist/instance-settings-loader/loaders/community-packages.instance-settings-loader.js +235 -0
  63. package/dist/instance-settings-loader/loaders/community-packages.instance-settings-loader.js.map +1 -0
  64. package/dist/instance-settings-loader/loaders/{sso.instance-settings-loader.d.ts → sso/oidc.instance-settings-loader.d.ts} +4 -10
  65. package/dist/instance-settings-loader/loaders/sso/oidc.instance-settings-loader.js +98 -0
  66. package/dist/instance-settings-loader/loaders/sso/oidc.instance-settings-loader.js.map +1 -0
  67. package/dist/instance-settings-loader/loaders/sso/provisioning.instance-settings-loader.d.ts +10 -0
  68. package/dist/instance-settings-loader/loaders/sso/provisioning.instance-settings-loader.js +65 -0
  69. package/dist/instance-settings-loader/loaders/sso/provisioning.instance-settings-loader.js.map +1 -0
  70. package/dist/instance-settings-loader/loaders/sso/saml.instance-settings-loader.d.ts +12 -0
  71. package/dist/instance-settings-loader/loaders/sso/saml.instance-settings-loader.js +75 -0
  72. package/dist/instance-settings-loader/loaders/sso/saml.instance-settings-loader.js.map +1 -0
  73. package/dist/instance-settings-loader/loaders/sso/sso.instance-settings-loader.d.ts +15 -0
  74. package/dist/instance-settings-loader/loaders/sso/sso.instance-settings-loader.js +75 -0
  75. package/dist/instance-settings-loader/loaders/sso/sso.instance-settings-loader.js.map +1 -0
  76. package/dist/load-nodes-and-credentials.d.ts +3 -3
  77. package/dist/load-nodes-and-credentials.js +25 -17
  78. package/dist/load-nodes-and-credentials.js.map +1 -1
  79. package/dist/modules/agents/adapters/agents-credential-provider.d.ts +12 -0
  80. package/dist/modules/agents/adapters/agents-credential-provider.js +63 -0
  81. package/dist/modules/agents/adapters/agents-credential-provider.js.map +1 -0
  82. package/dist/modules/agents/agent-execution.service.d.ts +42 -0
  83. package/dist/modules/agents/agent-execution.service.js +153 -0
  84. package/dist/modules/agents/agent-execution.service.js.map +1 -0
  85. package/dist/modules/agents/agent-message-mapper.d.ts +5 -0
  86. package/dist/modules/agents/agent-message-mapper.js +43 -0
  87. package/dist/modules/agents/agent-message-mapper.js.map +1 -0
  88. package/dist/modules/agents/agent-skills.service.d.ts +24 -0
  89. package/dist/modules/agents/agent-skills.service.js +166 -0
  90. package/dist/modules/agents/agent-skills.service.js.map +1 -0
  91. package/dist/modules/agents/agent-sse-stream.d.ts +15 -0
  92. package/dist/modules/agents/agent-sse-stream.js +194 -0
  93. package/dist/modules/agents/agent-sse-stream.js.map +1 -0
  94. package/dist/modules/agents/agents-tools.service.d.ts +18 -0
  95. package/dist/modules/agents/agents-tools.service.js +193 -0
  96. package/dist/modules/agents/agents-tools.service.js.map +1 -0
  97. package/dist/modules/agents/agents.controller.d.ts +260 -0
  98. package/dist/modules/agents/agents.controller.js +818 -0
  99. package/dist/modules/agents/agents.controller.js.map +1 -0
  100. package/dist/modules/agents/agents.module.d.ts +12 -0
  101. package/dist/modules/agents/agents.module.js +136 -0
  102. package/dist/modules/agents/agents.module.js.map +1 -0
  103. package/dist/modules/agents/agents.service.d.ts +151 -0
  104. package/dist/modules/agents/agents.service.js +1134 -0
  105. package/dist/modules/agents/agents.service.js.map +1 -0
  106. package/dist/modules/agents/builder/agents-builder-prompts.d.ts +27 -0
  107. package/dist/modules/agents/builder/agents-builder-prompts.js +584 -0
  108. package/dist/modules/agents/builder/agents-builder-prompts.js.map +1 -0
  109. package/dist/modules/agents/builder/agents-builder-settings.controller.d.ts +11 -0
  110. package/dist/modules/agents/builder/agents-builder-settings.controller.js +61 -0
  111. package/dist/modules/agents/builder/agents-builder-settings.controller.js.map +1 -0
  112. package/dist/modules/agents/builder/agents-builder-settings.service.d.ts +31 -0
  113. package/dist/modules/agents/builder/agents-builder-settings.service.js +199 -0
  114. package/dist/modules/agents/builder/agents-builder-settings.service.js.map +1 -0
  115. package/dist/modules/agents/builder/agents-builder-tools.service.d.ts +31 -0
  116. package/dist/modules/agents/builder/agents-builder-tools.service.js +420 -0
  117. package/dist/modules/agents/builder/agents-builder-tools.service.js.map +1 -0
  118. package/dist/modules/agents/builder/agents-builder.service.d.ts +26 -0
  119. package/dist/modules/agents/builder/agents-builder.service.js +164 -0
  120. package/dist/modules/agents/builder/agents-builder.service.js.map +1 -0
  121. package/dist/modules/agents/builder/builder-model-lookup.service.d.ts +17 -0
  122. package/dist/modules/agents/builder/builder-model-lookup.service.js +67 -0
  123. package/dist/modules/agents/builder/builder-model-lookup.service.js.map +1 -0
  124. package/dist/modules/agents/builder/builder-tool-names.d.ts +14 -0
  125. package/dist/modules/agents/builder/builder-tool-names.js +17 -0
  126. package/dist/modules/agents/builder/builder-tool-names.js.map +1 -0
  127. package/dist/modules/agents/builder/errors.d.ts +6 -0
  128. package/dist/modules/agents/builder/errors.js +13 -0
  129. package/dist/modules/agents/builder/errors.js.map +1 -0
  130. package/dist/modules/agents/builder/interactive/ask-credential.tool.d.ts +5 -0
  131. package/dist/modules/agents/builder/interactive/ask-credential.tool.js +29 -0
  132. package/dist/modules/agents/builder/interactive/ask-credential.tool.js.map +1 -0
  133. package/dist/modules/agents/builder/interactive/ask-llm.tool.d.ts +2 -0
  134. package/dist/modules/agents/builder/interactive/ask-llm.tool.js +27 -0
  135. package/dist/modules/agents/builder/interactive/ask-llm.tool.js.map +1 -0
  136. package/dist/modules/agents/builder/interactive/ask-question.tool.d.ts +2 -0
  137. package/dist/modules/agents/builder/interactive/ask-question.tool.js +26 -0
  138. package/dist/modules/agents/builder/interactive/ask-question.tool.js.map +1 -0
  139. package/dist/modules/agents/builder/interactive/index.d.ts +4 -0
  140. package/dist/modules/agents/builder/interactive/index.js +12 -0
  141. package/dist/modules/agents/builder/interactive/index.js.map +1 -0
  142. package/dist/modules/agents/builder/interactive/llm-provider-defaults.d.ts +17 -0
  143. package/dist/modules/agents/builder/interactive/llm-provider-defaults.js +60 -0
  144. package/dist/modules/agents/builder/interactive/llm-provider-defaults.js.map +1 -0
  145. package/dist/modules/agents/builder/interactive/resolve-llm.tool.d.ts +13 -0
  146. package/dist/modules/agents/builder/interactive/resolve-llm.tool.js +136 -0
  147. package/dist/modules/agents/builder/interactive/resolve-llm.tool.js.map +1 -0
  148. package/dist/modules/agents/entities/agent-checkpoint.entity.d.ts +9 -0
  149. package/dist/modules/agents/entities/agent-checkpoint.entity.js +43 -0
  150. package/dist/modules/agents/entities/agent-checkpoint.entity.js.map +1 -0
  151. package/dist/modules/agents/entities/agent-execution-thread.entity.d.ts +16 -0
  152. package/dist/modules/agents/entities/agent-execution-thread.entity.js +74 -0
  153. package/dist/modules/agents/entities/agent-execution-thread.entity.js.map +1 -0
  154. package/dist/modules/agents/entities/agent-execution.entity.d.ts +26 -0
  155. package/dist/modules/agents/entities/agent-execution.entity.js +100 -0
  156. package/dist/modules/agents/entities/agent-execution.entity.js.map +1 -0
  157. package/dist/modules/agents/entities/agent-message.entity.d.ts +10 -0
  158. package/dist/modules/agents/entities/agent-message.entity.js +47 -0
  159. package/dist/modules/agents/entities/agent-message.entity.js.map +1 -0
  160. package/dist/modules/agents/entities/agent-observation-cursor.entity.d.ts +8 -0
  161. package/dist/modules/agents/entities/agent-observation-cursor.entity.js +37 -0
  162. package/dist/modules/agents/entities/agent-observation-cursor.entity.js.map +1 -0
  163. package/dist/modules/agents/entities/agent-observation-lock.entity.d.ts +8 -0
  164. package/dist/modules/agents/entities/agent-observation-lock.entity.js +37 -0
  165. package/dist/modules/agents/entities/agent-observation-lock.entity.js.map +1 -0
  166. package/dist/modules/agents/entities/agent-observation.entity.d.ts +10 -0
  167. package/dist/modules/agents/entities/agent-observation.entity.js +47 -0
  168. package/dist/modules/agents/entities/agent-observation.entity.js.map +1 -0
  169. package/dist/modules/agents/entities/agent-published-version.entity.d.ts +22 -0
  170. package/dist/modules/agents/entities/agent-published-version.entity.js +67 -0
  171. package/dist/modules/agents/entities/agent-published-version.entity.js.map +1 -0
  172. package/dist/modules/agents/entities/agent-resource.entity.d.ts +5 -0
  173. package/dist/modules/agents/entities/agent-resource.entity.js +29 -0
  174. package/dist/modules/agents/entities/agent-resource.entity.js.map +1 -0
  175. package/dist/modules/agents/entities/agent-thread.entity.d.ts +6 -0
  176. package/dist/modules/agents/entities/agent-thread.entity.js +33 -0
  177. package/dist/modules/agents/entities/agent-thread.entity.js.map +1 -0
  178. package/dist/modules/agents/entities/agent.entity.d.ts +24 -0
  179. package/dist/modules/agents/entities/agent.entity.js +74 -0
  180. package/dist/modules/agents/entities/agent.entity.js.map +1 -0
  181. package/dist/modules/agents/execution-recorder.d.ts +82 -0
  182. package/dist/modules/agents/execution-recorder.js +272 -0
  183. package/dist/modules/agents/execution-recorder.js.map +1 -0
  184. package/dist/modules/agents/integrations/agent-chat-bridge.d.ts +62 -0
  185. package/dist/modules/agents/integrations/agent-chat-bridge.js +540 -0
  186. package/dist/modules/agents/integrations/agent-chat-bridge.js.map +1 -0
  187. package/dist/modules/agents/integrations/agent-chat-integration.d.ts +39 -0
  188. package/dist/modules/agents/integrations/agent-chat-integration.js +45 -0
  189. package/dist/modules/agents/integrations/agent-chat-integration.js.map +1 -0
  190. package/dist/modules/agents/integrations/agent-schedule.service.d.ts +30 -0
  191. package/dist/modules/agents/integrations/agent-schedule.service.js +327 -0
  192. package/dist/modules/agents/integrations/agent-schedule.service.js.map +1 -0
  193. package/dist/modules/agents/integrations/callback-store.d.ts +11 -0
  194. package/dist/modules/agents/integrations/callback-store.js +30 -0
  195. package/dist/modules/agents/integrations/callback-store.js.map +1 -0
  196. package/dist/modules/agents/integrations/chat-integration.service.d.ts +58 -0
  197. package/dist/modules/agents/integrations/chat-integration.service.js +397 -0
  198. package/dist/modules/agents/integrations/chat-integration.service.js.map +1 -0
  199. package/dist/modules/agents/integrations/component-mapper.d.ts +57 -0
  200. package/dist/modules/agents/integrations/component-mapper.js +223 -0
  201. package/dist/modules/agents/integrations/component-mapper.js.map +1 -0
  202. package/dist/modules/agents/integrations/cron-validation.d.ts +1 -0
  203. package/dist/modules/agents/integrations/cron-validation.js +8 -0
  204. package/dist/modules/agents/integrations/cron-validation.js.map +1 -0
  205. package/dist/modules/agents/integrations/esm-loader.d.ts +5 -0
  206. package/dist/modules/agents/integrations/esm-loader.js +24 -0
  207. package/dist/modules/agents/integrations/esm-loader.js.map +1 -0
  208. package/dist/modules/agents/integrations/integrations-sync.d.ts +4 -0
  209. package/dist/modules/agents/integrations/integrations-sync.js +78 -0
  210. package/dist/modules/agents/integrations/integrations-sync.js.map +1 -0
  211. package/dist/modules/agents/integrations/n8n-checkpoint-storage.d.ts +36 -0
  212. package/dist/modules/agents/integrations/n8n-checkpoint-storage.js +148 -0
  213. package/dist/modules/agents/integrations/n8n-checkpoint-storage.js.map +1 -0
  214. package/dist/modules/agents/integrations/n8n-memory.d.ts +76 -0
  215. package/dist/modules/agents/integrations/n8n-memory.js +383 -0
  216. package/dist/modules/agents/integrations/n8n-memory.js.map +1 -0
  217. package/dist/modules/agents/integrations/platforms/linear-integration.d.ts +14 -0
  218. package/dist/modules/agents/integrations/platforms/linear-integration.js +83 -0
  219. package/dist/modules/agents/integrations/platforms/linear-integration.js.map +1 -0
  220. package/dist/modules/agents/integrations/platforms/slack-integration.d.ts +12 -0
  221. package/dist/modules/agents/integrations/platforms/slack-integration.js +81 -0
  222. package/dist/modules/agents/integrations/platforms/slack-integration.js.map +1 -0
  223. package/dist/modules/agents/integrations/platforms/telegram-integration.d.ts +30 -0
  224. package/dist/modules/agents/integrations/platforms/telegram-integration.js +122 -0
  225. package/dist/modules/agents/integrations/platforms/telegram-integration.js.map +1 -0
  226. package/dist/modules/agents/integrations/rich-interaction-tool.d.ts +47 -0
  227. package/dist/modules/agents/integrations/rich-interaction-tool.js +109 -0
  228. package/dist/modules/agents/integrations/rich-interaction-tool.js.map +1 -0
  229. package/dist/modules/agents/integrations/types.d.ts +8 -0
  230. package/dist/modules/agents/integrations/types.js +12 -0
  231. package/dist/modules/agents/integrations/types.js.map +1 -0
  232. package/dist/modules/agents/json-config/agent-config-composition.d.ts +9 -0
  233. package/dist/modules/agents/json-config/agent-config-composition.js +27 -0
  234. package/dist/modules/agents/json-config/agent-config-composition.js.map +1 -0
  235. package/dist/modules/agents/json-config/agent-json-config.d.ts +1022 -0
  236. package/dist/modules/agents/json-config/agent-json-config.js +128 -0
  237. package/dist/modules/agents/json-config/agent-json-config.js.map +1 -0
  238. package/dist/modules/agents/json-config/credential-field-mapping.d.ts +4 -0
  239. package/dist/modules/agents/json-config/credential-field-mapping.js +41 -0
  240. package/dist/modules/agents/json-config/credential-field-mapping.js.map +1 -0
  241. package/dist/modules/agents/json-config/from-json-config.d.ts +18 -0
  242. package/dist/modules/agents/json-config/from-json-config.js +209 -0
  243. package/dist/modules/agents/json-config/from-json-config.js.map +1 -0
  244. package/dist/modules/agents/json-config/integration-config.d.ts +61 -0
  245. package/dist/modules/agents/json-config/integration-config.js +33 -0
  246. package/dist/modules/agents/json-config/integration-config.js.map +1 -0
  247. package/dist/modules/agents/json-config/provider-tool-aliases.d.ts +1 -0
  248. package/dist/modules/agents/json-config/provider-tool-aliases.js +15 -0
  249. package/dist/modules/agents/json-config/provider-tool-aliases.js.map +1 -0
  250. package/dist/modules/agents/json-config/schema-text-serializer.d.ts +2 -0
  251. package/dist/modules/agents/json-config/schema-text-serializer.js +205 -0
  252. package/dist/modules/agents/json-config/schema-text-serializer.js.map +1 -0
  253. package/dist/modules/agents/repositories/agent-checkpoint.repository.d.ts +6 -0
  254. package/dist/modules/agents/repositories/agent-checkpoint.repository.js +35 -0
  255. package/dist/modules/agents/repositories/agent-checkpoint.repository.js.map +1 -0
  256. package/dist/modules/agents/repositories/agent-execution-thread.repository.d.ts +18 -0
  257. package/dist/modules/agents/repositories/agent-execution-thread.repository.js +120 -0
  258. package/dist/modules/agents/repositories/agent-execution-thread.repository.js.map +1 -0
  259. package/dist/modules/agents/repositories/agent-execution.repository.d.ts +10 -0
  260. package/dist/modules/agents/repositories/agent-execution.repository.js +59 -0
  261. package/dist/modules/agents/repositories/agent-execution.repository.js.map +1 -0
  262. package/dist/modules/agents/repositories/agent-message.repository.d.ts +5 -0
  263. package/dist/modules/agents/repositories/agent-message.repository.js +26 -0
  264. package/dist/modules/agents/repositories/agent-message.repository.js.map +1 -0
  265. package/dist/modules/agents/repositories/agent-observation-cursor.repository.d.ts +5 -0
  266. package/dist/modules/agents/repositories/agent-observation-cursor.repository.js +26 -0
  267. package/dist/modules/agents/repositories/agent-observation-cursor.repository.js.map +1 -0
  268. package/dist/modules/agents/repositories/agent-observation-lock.repository.d.ts +5 -0
  269. package/dist/modules/agents/repositories/agent-observation-lock.repository.js +26 -0
  270. package/dist/modules/agents/repositories/agent-observation-lock.repository.js.map +1 -0
  271. package/dist/modules/agents/repositories/agent-observation.repository.d.ts +5 -0
  272. package/dist/modules/agents/repositories/agent-observation.repository.js +26 -0
  273. package/dist/modules/agents/repositories/agent-observation.repository.js.map +1 -0
  274. package/dist/modules/agents/repositories/agent-published-version.repository.d.ts +20 -0
  275. package/dist/modules/agents/repositories/agent-published-version.repository.js +35 -0
  276. package/dist/modules/agents/repositories/agent-published-version.repository.js.map +1 -0
  277. package/dist/modules/agents/repositories/agent-resource.repository.d.ts +5 -0
  278. package/dist/modules/agents/repositories/agent-resource.repository.js +26 -0
  279. package/dist/modules/agents/repositories/agent-resource.repository.js.map +1 -0
  280. package/dist/modules/agents/repositories/agent-thread.repository.d.ts +5 -0
  281. package/dist/modules/agents/repositories/agent-thread.repository.js +26 -0
  282. package/dist/modules/agents/repositories/agent-thread.repository.js.map +1 -0
  283. package/dist/modules/agents/repositories/agent.repository.d.ts +9 -0
  284. package/dist/modules/agents/repositories/agent.repository.js +50 -0
  285. package/dist/modules/agents/repositories/agent.repository.js.map +1 -0
  286. package/dist/modules/agents/runtime/agent-isolate-pool.d.ts +48 -0
  287. package/dist/modules/agents/runtime/agent-isolate-pool.js +246 -0
  288. package/dist/modules/agents/runtime/agent-isolate-pool.js.map +1 -0
  289. package/dist/modules/agents/runtime/agent-secure-runtime.d.ts +21 -0
  290. package/dist/modules/agents/runtime/agent-secure-runtime.js +281 -0
  291. package/dist/modules/agents/runtime/agent-secure-runtime.js.map +1 -0
  292. package/dist/modules/agents/runtime/sandbox-polyfills.d.ts +1 -0
  293. package/dist/modules/agents/runtime/sandbox-polyfills.js +74 -0
  294. package/dist/modules/agents/runtime/sandbox-polyfills.js.map +1 -0
  295. package/dist/modules/agents/tool-registry.d.ts +13 -0
  296. package/dist/modules/agents/tool-registry.js +42 -0
  297. package/dist/modules/agents/tool-registry.js.map +1 -0
  298. package/dist/modules/agents/tools/environment-tool.d.ts +3 -0
  299. package/dist/modules/agents/tools/environment-tool.js +26 -0
  300. package/dist/modules/agents/tools/environment-tool.js.map +1 -0
  301. package/dist/modules/agents/tools/node-tool-factory.d.ts +10 -0
  302. package/dist/modules/agents/tools/node-tool-factory.js +100 -0
  303. package/dist/modules/agents/tools/node-tool-factory.js.map +1 -0
  304. package/dist/modules/agents/tools/workflow-tool-factory.d.ts +43 -0
  305. package/dist/modules/agents/tools/workflow-tool-factory.js +404 -0
  306. package/dist/modules/agents/tools/workflow-tool-factory.js.map +1 -0
  307. package/dist/modules/agents/tracing/builder-telemetry.d.ts +12 -0
  308. package/dist/modules/agents/tracing/builder-telemetry.js +48 -0
  309. package/dist/modules/agents/tracing/builder-telemetry.js.map +1 -0
  310. package/dist/modules/agents/types/components.d.ts +71 -0
  311. package/dist/modules/agents/types/components.js +3 -0
  312. package/dist/modules/agents/types/components.js.map +1 -0
  313. package/dist/modules/agents/types/index.d.ts +1 -0
  314. package/dist/modules/agents/types/index.js +3 -0
  315. package/dist/modules/agents/types/index.js.map +1 -0
  316. package/dist/modules/agents/utils/agent-draft.utils.d.ts +2 -0
  317. package/dist/modules/agents/utils/agent-draft.utils.js +11 -0
  318. package/dist/modules/agents/utils/agent-draft.utils.js.map +1 -0
  319. package/dist/modules/agents/utils/agent-resource-id.d.ts +3 -0
  320. package/dist/modules/agents/utils/agent-resource-id.js +14 -0
  321. package/dist/modules/agents/utils/agent-resource-id.js.map +1 -0
  322. package/dist/modules/chat-hub/chat-hub.module.d.ts +2 -2
  323. package/dist/modules/chat-hub/chat-hub.settings.controller.d.ts +4 -4
  324. package/dist/modules/chat-hub/chat-hub.types.d.ts +2 -2
  325. package/dist/modules/chat-hub/dto/chat-models-request.dto.d.ts +1 -1
  326. package/dist/modules/community-packages/community-packages.config.js +2 -2
  327. package/dist/modules/community-packages/community-packages.config.js.map +1 -1
  328. package/dist/modules/community-packages/community-packages.lifecycle.service.d.ts +4 -1
  329. package/dist/modules/community-packages/community-packages.lifecycle.service.js +14 -2
  330. package/dist/modules/community-packages/community-packages.lifecycle.service.js.map +1 -1
  331. package/dist/modules/community-packages/community-packages.module.d.ts +1 -1
  332. package/dist/modules/community-packages/community-packages.module.js +10 -5
  333. package/dist/modules/community-packages/community-packages.module.js.map +1 -1
  334. package/dist/modules/data-table/data-table.service.js +6 -0
  335. package/dist/modules/data-table/data-table.service.js.map +1 -1
  336. package/dist/modules/dynamic-credentials.ee/credential-resolvers/identifiers/slack-signature-identifier.d.ts +1 -1
  337. package/dist/modules/dynamic-credentials.ee/dynamic-credentials.config.d.ts +2 -0
  338. package/dist/modules/dynamic-credentials.ee/dynamic-credentials.config.js +10 -0
  339. package/dist/modules/dynamic-credentials.ee/dynamic-credentials.config.js.map +1 -1
  340. package/dist/modules/dynamic-credentials.ee/dynamic-credentials.controller.d.ts +1 -1
  341. package/dist/modules/dynamic-credentials.ee/dynamic-credentials.controller.js +16 -4
  342. package/dist/modules/dynamic-credentials.ee/dynamic-credentials.controller.js.map +1 -1
  343. package/dist/modules/dynamic-credentials.ee/workflow-status.controller.d.ts +3 -3
  344. package/dist/modules/dynamic-credentials.ee/workflow-status.controller.js +11 -3
  345. package/dist/modules/dynamic-credentials.ee/workflow-status.controller.js.map +1 -1
  346. package/dist/modules/encryption-key-manager/encryption-bootstrap.service.js +4 -2
  347. package/dist/modules/encryption-key-manager/encryption-bootstrap.service.js.map +1 -1
  348. package/dist/modules/encryption-key-manager/encryption-key-manager.module.js +5 -2
  349. package/dist/modules/encryption-key-manager/encryption-key-manager.module.js.map +1 -1
  350. package/dist/modules/encryption-key-manager/encryption-key.controller.d.ts +3 -3
  351. package/dist/modules/encryption-key-manager/encryption-key.controller.js +8 -2
  352. package/dist/modules/encryption-key-manager/encryption-key.controller.js.map +1 -1
  353. package/dist/modules/encryption-key-manager/key-manager.service.d.ts +5 -1
  354. package/dist/modules/encryption-key-manager/key-manager.service.js +11 -4
  355. package/dist/modules/encryption-key-manager/key-manager.service.js.map +1 -1
  356. package/dist/modules/insights/insights-collection.service.js +1 -0
  357. package/dist/modules/insights/insights-collection.service.js.map +1 -1
  358. package/dist/modules/instance-ai/eval/mock-handler.js +17 -49
  359. package/dist/modules/instance-ai/eval/mock-handler.js.map +1 -1
  360. package/dist/modules/instance-ai/filesystem/local-gateway-registry.d.ts +1 -0
  361. package/dist/modules/instance-ai/filesystem/local-gateway-registry.js +21 -3
  362. package/dist/modules/instance-ai/filesystem/local-gateway-registry.js.map +1 -1
  363. package/dist/modules/instance-ai/instance-ai-settings.service.d.ts +3 -2
  364. package/dist/modules/instance-ai/instance-ai-settings.service.js +10 -9
  365. package/dist/modules/instance-ai/instance-ai-settings.service.js.map +1 -1
  366. package/dist/modules/instance-ai/instance-ai-test.controller.d.ts +21 -2
  367. package/dist/modules/instance-ai/instance-ai-test.controller.js +35 -3
  368. package/dist/modules/instance-ai/instance-ai-test.controller.js.map +1 -1
  369. package/dist/modules/instance-ai/instance-ai.adapter.service.js +72 -42
  370. package/dist/modules/instance-ai/instance-ai.adapter.service.js.map +1 -1
  371. package/dist/modules/instance-ai/instance-ai.controller.d.ts +2 -0
  372. package/dist/modules/instance-ai/instance-ai.controller.js +25 -1
  373. package/dist/modules/instance-ai/instance-ai.controller.js.map +1 -1
  374. package/dist/modules/instance-ai/instance-ai.module.d.ts +0 -1
  375. package/dist/modules/instance-ai/instance-ai.module.js +0 -2
  376. package/dist/modules/instance-ai/instance-ai.module.js.map +1 -1
  377. package/dist/modules/instance-ai/instance-ai.service.d.ts +34 -5
  378. package/dist/modules/instance-ai/instance-ai.service.js +723 -76
  379. package/dist/modules/instance-ai/instance-ai.service.js.map +1 -1
  380. package/dist/modules/instance-ai/liveness/index.d.ts +1 -0
  381. package/dist/modules/instance-ai/liveness/index.js +7 -0
  382. package/dist/modules/instance-ai/liveness/index.js.map +1 -0
  383. package/dist/modules/instance-ai/liveness/instance-ai-liveness.service.d.ts +72 -0
  384. package/dist/modules/instance-ai/liveness/instance-ai-liveness.service.js +123 -0
  385. package/dist/modules/instance-ai/liveness/instance-ai-liveness.service.js.map +1 -0
  386. package/dist/modules/instance-ai/message-parser.js +85 -6
  387. package/dist/modules/instance-ai/message-parser.js.map +1 -1
  388. package/dist/modules/instance-ai/storage/db-snapshot-storage.js +4 -0
  389. package/dist/modules/instance-ai/storage/db-snapshot-storage.js.map +1 -1
  390. package/dist/modules/instance-ai/storage/typeorm-memory-storage.js +1 -0
  391. package/dist/modules/instance-ai/storage/typeorm-memory-storage.js.map +1 -1
  392. package/dist/modules/instance-ai/web-research/fetch-and-extract.js +23 -7
  393. package/dist/modules/instance-ai/web-research/fetch-and-extract.js.map +1 -1
  394. package/dist/modules/mcp/mcp.service.d.ts +3 -3
  395. package/dist/modules/mcp/mcp.service.js +12 -9
  396. package/dist/modules/mcp/mcp.service.js.map +1 -1
  397. package/dist/modules/mcp/tools/get-execution.tool.js +6 -4
  398. package/dist/modules/mcp/tools/get-execution.tool.js.map +1 -1
  399. package/dist/modules/mcp/tools/list-credentials.tool.d.ts +40 -0
  400. package/dist/modules/mcp/tools/list-credentials.tool.js +148 -0
  401. package/dist/modules/mcp/tools/list-credentials.tool.js.map +1 -0
  402. package/dist/modules/mcp/tools/workflow-builder/create-workflow-from-code.tool.js +5 -4
  403. package/dist/modules/mcp/tools/workflow-builder/create-workflow-from-code.tool.js.map +1 -1
  404. package/dist/modules/mcp/tools/workflow-builder/get-suggested-workflow-nodes.tool.d.ts +2 -2
  405. package/dist/modules/mcp/tools/workflow-builder/get-suggested-workflow-nodes.tool.js +3 -3
  406. package/dist/modules/mcp/tools/workflow-builder/get-suggested-workflow-nodes.tool.js.map +1 -1
  407. package/dist/modules/mcp/tools/workflow-builder/get-workflow-node-types.tool.d.ts +2 -2
  408. package/dist/modules/mcp/tools/workflow-builder/get-workflow-node-types.tool.js +2 -2
  409. package/dist/modules/mcp/tools/workflow-builder/get-workflow-node-types.tool.js.map +1 -1
  410. package/dist/modules/mcp/tools/workflow-builder/get-workflow-sdk-reference.tool.js +3 -2
  411. package/dist/modules/mcp/tools/workflow-builder/get-workflow-sdk-reference.tool.js.map +1 -1
  412. package/dist/modules/mcp/tools/workflow-builder/mcp-instructions.js +3 -3
  413. package/dist/modules/mcp/tools/workflow-builder/mcp-instructions.js.map +1 -1
  414. package/dist/modules/mcp/tools/workflow-builder/sdk-reference-content.d.ts +1 -1
  415. package/dist/modules/mcp/tools/workflow-builder/sdk-reference-content.js +12 -4
  416. package/dist/modules/mcp/tools/workflow-builder/sdk-reference-content.js.map +1 -1
  417. package/dist/modules/mcp/tools/workflow-builder/search-workflow-nodes.tool.d.ts +2 -2
  418. package/dist/modules/mcp/tools/workflow-builder/search-workflow-nodes.tool.js +12 -5
  419. package/dist/modules/mcp/tools/workflow-builder/search-workflow-nodes.tool.js.map +1 -1
  420. package/dist/modules/mcp/tools/workflow-builder/update-workflow.tool.js +1 -2
  421. package/dist/modules/mcp/tools/workflow-builder/update-workflow.tool.js.map +1 -1
  422. package/dist/modules/mcp/tools/workflow-builder/validate-workflow-code.tool.js +1 -1
  423. package/dist/modules/mcp/tools/workflow-builder/validate-workflow-code.tool.js.map +1 -1
  424. package/dist/modules/mcp/tools/workflow-validation.utils.d.ts +5 -1
  425. package/dist/modules/mcp/tools/workflow-validation.utils.js +4 -2
  426. package/dist/modules/mcp/tools/workflow-validation.utils.js.map +1 -1
  427. package/dist/modules/mcp-registry/mcp-registry-node-loader.d.ts +27 -0
  428. package/dist/modules/mcp-registry/mcp-registry-node-loader.js +105 -0
  429. package/dist/modules/mcp-registry/mcp-registry-node-loader.js.map +1 -0
  430. package/dist/modules/mcp-registry/mcp-registry-node-loader.test.d.ts +1 -0
  431. package/dist/modules/mcp-registry/mcp-registry-node-loader.test.js +244 -0
  432. package/dist/modules/mcp-registry/mcp-registry-node-loader.test.js.map +1 -0
  433. package/dist/modules/mcp-registry/mcp-registry.module.d.ts +4 -0
  434. package/dist/modules/mcp-registry/mcp-registry.module.js +60 -0
  435. package/dist/modules/mcp-registry/mcp-registry.module.js.map +1 -0
  436. package/dist/modules/mcp-registry/node-description-transform.d.ts +8 -0
  437. package/dist/modules/mcp-registry/node-description-transform.js +133 -0
  438. package/dist/modules/mcp-registry/node-description-transform.js.map +1 -0
  439. package/dist/modules/mcp-registry/node-description-transform.test.d.ts +1 -0
  440. package/dist/modules/mcp-registry/node-description-transform.test.js +286 -0
  441. package/dist/modules/mcp-registry/node-description-transform.test.js.map +1 -0
  442. package/dist/modules/mcp-registry/registry/mcp-registry.service.d.ts +8 -0
  443. package/dist/modules/mcp-registry/registry/mcp-registry.service.js +31 -0
  444. package/dist/modules/mcp-registry/registry/mcp-registry.service.js.map +1 -0
  445. package/dist/modules/mcp-registry/registry/mcp-registry.service.test.d.ts +1 -0
  446. package/dist/modules/mcp-registry/registry/mcp-registry.service.test.js +41 -0
  447. package/dist/modules/mcp-registry/registry/mcp-registry.service.test.js.map +1 -0
  448. package/dist/modules/mcp-registry/registry/mcp-registry.types.d.ts +36 -0
  449. package/dist/modules/mcp-registry/registry/mcp-registry.types.js +3 -0
  450. package/dist/modules/mcp-registry/registry/mcp-registry.types.js.map +1 -0
  451. package/dist/modules/mcp-registry/registry/mock-servers.d.ts +3 -0
  452. package/dist/modules/mcp-registry/registry/mock-servers.js +80 -0
  453. package/dist/modules/mcp-registry/registry/mock-servers.js.map +1 -0
  454. package/dist/modules/otel/execution-level-tracer.d.ts +1 -1
  455. package/dist/modules/otel/execution-level-tracer.js +24 -9
  456. package/dist/modules/otel/execution-level-tracer.js.map +1 -1
  457. package/dist/modules/otel/execution-level-tracer.types.d.ts +9 -7
  458. package/dist/modules/otel/execution-level-tracer.types.js +14 -0
  459. package/dist/modules/otel/execution-level-tracer.types.js.map +1 -1
  460. package/dist/modules/quick-connect/quick-connect.config.d.ts +176 -0
  461. package/dist/modules/quick-connect/quick-connect.config.js +8 -0
  462. package/dist/modules/quick-connect/quick-connect.config.js.map +1 -1
  463. package/dist/modules/quick-connect/quick-connect.module.d.ts +15 -0
  464. package/dist/modules/redaction/executions/execution-redaction.service.d.ts +1 -3
  465. package/dist/modules/redaction/executions/execution-redaction.service.js +2 -6
  466. package/dist/modules/redaction/executions/execution-redaction.service.js.map +1 -1
  467. package/dist/modules/source-control.ee/source-control.controller.ee.d.ts +2 -2
  468. package/dist/modules/source-control.ee/source-control.service.ee.d.ts +1 -1
  469. package/dist/modules/sso-oidc/oidc.controller.ee.d.ts +3 -1
  470. package/dist/modules/sso-oidc/oidc.controller.ee.js +8 -1
  471. package/dist/modules/sso-oidc/oidc.controller.ee.js.map +1 -1
  472. package/dist/node-catalog/index.d.ts +1 -0
  473. package/dist/node-catalog/index.js +6 -0
  474. package/dist/node-catalog/index.js.map +1 -0
  475. package/dist/{modules/mcp/tools/workflow-builder/workflow-builder-tools.service.d.ts → node-catalog/node-catalog.service.d.ts} +9 -15
  476. package/dist/{modules/mcp/tools/workflow-builder/workflow-builder-tools.service.js → node-catalog/node-catalog.service.js} +38 -28
  477. package/dist/node-catalog/node-catalog.service.js.map +1 -0
  478. package/dist/node-execution/ephemeral-node-executor.d.ts +47 -0
  479. package/dist/node-execution/ephemeral-node-executor.js +289 -0
  480. package/dist/node-execution/ephemeral-node-executor.js.map +1 -0
  481. package/dist/node-execution/index.d.ts +2 -0
  482. package/dist/node-execution/index.js +8 -0
  483. package/dist/node-execution/index.js.map +1 -0
  484. package/dist/public-api/v1/handlers/audit/audit.handler.d.ts +5 -4
  485. package/dist/public-api/v1/handlers/audit/audit.handler.js +5 -9
  486. package/dist/public-api/v1/handlers/audit/audit.handler.js.map +1 -1
  487. package/dist/public-api/v1/handlers/community-packages/community-packages.handler.d.ts +20 -17
  488. package/dist/public-api/v1/handlers/community-packages/community-packages.handler.js +12 -39
  489. package/dist/public-api/v1/handlers/community-packages/community-packages.handler.js.map +1 -1
  490. package/dist/public-api/v1/handlers/credentials/credentials.handler.d.ts +12 -49
  491. package/dist/public-api/v1/handlers/credentials/credentials.handler.js +6 -5
  492. package/dist/public-api/v1/handlers/credentials/credentials.handler.js.map +1 -1
  493. package/dist/public-api/v1/handlers/data-tables/data-tables.columns.handler.d.ts +8 -19
  494. package/dist/public-api/v1/handlers/data-tables/data-tables.columns.handler.js +11 -11
  495. package/dist/public-api/v1/handlers/data-tables/data-tables.columns.handler.js.map +1 -1
  496. package/dist/public-api/v1/handlers/data-tables/data-tables.handler.d.ts +9 -17
  497. package/dist/public-api/v1/handlers/data-tables/data-tables.handler.js +19 -23
  498. package/dist/public-api/v1/handlers/data-tables/data-tables.handler.js.map +1 -1
  499. package/dist/public-api/v1/handlers/data-tables/data-tables.rows.handler.d.ts +9 -23
  500. package/dist/public-api/v1/handlers/data-tables/data-tables.rows.handler.js +17 -27
  501. package/dist/public-api/v1/handlers/data-tables/data-tables.rows.handler.js.map +1 -1
  502. package/dist/public-api/v1/handlers/discover/discover.handler.d.ts +11 -9
  503. package/dist/public-api/v1/handlers/discover/discover.handler.js +5 -3
  504. package/dist/public-api/v1/handlers/discover/discover.handler.js.map +1 -1
  505. package/dist/public-api/v1/handlers/executions/executions.handler.d.ts +12 -11
  506. package/dist/public-api/v1/handlers/executions/executions.handler.js +46 -80
  507. package/dist/public-api/v1/handlers/executions/executions.handler.js.map +1 -1
  508. package/dist/public-api/v1/handlers/folders/folders.handler.d.ts +12 -17
  509. package/dist/public-api/v1/handlers/folders/folders.handler.js +17 -20
  510. package/dist/public-api/v1/handlers/folders/folders.handler.js.map +1 -1
  511. package/dist/public-api/v1/handlers/insights/insights.handler.d.ts +5 -4
  512. package/dist/public-api/v1/handlers/insights/insights.handler.js +9 -5
  513. package/dist/public-api/v1/handlers/insights/insights.handler.js.map +1 -1
  514. package/dist/public-api/v1/handlers/projects/projects.handler.d.ts +28 -11
  515. package/dist/public-api/v1/handlers/projects/projects.handler.js +44 -75
  516. package/dist/public-api/v1/handlers/projects/projects.handler.js.map +1 -1
  517. package/dist/public-api/v1/handlers/source-control/source-control.handler.d.ts +5 -6
  518. package/dist/public-api/v1/handlers/source-control/source-control.handler.js +3 -2
  519. package/dist/public-api/v1/handlers/source-control/source-control.handler.js.map +1 -1
  520. package/dist/public-api/v1/handlers/tags/tags.handler.d.ts +9 -8
  521. package/dist/public-api/v1/handlers/tags/tags.handler.js +11 -8
  522. package/dist/public-api/v1/handlers/tags/tags.handler.js.map +1 -1
  523. package/dist/public-api/v1/handlers/users/users.handler.ee.d.ts +14 -11
  524. package/dist/public-api/v1/handlers/users/users.handler.ee.js +7 -8
  525. package/dist/public-api/v1/handlers/users/users.handler.ee.js.map +1 -1
  526. package/dist/public-api/v1/handlers/variables/variables.handler.d.ts +13 -7
  527. package/dist/public-api/v1/handlers/variables/variables.handler.js +5 -3
  528. package/dist/public-api/v1/handlers/variables/variables.handler.js.map +1 -1
  529. package/dist/public-api/v1/handlers/workflows/workflows.handler.d.ts +17 -49
  530. package/dist/public-api/v1/handlers/workflows/workflows.handler.js +27 -46
  531. package/dist/public-api/v1/handlers/workflows/workflows.handler.js.map +1 -1
  532. package/dist/public-api/v1/shared/handler.types.d.ts +7 -1
  533. package/dist/public-api/v1/shared/middlewares/global.middleware.d.ts +1 -2
  534. package/dist/public-api/v1/shared/middlewares/global.middleware.js +7 -6
  535. package/dist/public-api/v1/shared/middlewares/global.middleware.js.map +1 -1
  536. package/dist/scaling/constants.d.ts +2 -2
  537. package/dist/scaling/job-processor.js +2 -0
  538. package/dist/scaling/job-processor.js.map +1 -1
  539. package/dist/scaling/pubsub/pubsub.event-map.d.ts +9 -0
  540. package/dist/scaling/pubsub/pubsub.types.d.ts +3 -1
  541. package/dist/scaling/scaling.types.d.ts +1 -0
  542. package/dist/server.d.ts +2 -0
  543. package/dist/server.js +2 -0
  544. package/dist/server.js.map +1 -1
  545. package/dist/services/frontend.service.js +7 -14
  546. package/dist/services/frontend.service.js.map +1 -1
  547. package/dist/services/import.service.d.ts +9 -3
  548. package/dist/services/import.service.js +72 -5
  549. package/dist/services/import.service.js.map +1 -1
  550. package/dist/services/proxy-token-manager.js.map +1 -0
  551. package/dist/services/workflow-statistics.service.js +1 -0
  552. package/dist/services/workflow-statistics.service.js.map +1 -1
  553. package/dist/task-runners/task-broker/task-broker.service.d.ts +2 -0
  554. package/dist/task-runners/task-broker/task-broker.service.js +13 -1
  555. package/dist/task-runners/task-broker/task-broker.service.js.map +1 -1
  556. package/dist/utils/ttl-map.d.ts +17 -0
  557. package/dist/utils/ttl-map.js +80 -0
  558. package/dist/utils/ttl-map.js.map +1 -0
  559. package/dist/webhooks/test-webhooks.d.ts +3 -1
  560. package/dist/webhooks/test-webhooks.js +11 -3
  561. package/dist/webhooks/test-webhooks.js.map +1 -1
  562. package/dist/workflow-execute-additional-data.d.ts +2 -1
  563. package/dist/workflow-execute-additional-data.js +34 -0
  564. package/dist/workflow-execute-additional-data.js.map +1 -1
  565. package/dist/workflow-helpers.d.ts +1 -0
  566. package/dist/workflow-helpers.js +15 -0
  567. package/dist/workflow-helpers.js.map +1 -1
  568. package/dist/workflow-runner.js +2 -0
  569. package/dist/workflow-runner.js.map +1 -1
  570. package/dist/workflows/workflow-creation.service.js +1 -0
  571. package/dist/workflows/workflow-creation.service.js.map +1 -1
  572. package/dist/workflows/workflow.service.js +4 -0
  573. package/dist/workflows/workflow.service.js.map +1 -1
  574. package/package.json +40 -25
  575. package/dist/instance-settings-loader/loaders/sso.instance-settings-loader.js +0 -203
  576. package/dist/instance-settings-loader/loaders/sso.instance-settings-loader.js.map +0 -1
  577. package/dist/modules/instance-ai/proxy-token-manager.js.map +0 -1
  578. package/dist/modules/mcp/tools/workflow-builder/workflow-builder-tools.service.js.map +0 -1
  579. /package/dist/{modules/instance-ai → services}/proxy-token-manager.d.ts +0 -0
  580. /package/dist/{modules/instance-ai → services}/proxy-token-manager.js +0 -0
@@ -0,0 +1,286 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const n8n_workflow_1 = require("n8n-workflow");
4
+ const node_description_transform_1 = require("./node-description-transform");
5
+ const mock_servers_1 = require("./registry/mock-servers");
6
+ const baseDescription = {
7
+ displayName: 'MCP Registry Client (internal)',
8
+ name: 'mcpRegistryClientTool',
9
+ hidden: true,
10
+ group: ['output'],
11
+ version: 1,
12
+ description: 'Runtime backing for MCP registry-derived nodes',
13
+ defaults: { name: 'MCP Registry Client' },
14
+ codex: {
15
+ categories: ['AI'],
16
+ subcategories: { AI: ['Model Context Protocol'] },
17
+ alias: ['MCP', 'Model Context Protocol'],
18
+ },
19
+ inputs: [],
20
+ outputs: [],
21
+ credentials: [{ name: 'mcpOAuth2Api', required: true }],
22
+ properties: [
23
+ { displayName: 'Endpoint URL', name: 'endpointUrl', type: 'hidden', default: '' },
24
+ {
25
+ displayName: 'Server Transport',
26
+ name: 'serverTransport',
27
+ type: 'hidden',
28
+ default: 'httpStreamable',
29
+ },
30
+ {
31
+ displayName: 'Tools to Include',
32
+ name: 'include',
33
+ type: 'options',
34
+ default: 'all',
35
+ options: [],
36
+ },
37
+ ],
38
+ };
39
+ describe('serverToNodeDescription', () => {
40
+ it('returns a description tailored to the Notion mock server', () => {
41
+ const description = (0, node_description_transform_1.serverToNodeDescription)(mock_servers_1.notionMockServer, baseDescription);
42
+ expect(description).not.toBeNull();
43
+ expect(description).toMatchObject({
44
+ name: 'notion',
45
+ displayName: 'Notion MCP',
46
+ description: mock_servers_1.notionMockServer.description,
47
+ iconUrl: mock_servers_1.notionMockServer.icons[0].src,
48
+ defaults: { name: 'Notion MCP' },
49
+ version: 1,
50
+ });
51
+ expect(description?.hidden).toBeUndefined();
52
+ });
53
+ it('prefers streamable-http when both remotes are available', () => {
54
+ const description = (0, node_description_transform_1.serverToNodeDescription)(mock_servers_1.notionMockServer, baseDescription);
55
+ const endpointUrl = description?.properties.find((p) => p.name === 'endpointUrl');
56
+ const serverTransport = description?.properties.find((p) => p.name === 'serverTransport');
57
+ expect(serverTransport?.default).toBe('httpStreamable');
58
+ expect(endpointUrl?.default).toBe('https://mcp.notion.com/mcp');
59
+ });
60
+ it('falls back to sse when only sse is available', () => {
61
+ const sseOnlyServer = {
62
+ ...mock_servers_1.notionMockServer,
63
+ remotes: [{ type: 'sse', url: 'https://mcp.notion.com/sse' }],
64
+ };
65
+ const description = (0, node_description_transform_1.serverToNodeDescription)(sseOnlyServer, baseDescription);
66
+ const endpointUrl = description?.properties.find((p) => p.name === 'endpointUrl');
67
+ const serverTransport = description?.properties.find((p) => p.name === 'serverTransport');
68
+ expect(serverTransport?.default).toBe('sse');
69
+ expect(endpointUrl?.default).toBe('https://mcp.notion.com/sse');
70
+ });
71
+ it('returns null when no supported remote is available', () => {
72
+ const unsupportedServer = {
73
+ ...mock_servers_1.notionMockServer,
74
+ remotes: [],
75
+ };
76
+ expect((0, node_description_transform_1.serverToNodeDescription)(unsupportedServer, baseDescription)).toBeNull();
77
+ });
78
+ it('marks deprecated servers as hidden so the node creator skips them', () => {
79
+ const deprecatedServer = { ...mock_servers_1.notionMockServer, status: 'deprecated' };
80
+ const description = (0, node_description_transform_1.serverToNodeDescription)(deprecatedServer, baseDescription);
81
+ expect(description?.hidden).toBe(true);
82
+ });
83
+ it('returns a themed iconUrl when both light and dark variants are available', () => {
84
+ const themedServer = {
85
+ ...mock_servers_1.notionMockServer,
86
+ icons: [
87
+ { src: 'https://example.com/light.svg', theme: 'light' },
88
+ { src: 'https://example.com/dark.svg', theme: 'dark' },
89
+ ],
90
+ };
91
+ const description = (0, node_description_transform_1.serverToNodeDescription)(themedServer, baseDescription);
92
+ expect(description?.iconUrl).toEqual({
93
+ light: 'https://example.com/light.svg',
94
+ dark: 'https://example.com/dark.svg',
95
+ });
96
+ });
97
+ it('falls back to the first icon when only one theme is provided', () => {
98
+ const lightOnlyServer = {
99
+ ...mock_servers_1.notionMockServer,
100
+ icons: [{ src: 'https://example.com/light.svg', theme: 'light' }],
101
+ };
102
+ const description = (0, node_description_transform_1.serverToNodeDescription)(lightOnlyServer, baseDescription);
103
+ expect(description?.iconUrl).toBe('https://example.com/light.svg');
104
+ });
105
+ it('prefers SVG over PNG over JPG when multiple formats are available', () => {
106
+ const multiFormatServer = {
107
+ ...mock_servers_1.notionMockServer,
108
+ icons: [
109
+ { src: 'https://example.com/icon.jpg', mimeType: 'image/jpeg' },
110
+ { src: 'https://example.com/icon.png', mimeType: 'image/png' },
111
+ { src: 'https://example.com/icon.svg', mimeType: 'image/svg+xml' },
112
+ ],
113
+ };
114
+ const description = (0, node_description_transform_1.serverToNodeDescription)(multiFormatServer, baseDescription);
115
+ expect(description?.iconUrl).toBe('https://example.com/icon.svg');
116
+ });
117
+ it('prefers PNG over JPG when SVG is not available', () => {
118
+ const noSvgServer = {
119
+ ...mock_servers_1.notionMockServer,
120
+ icons: [
121
+ { src: 'https://example.com/icon.jpg', mimeType: 'image/jpeg' },
122
+ { src: 'https://example.com/icon.png', mimeType: 'image/png' },
123
+ ],
124
+ };
125
+ const description = (0, node_description_transform_1.serverToNodeDescription)(noSvgServer, baseDescription);
126
+ expect(description?.iconUrl).toBe('https://example.com/icon.png');
127
+ });
128
+ it('applies mime type preference within each theme', () => {
129
+ const themedMultiFormatServer = {
130
+ ...mock_servers_1.notionMockServer,
131
+ icons: [
132
+ { src: 'https://example.com/light.png', mimeType: 'image/png', theme: 'light' },
133
+ { src: 'https://example.com/light.svg', mimeType: 'image/svg+xml', theme: 'light' },
134
+ { src: 'https://example.com/dark.jpg', mimeType: 'image/jpeg', theme: 'dark' },
135
+ { src: 'https://example.com/dark.png', mimeType: 'image/png', theme: 'dark' },
136
+ ],
137
+ };
138
+ const description = (0, node_description_transform_1.serverToNodeDescription)(themedMultiFormatServer, baseDescription);
139
+ expect(description?.iconUrl).toEqual({
140
+ light: 'https://example.com/light.svg',
141
+ dark: 'https://example.com/dark.png',
142
+ });
143
+ });
144
+ it('extends codex.alias with the title and displayName', () => {
145
+ const description = (0, node_description_transform_1.serverToNodeDescription)(mock_servers_1.notionMockServer, baseDescription);
146
+ expect(description?.codex?.alias).toEqual([
147
+ 'MCP',
148
+ 'Model Context Protocol',
149
+ 'Notion',
150
+ 'Notion MCP',
151
+ ]);
152
+ });
153
+ it('sets primaryDocumentation when websiteUrl is present', () => {
154
+ const description = (0, node_description_transform_1.serverToNodeDescription)(mock_servers_1.notionMockServer, baseDescription);
155
+ expect(description?.codex?.resources).toEqual({
156
+ primaryDocumentation: [{ url: mock_servers_1.notionMockServer.websiteUrl }],
157
+ });
158
+ });
159
+ it('does not mutate the input baseDescription', () => {
160
+ const snapshot = (0, n8n_workflow_1.deepCopy)(baseDescription);
161
+ (0, node_description_transform_1.serverToNodeDescription)(mock_servers_1.notionMockServer, baseDescription);
162
+ expect(baseDescription).toEqual(snapshot);
163
+ });
164
+ it('leaves properties other than endpointUrl and serverTransport untouched', () => {
165
+ const description = (0, node_description_transform_1.serverToNodeDescription)(mock_servers_1.notionMockServer, baseDescription);
166
+ const include = description?.properties.find((p) => p.name === 'include');
167
+ expect(include).toEqual(baseDescription.properties.find((p) => p.name === 'include'));
168
+ });
169
+ it('matches inline snapshot for Notion mock server', () => {
170
+ const description = (0, node_description_transform_1.serverToNodeDescription)(mock_servers_1.notionMockServer, baseDescription);
171
+ expect(description).toMatchInlineSnapshot(`
172
+ {
173
+ "codex": {
174
+ "alias": [
175
+ "MCP",
176
+ "Model Context Protocol",
177
+ "Notion",
178
+ "Notion MCP",
179
+ ],
180
+ "categories": [
181
+ "AI",
182
+ ],
183
+ "resources": {
184
+ "primaryDocumentation": [
185
+ {
186
+ "url": "https://developers.notion.com/docs/mcp",
187
+ },
188
+ ],
189
+ },
190
+ "subcategories": {
191
+ "AI": [
192
+ "Model Context Protocol",
193
+ ],
194
+ },
195
+ },
196
+ "credentials": [
197
+ {
198
+ "name": "notionMcpOAuth2Api",
199
+ "required": true,
200
+ },
201
+ ],
202
+ "defaults": {
203
+ "name": "Notion MCP",
204
+ },
205
+ "description": "Notion's official MCP server lets you use your Notion workspace as a system of record for knowledge work and software development. Search questions about the codebase and business, fetch links to pages such as tech specs and PRDs, and track tasks with your team.",
206
+ "displayName": "Notion MCP",
207
+ "group": [
208
+ "output",
209
+ ],
210
+ "iconUrl": "https://mcp.notion.com/notion-logo-block-main.svg",
211
+ "inputs": [],
212
+ "name": "notion",
213
+ "outputs": [],
214
+ "properties": [
215
+ {
216
+ "default": "https://mcp.notion.com/mcp",
217
+ "displayName": "Endpoint URL",
218
+ "name": "endpointUrl",
219
+ "type": "hidden",
220
+ },
221
+ {
222
+ "default": "httpStreamable",
223
+ "displayName": "Server Transport",
224
+ "name": "serverTransport",
225
+ "type": "hidden",
226
+ },
227
+ {
228
+ "default": "all",
229
+ "displayName": "Tools to Include",
230
+ "name": "include",
231
+ "options": [],
232
+ "type": "options",
233
+ },
234
+ ],
235
+ "version": 1,
236
+ }
237
+ `);
238
+ });
239
+ });
240
+ describe('serverToCredentialDescription', () => {
241
+ it('returns a description for servers with OAuth2 auth type', () => {
242
+ const description = (0, node_description_transform_1.serverToCredentialDescription)(mock_servers_1.notionMockServer);
243
+ expect(description).not.toBeNull();
244
+ expect(description).toEqual({
245
+ name: 'notionMcpOAuth2Api',
246
+ displayName: 'Notion MCP OAuth2',
247
+ extends: ['mcpOAuth2Api'],
248
+ icon: 'node:@n8n/mcp-registry.notion',
249
+ properties: [
250
+ {
251
+ displayName: 'Use Dynamic Client Registration',
252
+ name: 'useDynamicClientRegistration',
253
+ type: 'hidden',
254
+ default: true,
255
+ },
256
+ {
257
+ displayName: 'Server URL',
258
+ name: 'serverUrl',
259
+ type: 'hidden',
260
+ default: 'https://mcp.notion.com/mcp',
261
+ },
262
+ {
263
+ displayName: 'Allowed HTTP Request Domains',
264
+ name: 'allowedHttpRequestDomains',
265
+ type: 'hidden',
266
+ default: 'none',
267
+ },
268
+ ],
269
+ });
270
+ });
271
+ it('returns null when the auth type is not supported', () => {
272
+ const unsupportedServer = {
273
+ ...mock_servers_1.notionMockServer,
274
+ authType: 'foo',
275
+ };
276
+ expect((0, node_description_transform_1.serverToCredentialDescription)(unsupportedServer)).toBeNull();
277
+ });
278
+ it('returns null when no remote is available', () => {
279
+ const noRemoteServer = {
280
+ ...mock_servers_1.notionMockServer,
281
+ remotes: [],
282
+ };
283
+ expect((0, node_description_transform_1.serverToCredentialDescription)(noRemoteServer)).toBeNull();
284
+ });
285
+ });
286
+ //# sourceMappingURL=node-description-transform.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"node-description-transform.test.js","sourceRoot":"","sources":["../../../src/modules/mcp-registry/node-description-transform.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import type { McpRegistryServer } from './mcp-registry.types';
2
+ export declare class McpRegistryService {
3
+ private readonly servers;
4
+ getAll({ includeDeprecated }?: {
5
+ includeDeprecated?: boolean;
6
+ }): McpRegistryServer[];
7
+ get(slug: string): McpRegistryServer | undefined;
8
+ }
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.McpRegistryService = void 0;
10
+ const di_1 = require("@n8n/di");
11
+ const mock_servers_1 = require("./mock-servers");
12
+ let McpRegistryService = class McpRegistryService {
13
+ constructor() {
14
+ this.servers = new Map([
15
+ [mock_servers_1.notionMockServer.slug, mock_servers_1.notionMockServer],
16
+ [mock_servers_1.linearMockServer.slug, mock_servers_1.linearMockServer],
17
+ ]);
18
+ }
19
+ getAll({ includeDeprecated = false } = {}) {
20
+ const all = Array.from(this.servers.values());
21
+ return includeDeprecated ? all : all.filter((server) => server.status === 'active');
22
+ }
23
+ get(slug) {
24
+ return this.servers.get(slug);
25
+ }
26
+ };
27
+ exports.McpRegistryService = McpRegistryService;
28
+ exports.McpRegistryService = McpRegistryService = __decorate([
29
+ (0, di_1.Service)()
30
+ ], McpRegistryService);
31
+ //# sourceMappingURL=mcp-registry.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcp-registry.service.js","sourceRoot":"","sources":["../../../../src/modules/mcp-registry/registry/mcp-registry.service.ts"],"names":[],"mappings":";;;;;;;;;AAAA,gCAAkC;AAGlC,iDAAoE;AAG7D,IAAM,kBAAkB,GAAxB,MAAM,kBAAkB;IAAxB;QAEW,YAAO,GAAG,IAAI,GAAG,CAA4B;YAC7D,CAAC,+BAAgB,CAAC,IAAI,EAAE,+BAAgB,CAAC;YACzC,CAAC,+BAAgB,CAAC,IAAI,EAAE,+BAAgB,CAAC;SACzC,CAAC,CAAC;IAUJ,CAAC;IARA,MAAM,CAAC,EAAE,iBAAiB,GAAG,KAAK,KAAsC,EAAE;QACzE,MAAM,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;QAC9C,OAAO,iBAAiB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC;IACrF,CAAC;IAED,GAAG,CAAC,IAAY;QACf,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC;CACD,CAAA;AAfY,gDAAkB;6BAAlB,kBAAkB;IAD9B,IAAA,YAAO,GAAE;GACG,kBAAkB,CAe9B"}
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const mcp_registry_service_1 = require("./mcp-registry.service");
4
+ const mock_servers_1 = require("./mock-servers");
5
+ describe('McpRegistryService', () => {
6
+ let service;
7
+ beforeEach(() => {
8
+ service = new mcp_registry_service_1.McpRegistryService();
9
+ });
10
+ function seedDeprecated(slug) {
11
+ const deprecated = { ...mock_servers_1.notionMockServer, slug, status: 'deprecated' };
12
+ service.servers.set(slug, deprecated);
13
+ return deprecated;
14
+ }
15
+ describe('getAll', () => {
16
+ it('returns active servers by default', () => {
17
+ expect(service.getAll()).toEqual([mock_servers_1.notionMockServer, mock_servers_1.linearMockServer]);
18
+ });
19
+ it('omits deprecated servers by default', () => {
20
+ seedDeprecated('old');
21
+ expect(service.getAll()).toEqual([mock_servers_1.notionMockServer, mock_servers_1.linearMockServer]);
22
+ });
23
+ it('returns deprecated servers when includeDeprecated is true', () => {
24
+ const deprecated = seedDeprecated('old');
25
+ expect(service.getAll({ includeDeprecated: true })).toEqual([
26
+ mock_servers_1.notionMockServer,
27
+ mock_servers_1.linearMockServer,
28
+ deprecated,
29
+ ]);
30
+ });
31
+ });
32
+ describe('get', () => {
33
+ it('returns the matching server by slug', () => {
34
+ expect(service.get('notion')).toEqual(mock_servers_1.notionMockServer);
35
+ });
36
+ it('returns undefined when the slug is not registered', () => {
37
+ expect(service.get('does-not-exist')).toBeUndefined();
38
+ });
39
+ });
40
+ });
41
+ //# sourceMappingURL=mcp-registry.service.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcp-registry.service.test.js","sourceRoot":"","sources":["../../../../src/modules/mcp-registry/registry/mcp-registry.service.test.ts"],"names":[],"mappings":";;AAAA,iEAA4D;AAE5D,iDAAoE;AAEpE,QAAQ,CAAC,oBAAoB,EAAE,GAAG,EAAE;IACnC,IAAI,OAA2B,CAAC;IAEhC,UAAU,CAAC,GAAG,EAAE;QACf,OAAO,GAAG,IAAI,yCAAkB,EAAE,CAAC;IACpC,CAAC,CAAC,CAAC;IAEH,SAAS,cAAc,CAAC,IAAY;QACnC,MAAM,UAAU,GAAsB,EAAE,GAAG,+BAAgB,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC;QACzF,OAAkE,CAAC,OAAO,CAAC,GAAG,CAC9E,IAAI,EACJ,UAAU,CACV,CAAC;QACF,OAAO,UAAU,CAAC;IACnB,CAAC;IAED,QAAQ,CAAC,QAAQ,EAAE,GAAG,EAAE;QACvB,EAAE,CAAC,mCAAmC,EAAE,GAAG,EAAE;YAC5C,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,+BAAgB,EAAE,+BAAgB,CAAC,CAAC,CAAC;QACxE,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,qCAAqC,EAAE,GAAG,EAAE;YAC9C,cAAc,CAAC,KAAK,CAAC,CAAC;YAEtB,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,+BAAgB,EAAE,+BAAgB,CAAC,CAAC,CAAC;QACxE,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,2DAA2D,EAAE,GAAG,EAAE;YACpE,MAAM,UAAU,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;YAEzC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,iBAAiB,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;gBAC3D,+BAAgB;gBAChB,+BAAgB;gBAChB,UAAU;aACV,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,KAAK,EAAE,GAAG,EAAE;QACpB,EAAE,CAAC,qCAAqC,EAAE,GAAG,EAAE;YAC9C,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,+BAAgB,CAAC,CAAC;QACzD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,mDAAmD,EAAE,GAAG,EAAE;YAC5D,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC;QACvD,CAAC,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC"}
@@ -0,0 +1,36 @@
1
+ export type McpRegistryServer = {
2
+ id: number;
3
+ name: string;
4
+ slug: string;
5
+ title: string;
6
+ description: string;
7
+ version: string;
8
+ updatedAt: string;
9
+ icons: McpRegistryIcon[];
10
+ websiteUrl?: string;
11
+ authType: 'oauth2';
12
+ remotes: McpRegistryRemote[];
13
+ tools: McpRegistryTool[];
14
+ isOfficial: boolean;
15
+ origin: 'registry';
16
+ status: 'active' | 'deprecated';
17
+ tags?: string[];
18
+ };
19
+ export type McpRegistryIcon = {
20
+ src: string;
21
+ mimeType?: 'image/png' | 'image/jpeg' | 'image/jpg' | 'image/svg+xml' | 'image/webp';
22
+ theme?: 'light' | 'dark';
23
+ };
24
+ export type McpRegistryRemoteType = 'streamable-http' | 'sse';
25
+ export type McpRegistryRemote = {
26
+ type: McpRegistryRemoteType;
27
+ url: string;
28
+ };
29
+ export type McpRegistryToolAnnotations = {
30
+ readOnlyHint?: boolean;
31
+ };
32
+ export type McpRegistryTool = {
33
+ name: string;
34
+ title?: string;
35
+ annotations?: McpRegistryToolAnnotations;
36
+ };
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=mcp-registry.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcp-registry.types.js","sourceRoot":"","sources":["../../../../src/modules/mcp-registry/registry/mcp-registry.types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,3 @@
1
+ import type { McpRegistryServer } from './mcp-registry.types';
2
+ export declare const notionMockServer: McpRegistryServer;
3
+ export declare const linearMockServer: McpRegistryServer;
@@ -0,0 +1,80 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.linearMockServer = exports.notionMockServer = void 0;
4
+ exports.notionMockServer = {
5
+ id: 42,
6
+ name: 'com.notion/mcp',
7
+ slug: 'notion',
8
+ title: 'Notion',
9
+ description: "Notion's official MCP server lets you use your Notion workspace as a system of record for knowledge work and software development. Search questions about the codebase and business, fetch links to pages such as tech specs and PRDs, and track tasks with your team.",
10
+ version: '1.2.0',
11
+ updatedAt: '2026-04-22T10:00:00.000Z',
12
+ icons: [{ src: 'https://mcp.notion.com/notion-logo-block-main.svg', mimeType: 'image/svg+xml' }],
13
+ websiteUrl: 'https://developers.notion.com/docs/mcp',
14
+ authType: 'oauth2',
15
+ remotes: [
16
+ { type: 'streamable-http', url: 'https://mcp.notion.com/mcp' },
17
+ { type: 'sse', url: 'https://mcp.notion.com/sse' },
18
+ ],
19
+ tools: [
20
+ {
21
+ name: 'notion-search',
22
+ title: 'Search Notion and connected sources',
23
+ annotations: { readOnlyHint: true },
24
+ },
25
+ {
26
+ name: 'notion-fetch',
27
+ title: 'Fetch Notion entities',
28
+ annotations: { readOnlyHint: true },
29
+ },
30
+ {
31
+ name: 'notion-create-pages',
32
+ title: 'Create pages in Markdown',
33
+ annotations: { readOnlyHint: false },
34
+ },
35
+ ],
36
+ isOfficial: true,
37
+ origin: 'registry',
38
+ status: 'active',
39
+ tags: ['productivity', 'docs', 'knowledge-base'],
40
+ };
41
+ exports.linearMockServer = {
42
+ id: 101,
43
+ name: 'app.linear/linear',
44
+ slug: 'linear',
45
+ title: 'Linear',
46
+ description: 'MCP server for Linear project management and issue tracking',
47
+ version: '1.0.0',
48
+ updatedAt: '2026-05-05T10:00:00.000Z',
49
+ icons: [
50
+ { src: 'https://static.linear.app/integrations/mcp/icon.svg', mimeType: 'image/svg+xml' },
51
+ ],
52
+ websiteUrl: 'https://linear.app',
53
+ authType: 'oauth2',
54
+ remotes: [
55
+ { type: 'sse', url: 'https://mcp.linear.app/sse' },
56
+ { type: 'streamable-http', url: 'https://mcp.linear.app/mcp' },
57
+ ],
58
+ tools: [
59
+ {
60
+ name: 'list_issues',
61
+ title: 'List issues',
62
+ annotations: { readOnlyHint: true },
63
+ },
64
+ {
65
+ name: 'get_issue',
66
+ title: 'Get issue',
67
+ annotations: { readOnlyHint: true },
68
+ },
69
+ {
70
+ name: 'save_issue',
71
+ title: 'Save issue',
72
+ annotations: { readOnlyHint: false },
73
+ },
74
+ ],
75
+ isOfficial: true,
76
+ origin: 'registry',
77
+ status: 'active',
78
+ tags: ['issue-tracking', 'project-management'],
79
+ };
80
+ //# sourceMappingURL=mock-servers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mock-servers.js","sourceRoot":"","sources":["../../../../src/modules/mcp-registry/registry/mock-servers.ts"],"names":[],"mappings":";;;AAEa,QAAA,gBAAgB,GAAsB;IAClD,EAAE,EAAE,EAAE;IACN,IAAI,EAAE,gBAAgB;IACtB,IAAI,EAAE,QAAQ;IACd,KAAK,EAAE,QAAQ;IACf,WAAW,EACV,wQAAwQ;IACzQ,OAAO,EAAE,OAAO;IAChB,SAAS,EAAE,0BAA0B;IACrC,KAAK,EAAE,CAAC,EAAE,GAAG,EAAE,mDAAmD,EAAE,QAAQ,EAAE,eAAe,EAAE,CAAC;IAChG,UAAU,EAAE,wCAAwC;IACpD,QAAQ,EAAE,QAAQ;IAClB,OAAO,EAAE;QACR,EAAE,IAAI,EAAE,iBAAiB,EAAE,GAAG,EAAE,4BAA4B,EAAE;QAC9D,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,4BAA4B,EAAE;KAClD;IACD,KAAK,EAAE;QACN;YACC,IAAI,EAAE,eAAe;YACrB,KAAK,EAAE,qCAAqC;YAC5C,WAAW,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE;SACnC;QACD;YACC,IAAI,EAAE,cAAc;YACpB,KAAK,EAAE,uBAAuB;YAC9B,WAAW,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE;SACnC;QACD;YACC,IAAI,EAAE,qBAAqB;YAC3B,KAAK,EAAE,0BAA0B;YACjC,WAAW,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE;SACpC;KACD;IACD,UAAU,EAAE,IAAI;IAChB,MAAM,EAAE,UAAU;IAClB,MAAM,EAAE,QAAQ;IAChB,IAAI,EAAE,CAAC,cAAc,EAAE,MAAM,EAAE,gBAAgB,CAAC;CAChD,CAAC;AAEW,QAAA,gBAAgB,GAAsB;IAClD,EAAE,EAAE,GAAG;IACP,IAAI,EAAE,mBAAmB;IACzB,IAAI,EAAE,QAAQ;IACd,KAAK,EAAE,QAAQ;IACf,WAAW,EAAE,6DAA6D;IAC1E,OAAO,EAAE,OAAO;IAChB,SAAS,EAAE,0BAA0B;IACrC,KAAK,EAAE;QACN,EAAE,GAAG,EAAE,qDAAqD,EAAE,QAAQ,EAAE,eAAe,EAAE;KACzF;IACD,UAAU,EAAE,oBAAoB;IAChC,QAAQ,EAAE,QAAQ;IAClB,OAAO,EAAE;QACR,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,4BAA4B,EAAE;QAClD,EAAE,IAAI,EAAE,iBAAiB,EAAE,GAAG,EAAE,4BAA4B,EAAE;KAC9D;IACD,KAAK,EAAE;QACN;YACC,IAAI,EAAE,aAAa;YACnB,KAAK,EAAE,aAAa;YACpB,WAAW,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE;SACnC;QACD;YACC,IAAI,EAAE,WAAW;YACjB,KAAK,EAAE,WAAW;YAClB,WAAW,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE;SACnC;QACD;YACC,IAAI,EAAE,YAAY;YAClB,KAAK,EAAE,YAAY;YACnB,WAAW,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE;SACpC;KACD;IACD,UAAU,EAAE,IAAI;IAChB,MAAM,EAAE,UAAU;IAClB,MAAM,EAAE,QAAQ;IAChB,IAAI,EAAE,CAAC,gBAAgB,EAAE,oBAAoB,CAAC;CAC9C,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { Logger } from '@n8n/backend-common';
2
- import type { StartWorkflowParams, EndWorkflowParams, StartNodeParams, EndNodeParams } from './execution-level-tracer.types';
2
+ import { type StartWorkflowParams, type EndWorkflowParams, type StartNodeParams, type EndNodeParams } from './execution-level-tracer.types';
3
3
  import { OtelConfig } from './otel.config';
4
4
  import type { TracingContext } from './tracing-context';
5
5
  export declare class ExecutionLevelTracer {
@@ -13,7 +13,7 @@ exports.ExecutionLevelTracer = void 0;
13
13
  const backend_common_1 = require("@n8n/backend-common");
14
14
  const di_1 = require("@n8n/di");
15
15
  const api_1 = require("@opentelemetry/api");
16
- const semantic_conventions_1 = require("@opentelemetry/semantic-conventions");
16
+ const execution_level_tracer_types_1 = require("./execution-level-tracer.types");
17
17
  const otel_config_1 = require("./otel.config");
18
18
  const otel_constants_1 = require("./otel.constants");
19
19
  const TRACER_NAME = 'n8n-workflow';
@@ -68,6 +68,10 @@ let ExecutionLevelTracer = class ExecutionLevelTracer {
68
68
  span.setStatus({ code: isError(params.status) ? api_1.SpanStatusCode.ERROR : api_1.SpanStatusCode.OK });
69
69
  if (isError(params.status) && params.error) {
70
70
  span.setAttribute(otel_constants_1.ATTR.EXECUTION_ERROR_TYPE, getErrorType(params.error));
71
+ const recordableException = toRecordableException(params.error);
72
+ if (recordableException) {
73
+ span.recordException(recordableException);
74
+ }
71
75
  }
72
76
  this.endDanglingNodeSpans(params.executionId);
73
77
  span.end();
@@ -125,11 +129,10 @@ let ExecutionLevelTracer = class ExecutionLevelTracer {
125
129
  activeNodeSpan.setStatus({ code: api_1.SpanStatusCode.OK });
126
130
  if (params.error) {
127
131
  activeNodeSpan.setStatus({ code: api_1.SpanStatusCode.ERROR });
128
- activeNodeSpan.addEvent('exception', {
129
- [semantic_conventions_1.ATTR_EXCEPTION_MESSAGE]: params.error.message,
130
- [semantic_conventions_1.ATTR_EXCEPTION_TYPE]: params.error.constructor.name,
131
- [semantic_conventions_1.ATTR_EXCEPTION_STACKTRACE]: params.error.stack,
132
- });
132
+ const recordableException = toRecordableException(params.error);
133
+ if (recordableException) {
134
+ activeNodeSpan.recordException(recordableException);
135
+ }
133
136
  }
134
137
  activeNodeSpan.end();
135
138
  executionNodes?.delete(params.node.name);
@@ -233,9 +236,21 @@ function getErrorType(error) {
233
236
  const name = record.name;
234
237
  if (typeof name === 'string' && name.trim() !== '')
235
238
  return name;
236
- const ctor = record.constructor;
237
- if (typeof ctor === 'function' && ctor.name && ctor.name !== 'Object')
238
- return ctor.name;
239
+ if ((0, execution_level_tracer_types_1.isEndNodeError)(error)) {
240
+ return error.constructor.name;
241
+ }
239
242
  return 'UnknownError';
240
243
  }
244
+ function toRecordableException(error) {
245
+ if (error instanceof Error || typeof error === 'string')
246
+ return error;
247
+ if ((0, execution_level_tracer_types_1.isEndNodeError)(error)) {
248
+ return {
249
+ message: error.message,
250
+ name: error.constructor.name,
251
+ stack: error.stack,
252
+ };
253
+ }
254
+ return undefined;
255
+ }
241
256
  //# sourceMappingURL=execution-level-tracer.js.map