n8n 2.13.2 → 2.14.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 (276) hide show
  1. package/dist/build.tsbuildinfo +1 -1
  2. package/dist/chat/chat-execution-manager.js +8 -2
  3. package/dist/chat/chat-execution-manager.js.map +1 -1
  4. package/dist/chat/utils.d.ts +3 -2
  5. package/dist/chat/utils.js +71 -1
  6. package/dist/chat/utils.js.map +1 -1
  7. package/dist/commands/start.d.ts +1 -0
  8. package/dist/commands/start.js +18 -2
  9. package/dist/commands/start.js.map +1 -1
  10. package/dist/controllers/api-keys.controller.d.ts +4 -8
  11. package/dist/controllers/api-keys.controller.js +6 -23
  12. package/dist/controllers/api-keys.controller.js.map +1 -1
  13. package/dist/controllers/auth.controller.js +5 -1
  14. package/dist/controllers/auth.controller.js.map +1 -1
  15. package/dist/controllers/binary-data.controller.js +9 -3
  16. package/dist/controllers/binary-data.controller.js.map +1 -1
  17. package/dist/controllers/invitation.controller.d.ts +0 -1
  18. package/dist/controllers/invitation.controller.js +1 -32
  19. package/dist/controllers/invitation.controller.js.map +1 -1
  20. package/dist/controllers/oauth/oauth2-credential.controller.js +14 -13
  21. package/dist/controllers/oauth/oauth2-credential.controller.js.map +1 -1
  22. package/dist/controllers/project.controller.js +2 -1
  23. package/dist/controllers/project.controller.js.map +1 -1
  24. package/dist/controllers/users.controller.js +1 -5
  25. package/dist/controllers/users.controller.js.map +1 -1
  26. package/dist/credentials/credential-dependency.service.d.ts +36 -0
  27. package/dist/credentials/credential-dependency.service.js +77 -0
  28. package/dist/credentials/credential-dependency.service.js.map +1 -0
  29. package/dist/credentials/credentials-finder.service.d.ts +1 -0
  30. package/dist/credentials/credentials-finder.service.js +35 -0
  31. package/dist/credentials/credentials-finder.service.js.map +1 -1
  32. package/dist/credentials/credentials.controller.js +6 -2
  33. package/dist/credentials/credentials.controller.js.map +1 -1
  34. package/dist/credentials/credentials.service.d.ts +14 -13
  35. package/dist/credentials/credentials.service.js +86 -52
  36. package/dist/credentials/credentials.service.js.map +1 -1
  37. package/dist/credentials/external-secrets.utils.d.ts +4 -0
  38. package/dist/credentials/external-secrets.utils.js +51 -0
  39. package/dist/credentials/external-secrets.utils.js.map +1 -0
  40. package/dist/credentials/validation.d.ts +0 -2
  41. package/dist/credentials/validation.js +5 -32
  42. package/dist/credentials/validation.js.map +1 -1
  43. package/dist/errors/response-errors/scope-forbidden.error.d.ts +11 -0
  44. package/dist/errors/response-errors/scope-forbidden.error.js +13 -0
  45. package/dist/errors/response-errors/scope-forbidden.error.js.map +1 -0
  46. package/dist/evaluation.ee/test-runner/test-runner.service.ee.js +2 -0
  47. package/dist/evaluation.ee/test-runner/test-runner.service.ee.js.map +1 -1
  48. package/dist/evaluation.ee/test-runs.controller.ee.d.ts +2 -1
  49. package/dist/evaluation.ee/test-runs.controller.ee.js +13 -13
  50. package/dist/evaluation.ee/test-runs.controller.ee.js.map +1 -1
  51. package/dist/eventbus/message-event-bus/message-event-bus.d.ts +1 -2
  52. package/dist/eventbus/message-event-bus/message-event-bus.js +8 -8
  53. package/dist/eventbus/message-event-bus/message-event-bus.js.map +1 -1
  54. package/dist/events/maps/relay.event-map.d.ts +1 -0
  55. package/dist/events/relays/telemetry.event-relay.js +3 -2
  56. package/dist/events/relays/telemetry.event-relay.js.map +1 -1
  57. package/dist/execution-lifecycle/execution-lifecycle-hooks.js +90 -9
  58. package/dist/execution-lifecycle/execution-lifecycle-hooks.js.map +1 -1
  59. package/dist/executions/execution-redaction.d.ts +2 -1
  60. package/dist/executions/execution.service.d.ts +11 -2
  61. package/dist/executions/execution.service.js +19 -1
  62. package/dist/executions/execution.service.js.map +1 -1
  63. package/dist/executions/execution.types.d.ts +3 -0
  64. package/dist/executions/executions.controller.d.ts +5 -0
  65. package/dist/executions/executions.controller.js +13 -0
  66. package/dist/executions/executions.controller.js.map +1 -1
  67. package/dist/executions/pre-execution-checks/credentials-permission-checker.js +4 -0
  68. package/dist/executions/pre-execution-checks/credentials-permission-checker.js.map +1 -1
  69. package/dist/license.d.ts +0 -1
  70. package/dist/license.js +0 -3
  71. package/dist/license.js.map +1 -1
  72. package/dist/load-nodes-and-credentials.js +4 -0
  73. package/dist/load-nodes-and-credentials.js.map +1 -1
  74. package/dist/modules/chat-hub/chat-hub-title.service.d.ts +3 -1
  75. package/dist/modules/chat-hub/chat-hub-title.service.js +9 -3
  76. package/dist/modules/chat-hub/chat-hub-title.service.js.map +1 -1
  77. package/dist/modules/chat-hub/chat-hub-tool.service.d.ts +3 -1
  78. package/dist/modules/chat-hub/chat-hub-tool.service.js +13 -3
  79. package/dist/modules/chat-hub/chat-hub-tool.service.js.map +1 -1
  80. package/dist/modules/chat-hub/chat-hub-workflow.service.d.ts +5 -5
  81. package/dist/modules/chat-hub/chat-hub-workflow.service.js +18 -13
  82. package/dist/modules/chat-hub/chat-hub-workflow.service.js.map +1 -1
  83. package/dist/modules/chat-hub/chat-hub.module.d.ts +2 -0
  84. package/dist/modules/chat-hub/chat-hub.settings.controller.d.ts +6 -0
  85. package/dist/modules/data-table/csv-parser.service.d.ts +12 -1
  86. package/dist/modules/data-table/csv-parser.service.js +81 -74
  87. package/dist/modules/data-table/csv-parser.service.js.map +1 -1
  88. package/dist/modules/data-table/data-table-csv-import.service.d.ts +21 -0
  89. package/dist/modules/data-table/data-table-csv-import.service.js +123 -0
  90. package/dist/modules/data-table/data-table-csv-import.service.js.map +1 -0
  91. package/dist/modules/data-table/data-table-rows.repository.js +3 -1
  92. package/dist/modules/data-table/data-table-rows.repository.js.map +1 -1
  93. package/dist/modules/data-table/data-table.controller.d.ts +7 -1
  94. package/dist/modules/data-table/data-table.controller.js +36 -0
  95. package/dist/modules/data-table/data-table.controller.js.map +1 -1
  96. package/dist/modules/data-table/data-table.service.d.ts +7 -6
  97. package/dist/modules/data-table/data-table.service.js +24 -47
  98. package/dist/modules/data-table/data-table.service.js.map +1 -1
  99. package/dist/modules/data-table/utils/sql-utils.js +2 -3
  100. package/dist/modules/data-table/utils/sql-utils.js.map +1 -1
  101. package/dist/modules/dynamic-credentials.ee/credential-resolvers/identifiers/oauth2-introspection-identifier.js +15 -3
  102. package/dist/modules/dynamic-credentials.ee/credential-resolvers/identifiers/oauth2-introspection-identifier.js.map +1 -1
  103. package/dist/modules/dynamic-credentials.ee/credential-resolvers/identifiers/oauth2-userinfo-identifier.js +13 -1
  104. package/dist/modules/dynamic-credentials.ee/credential-resolvers/identifiers/oauth2-userinfo-identifier.js.map +1 -1
  105. package/dist/modules/dynamic-credentials.ee/credential-resolvers.controller.d.ts +2 -1
  106. package/dist/modules/dynamic-credentials.ee/credential-resolvers.controller.js +32 -2
  107. package/dist/modules/dynamic-credentials.ee/credential-resolvers.controller.js.map +1 -1
  108. package/dist/modules/dynamic-credentials.ee/dynamic-credentials.module.d.ts +5 -0
  109. package/dist/modules/dynamic-credentials.ee/dynamic-credentials.module.js +7 -0
  110. package/dist/modules/dynamic-credentials.ee/dynamic-credentials.module.js.map +1 -1
  111. package/dist/modules/dynamic-credentials.ee/services/credential-check-proxy.service.d.ts +14 -0
  112. package/dist/modules/dynamic-credentials.ee/services/credential-check-proxy.service.js +77 -0
  113. package/dist/modules/dynamic-credentials.ee/services/credential-check-proxy.service.js.map +1 -0
  114. package/dist/modules/dynamic-credentials.ee/services/credential-resolver.service.d.ts +9 -2
  115. package/dist/modules/dynamic-credentials.ee/services/credential-resolver.service.js +34 -3
  116. package/dist/modules/dynamic-credentials.ee/services/credential-resolver.service.js.map +1 -1
  117. package/dist/modules/dynamic-credentials.ee/services/index.d.ts +1 -0
  118. package/dist/modules/dynamic-credentials.ee/services/index.js +1 -0
  119. package/dist/modules/dynamic-credentials.ee/services/index.js.map +1 -1
  120. package/dist/modules/external-secrets.ee/providers/vault.d.ts +3 -0
  121. package/dist/modules/external-secrets.ee/providers/vault.js +77 -29
  122. package/dist/modules/external-secrets.ee/providers/vault.js.map +1 -1
  123. package/dist/modules/external-secrets.ee/secrets-providers-connections.service.ee.d.ts +4 -2
  124. package/dist/modules/external-secrets.ee/secrets-providers-connections.service.ee.js +28 -6
  125. package/dist/modules/external-secrets.ee/secrets-providers-connections.service.ee.js.map +1 -1
  126. package/dist/modules/log-streaming.ee/destinations/message-event-bus-destination-webhook.ee.d.ts +3 -0
  127. package/dist/modules/log-streaming.ee/destinations/message-event-bus-destination-webhook.ee.js +35 -25
  128. package/dist/modules/log-streaming.ee/destinations/message-event-bus-destination-webhook.ee.js.map +1 -1
  129. package/dist/modules/log-streaming.ee/log-streaming-destination.service.js +2 -2
  130. package/dist/modules/log-streaming.ee/log-streaming-destination.service.js.map +1 -1
  131. package/dist/modules/mcp/mcp-oauth-service.d.ts +5 -1
  132. package/dist/modules/mcp/mcp-oauth-service.js +36 -18
  133. package/dist/modules/mcp/mcp-oauth-service.js.map +1 -1
  134. package/dist/modules/mcp/mcp.oauth.controller.js +15 -0
  135. package/dist/modules/mcp/mcp.oauth.controller.js.map +1 -1
  136. package/dist/modules/mcp/mcp.service.d.ts +3 -2
  137. package/dist/modules/mcp/mcp.service.js +11 -10
  138. package/dist/modules/mcp/mcp.service.js.map +1 -1
  139. package/dist/modules/mcp/tools/get-execution.tool.d.ts +9 -0
  140. package/dist/modules/mcp/tools/get-execution.tool.js +95 -20
  141. package/dist/modules/mcp/tools/get-execution.tool.js.map +1 -1
  142. package/dist/modules/mcp/tools/search-folders.tool.d.ts +12 -0
  143. package/dist/modules/mcp/tools/search-folders.tool.js +107 -0
  144. package/dist/modules/mcp/tools/search-folders.tool.js.map +1 -0
  145. package/dist/modules/mcp/tools/search-projects.tool.d.ts +11 -0
  146. package/dist/modules/mcp/tools/search-projects.tool.js +93 -0
  147. package/dist/modules/mcp/tools/search-projects.tool.js.map +1 -0
  148. package/dist/modules/mcp/tools/workflow-builder/create-workflow-from-code.tool.d.ts +1 -0
  149. package/dist/modules/mcp/tools/workflow-builder/create-workflow-from-code.tool.js +25 -12
  150. package/dist/modules/mcp/tools/workflow-builder/create-workflow-from-code.tool.js.map +1 -1
  151. package/dist/modules/mcp/tools/workflow-builder/update-workflow.tool.js +9 -7
  152. package/dist/modules/mcp/tools/workflow-builder/update-workflow.tool.js.map +1 -1
  153. package/dist/modules/provisioning.ee/claims-context.builder.d.ts +4 -0
  154. package/dist/modules/provisioning.ee/claims-context.builder.js +31 -0
  155. package/dist/modules/provisioning.ee/claims-context.builder.js.map +1 -0
  156. package/dist/modules/provisioning.ee/role-resolver-types.d.ts +35 -0
  157. package/dist/modules/provisioning.ee/role-resolver-types.js +3 -0
  158. package/dist/modules/provisioning.ee/role-resolver-types.js.map +1 -0
  159. package/dist/modules/provisioning.ee/role-resolver.service.ee.d.ts +13 -0
  160. package/dist/modules/provisioning.ee/role-resolver.service.ee.js +103 -0
  161. package/dist/modules/provisioning.ee/role-resolver.service.ee.js.map +1 -0
  162. package/dist/modules/redaction/executions/execution-redaction.interfaces.d.ts +3 -0
  163. package/dist/modules/redaction/executions/execution-redaction.service.d.ts +1 -0
  164. package/dist/modules/redaction/executions/execution-redaction.service.js +42 -10
  165. package/dist/modules/redaction/executions/execution-redaction.service.js.map +1 -1
  166. package/dist/modules/redaction/executions/strategies/full-item-redaction.strategy.d.ts +1 -0
  167. package/dist/modules/redaction/executions/strategies/full-item-redaction.strategy.js +8 -1
  168. package/dist/modules/redaction/executions/strategies/full-item-redaction.strategy.js.map +1 -1
  169. package/dist/modules/redaction/executions/strategies/node-defined-field-redaction.strategy.d.ts +4 -1
  170. package/dist/modules/redaction/executions/strategies/node-defined-field-redaction.strategy.js +52 -16
  171. package/dist/modules/redaction/executions/strategies/node-defined-field-redaction.strategy.js.map +1 -1
  172. package/dist/modules/sso-oidc/oidc.service.ee.js +6 -5
  173. package/dist/modules/sso-oidc/oidc.service.ee.js.map +1 -1
  174. package/dist/modules/sso-saml/saml.controller.ee.d.ts +32 -1
  175. package/dist/modules/sso-saml/saml.controller.ee.js +9 -1
  176. package/dist/modules/sso-saml/saml.controller.ee.js.map +1 -1
  177. package/dist/modules/sso-saml/saml.service.ee.d.ts +9 -2
  178. package/dist/modules/sso-saml/saml.service.ee.js +110 -8
  179. package/dist/modules/sso-saml/saml.service.ee.js.map +1 -1
  180. package/dist/modules/workflow-index/workflow-dependency-query.service.d.ts +25 -0
  181. package/dist/modules/workflow-index/workflow-dependency-query.service.js +220 -0
  182. package/dist/modules/workflow-index/workflow-dependency-query.service.js.map +1 -0
  183. package/dist/modules/workflow-index/workflow-dependency.controller.d.ts +12 -0
  184. package/dist/modules/workflow-index/workflow-dependency.controller.js +60 -0
  185. package/dist/modules/workflow-index/workflow-dependency.controller.js.map +1 -0
  186. package/dist/public-api/v1/handlers/audit/audit.handler.d.ts +1 -4
  187. package/dist/public-api/v1/handlers/credentials/credentials.handler.d.ts +8 -11
  188. package/dist/public-api/v1/handlers/data-tables/data-tables.handler.d.ts +8 -8
  189. package/dist/public-api/v1/handlers/data-tables/data-tables.rows.handler.d.ts +10 -10
  190. package/dist/public-api/v1/handlers/discover/discover.handler.d.ts +10 -0
  191. package/dist/public-api/v1/handlers/discover/discover.handler.js +37 -0
  192. package/dist/public-api/v1/handlers/discover/discover.handler.js.map +1 -0
  193. package/dist/public-api/v1/handlers/discover/discover.service.d.ts +30 -0
  194. package/dist/public-api/v1/handlers/discover/discover.service.js +166 -0
  195. package/dist/public-api/v1/handlers/discover/discover.service.js.map +1 -0
  196. package/dist/public-api/v1/handlers/executions/executions.handler.d.ts +8 -8
  197. package/dist/public-api/v1/handlers/projects/projects.handler.d.ts +8 -32
  198. package/dist/public-api/v1/handlers/source-control/source-control.handler.d.ts +1 -4
  199. package/dist/public-api/v1/handlers/tags/tags.handler.d.ts +5 -20
  200. package/dist/public-api/v1/handlers/users/users.handler.ee.d.ts +5 -20
  201. package/dist/public-api/v1/handlers/variables/variables.handler.d.ts +4 -16
  202. package/dist/public-api/v1/handlers/variables/variables.handler.js +6 -19
  203. package/dist/public-api/v1/handlers/variables/variables.handler.js.map +1 -1
  204. package/dist/public-api/v1/handlers/workflows/workflows.handler.d.ts +20 -20
  205. package/dist/public-api/v1/handlers/workflows/workflows.handler.js +5 -2
  206. package/dist/public-api/v1/handlers/workflows/workflows.handler.js.map +1 -1
  207. package/dist/public-api/v1/openapi.yml +122 -0
  208. package/dist/public-api/v1/shared/middlewares/global.middleware.d.ts +5 -6
  209. package/dist/public-api/v1/shared/middlewares/global.middleware.js +8 -14
  210. package/dist/public-api/v1/shared/middlewares/global.middleware.js.map +1 -1
  211. package/dist/public-api/v1/shared/services/pagination.service.d.ts +7 -0
  212. package/dist/public-api/v1/shared/services/pagination.service.js +11 -0
  213. package/dist/public-api/v1/shared/services/pagination.service.js.map +1 -1
  214. package/dist/scaling/job-processor.js +10 -0
  215. package/dist/scaling/job-processor.js.map +1 -1
  216. package/dist/scaling/scaling.types.d.ts +2 -0
  217. package/dist/server.d.ts +1 -0
  218. package/dist/server.js +1 -0
  219. package/dist/server.js.map +1 -1
  220. package/dist/services/credentials-tester.service.js +2 -2
  221. package/dist/services/credentials-tester.service.js.map +1 -1
  222. package/dist/services/frontend.service.js +1 -3
  223. package/dist/services/frontend.service.js.map +1 -1
  224. package/dist/services/import.service.d.ts +1 -1
  225. package/dist/services/import.service.js +3 -3
  226. package/dist/services/import.service.js.map +1 -1
  227. package/dist/services/project.service.ee.d.ts +4 -0
  228. package/dist/services/project.service.ee.js +27 -0
  229. package/dist/services/project.service.ee.js.map +1 -1
  230. package/dist/services/public-api-key.service.js +1 -0
  231. package/dist/services/public-api-key.service.js.map +1 -1
  232. package/dist/services/user.service.d.ts +2 -11
  233. package/dist/services/user.service.js +11 -75
  234. package/dist/services/user.service.js.map +1 -1
  235. package/dist/task-runners/task-broker/task-broker.service.js +8 -0
  236. package/dist/task-runners/task-broker/task-broker.service.js.map +1 -1
  237. package/dist/task-runners/task-managers/data-request-response-builder.js +1 -0
  238. package/dist/task-runners/task-managers/data-request-response-builder.js.map +1 -1
  239. package/dist/task-runners/task-managers/data-request-response-stripper.js +1 -0
  240. package/dist/task-runners/task-managers/data-request-response-stripper.js.map +1 -1
  241. package/dist/task-runners/task-managers/local-task-requester.js +3 -1
  242. package/dist/task-runners/task-managers/local-task-requester.js.map +1 -1
  243. package/dist/task-runners/task-managers/task-requester.d.ts +1 -1
  244. package/dist/task-runners/task-managers/task-requester.js.map +1 -1
  245. package/dist/telemetry/index.d.ts +19 -0
  246. package/dist/telemetry/index.js +35 -0
  247. package/dist/telemetry/index.js.map +1 -1
  248. package/dist/user-management/email/node-mailer.d.ts +1 -0
  249. package/dist/user-management/email/node-mailer.js +23 -1
  250. package/dist/user-management/email/node-mailer.js.map +1 -1
  251. package/dist/webhooks/waiting-forms.d.ts +1 -1
  252. package/dist/webhooks/waiting-forms.js +32 -35
  253. package/dist/webhooks/waiting-forms.js.map +1 -1
  254. package/dist/webhooks/waiting-webhooks.d.ts +11 -3
  255. package/dist/webhooks/waiting-webhooks.js +47 -32
  256. package/dist/webhooks/waiting-webhooks.js.map +1 -1
  257. package/dist/webhooks/webhook-helpers.js +6 -1
  258. package/dist/webhooks/webhook-helpers.js.map +1 -1
  259. package/dist/webhooks/webhook.service.js +2 -5
  260. package/dist/webhooks/webhook.service.js.map +1 -1
  261. package/dist/workflow-helpers.d.ts +3 -2
  262. package/dist/workflow-helpers.js +18 -9
  263. package/dist/workflow-helpers.js.map +1 -1
  264. package/dist/workflow-runner.js +10 -2
  265. package/dist/workflow-runner.js.map +1 -1
  266. package/dist/workflows/workflow-creation.service.js +6 -6
  267. package/dist/workflows/workflow-creation.service.js.map +1 -1
  268. package/dist/workflows/workflow-execution.service.d.ts +3 -1
  269. package/dist/workflows/workflow-execution.service.js +16 -4
  270. package/dist/workflows/workflow-execution.service.js.map +1 -1
  271. package/dist/workflows/workflow.service.js +3 -1
  272. package/dist/workflows/workflow.service.js.map +1 -1
  273. package/package.json +22 -21
  274. package/templates/form-invalid-token.handlebars +131 -0
  275. package/templates/form-trigger-completion.handlebars +24 -3
  276. package/templates/form-trigger.handlebars +24 -2
@@ -11,6 +11,7 @@ var __metadata = (this && this.__metadata) || function (k, v) {
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.McpOAuthService = exports.SUPPORTED_SCOPES = void 0;
13
13
  const backend_common_1 = require("@n8n/backend-common");
14
+ const config_1 = require("@n8n/config");
14
15
  const di_1 = require("@n8n/di");
15
16
  const oauth_client_repository_1 = require("./database/repositories/oauth-client.repository");
16
17
  const oauth_user_consent_repository_1 = require("./database/repositories/oauth-user-consent.repository");
@@ -18,9 +19,12 @@ const mcp_oauth_authorization_code_service_1 = require("./mcp-oauth-authorizatio
18
19
  const mcp_oauth_token_service_1 = require("./mcp-oauth-token.service");
19
20
  const oauth_session_service_1 = require("./oauth-session.service");
20
21
  exports.SUPPORTED_SCOPES = ['tool:listWorkflows', 'tool:getWorkflowDetails'];
22
+ const MAX_REDIRECT_URIS = 10;
23
+ const MAX_REDIRECT_URI_LENGTH = 2048;
21
24
  let McpOAuthService = class McpOAuthService {
22
- constructor(logger, oauthSessionService, oauthClientRepository, tokenService, authorizationCodeService, userConsentRepository) {
25
+ constructor(logger, globalConfig, oauthSessionService, oauthClientRepository, tokenService, authorizationCodeService, userConsentRepository) {
23
26
  this.logger = logger;
27
+ this.globalConfig = globalConfig;
24
28
  this.oauthSessionService = oauthSessionService;
25
29
  this.oauthClientRepository = oauthClientRepository;
26
30
  this.tokenService = tokenService;
@@ -51,27 +55,40 @@ let McpOAuthService = class McpOAuthService {
51
55
  };
52
56
  },
53
57
  registerClient: async (client) => {
54
- try {
55
- await this.oauthClientRepository.insert({
56
- id: client.client_id,
57
- name: client.client_name,
58
- redirectUris: client.redirect_uris,
59
- grantTypes: client.grant_types,
60
- clientSecret: client.client_secret ?? null,
61
- clientSecretExpiresAt: client.client_secret_expires_at ?? null,
62
- tokenEndpointAuthMethod: client.token_endpoint_auth_method ?? 'none',
63
- });
64
- }
65
- catch (error) {
66
- this.logger.error('Error registering OAuth client', {
67
- error,
68
- clientId: client.client_id,
69
- });
70
- }
58
+ this.validateClientRegistration(client);
59
+ await this.oauthClientRepository.insert({
60
+ id: client.client_id,
61
+ name: client.client_name,
62
+ redirectUris: client.redirect_uris,
63
+ grantTypes: client.grant_types,
64
+ clientSecret: client.client_secret ?? null,
65
+ clientSecretExpiresAt: client.client_secret_expires_at ?? null,
66
+ tokenEndpointAuthMethod: client.token_endpoint_auth_method ?? 'none',
67
+ });
68
+ await this.enforceClientLimit(client.client_id);
71
69
  return client;
72
70
  },
73
71
  };
74
72
  }
73
+ async enforceClientLimit(clientId) {
74
+ const clientCount = await this.oauthClientRepository.count();
75
+ if (clientCount > this.globalConfig.endpoints.mcpMaxRegisteredClients) {
76
+ await this.oauthClientRepository.delete({ id: clientId });
77
+ throw new Error(`Maximum number of registered clients (${this.globalConfig.endpoints.mcpMaxRegisteredClients}) reached`);
78
+ }
79
+ }
80
+ validateClientRegistration(client) {
81
+ if (client.redirect_uris) {
82
+ if (client.redirect_uris.length > MAX_REDIRECT_URIS) {
83
+ throw new Error(`redirect_uris exceeds maximum count of ${MAX_REDIRECT_URIS}`);
84
+ }
85
+ for (const uri of client.redirect_uris) {
86
+ if (uri.length > MAX_REDIRECT_URI_LENGTH) {
87
+ throw new Error(`redirect_uri exceeds maximum length of ${MAX_REDIRECT_URI_LENGTH} characters`);
88
+ }
89
+ }
90
+ }
91
+ }
75
92
  async authorize(client, params, res) {
76
93
  this.logger.debug('Starting OAuth authorization', { clientId: client.client_id });
77
94
  try {
@@ -157,6 +174,7 @@ exports.McpOAuthService = McpOAuthService;
157
174
  exports.McpOAuthService = McpOAuthService = __decorate([
158
175
  (0, di_1.Service)(),
159
176
  __metadata("design:paramtypes", [backend_common_1.Logger,
177
+ config_1.GlobalConfig,
160
178
  oauth_session_service_1.OAuthSessionService,
161
179
  oauth_client_repository_1.OAuthClientRepository,
162
180
  mcp_oauth_token_service_1.McpOAuthTokenService,
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-oauth-service.js","sourceRoot":"","sources":["../../../src/modules/mcp/mcp-oauth-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mcp-oauth-service.js","sourceRoot":"","sources":["../../../src/modules/mcp/mcp-oauth-service.ts"],"names":[],"mappings":"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"}
@@ -19,7 +19,18 @@ const decorators_1 = require("@n8n/decorators");
19
19
  const di_1 = require("@n8n/di");
20
20
  const url_service_1 = require("../../services/url.service");
21
21
  const mcp_oauth_service_1 = require("./mcp-oauth-service");
22
+ const mcp_constants_1 = require("./mcp.constants");
23
+ const mcp_settings_service_1 = require("./mcp.settings.service");
22
24
  const mcpOAuthService = di_1.Container.get(mcp_oauth_service_1.McpOAuthService);
25
+ const mcpSettingsService = di_1.Container.get(mcp_settings_service_1.McpSettingsService);
26
+ const mcpEnabledGuard = async (_req, res, next) => {
27
+ const enabled = await mcpSettingsService.getEnabled();
28
+ if (!enabled) {
29
+ res.status(403).json({ error: mcp_constants_1.MCP_ACCESS_DISABLED_ERROR_MESSAGE });
30
+ return;
31
+ }
32
+ next();
33
+ };
23
34
  let McpOAuthController = class McpOAuthController {
24
35
  constructor(urlService) {
25
36
  this.urlService = urlService;
@@ -71,24 +82,28 @@ McpOAuthController.routers = [
71
82
  path: '/mcp-oauth/register',
72
83
  router: (0, register_js_1.clientRegistrationHandler)({ clientsStore: mcpOAuthService.clientsStore }),
73
84
  skipAuth: true,
85
+ middlewares: [mcpEnabledGuard],
74
86
  ipRateLimit: { limit: 10, windowMs: 5 * constants_1.Time.minutes.toMilliseconds },
75
87
  },
76
88
  {
77
89
  path: '/mcp-oauth/authorize',
78
90
  router: (0, authorize_js_1.authorizationHandler)({ provider: mcpOAuthService }),
79
91
  skipAuth: true,
92
+ middlewares: [mcpEnabledGuard],
80
93
  ipRateLimit: { limit: 50, windowMs: 5 * constants_1.Time.minutes.toMilliseconds },
81
94
  },
82
95
  {
83
96
  path: '/mcp-oauth/token',
84
97
  router: (0, token_js_1.tokenHandler)({ provider: mcpOAuthService }),
85
98
  skipAuth: true,
99
+ middlewares: [mcpEnabledGuard],
86
100
  ipRateLimit: { limit: 20, windowMs: 5 * constants_1.Time.minutes.toMilliseconds },
87
101
  },
88
102
  {
89
103
  path: '/mcp-oauth/revoke',
90
104
  router: (0, revoke_js_1.revocationHandler)({ provider: mcpOAuthService }),
91
105
  skipAuth: true,
106
+ middlewares: [mcpEnabledGuard],
92
107
  ipRateLimit: { limit: 30, windowMs: 5 * constants_1.Time.minutes.toMilliseconds },
93
108
  },
94
109
  ];
@@ -1 +1 @@
1
- {"version":3,"file":"mcp.oauth.controller.js","sourceRoot":"","sources":["../../../src/modules/mcp/mcp.oauth.controller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mcp.oauth.controller.js","sourceRoot":"","sources":["../../../src/modules/mcp/mcp.oauth.controller.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import type { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
2
2
  import { Logger } from '@n8n/backend-common';
3
3
  import { ExecutionsConfig, GlobalConfig } from '@n8n/config';
4
- import { ExecutionRepository, ProjectRepository, SharedWorkflowRepository, User } from '@n8n/db';
4
+ import { ExecutionRepository, FolderRepository, ProjectRepository, SharedWorkflowRepository, User } from '@n8n/db';
5
5
  import { InstanceSettings } from 'n8n-core';
6
6
  import { type IDeferredPromise, type IRun } from 'n8n-workflow';
7
7
  import { WorkflowBuilderToolsService } from './tools/workflow-builder/workflow-builder-tools.service';
@@ -33,10 +33,11 @@ export declare class McpService {
33
33
  private readonly workflowCreationService;
34
34
  private readonly nodeTypes;
35
35
  private readonly projectRepository;
36
+ private readonly folderRepository;
36
37
  private readonly sharedWorkflowRepository;
37
38
  private readonly executionRepository;
38
39
  private readonly pendingResponses;
39
- constructor(logger: Logger, executionsConfig: ExecutionsConfig, _instanceSettings: InstanceSettings, workflowFinderService: WorkflowFinderService, workflowService: WorkflowService, urlService: UrlService, credentialsService: CredentialsService, activeExecutions: ActiveExecutions, globalConfig: GlobalConfig, telemetry: Telemetry, workflowRunner: WorkflowRunner, roleService: RoleService, projectService: ProjectService, workflowBuilderToolsService: WorkflowBuilderToolsService, workflowCreationService: WorkflowCreationService, nodeTypes: NodeTypes, projectRepository: ProjectRepository, sharedWorkflowRepository: SharedWorkflowRepository, executionRepository: ExecutionRepository);
40
+ constructor(logger: Logger, executionsConfig: ExecutionsConfig, _instanceSettings: InstanceSettings, workflowFinderService: WorkflowFinderService, workflowService: WorkflowService, urlService: UrlService, credentialsService: CredentialsService, activeExecutions: ActiveExecutions, globalConfig: GlobalConfig, telemetry: Telemetry, workflowRunner: WorkflowRunner, roleService: RoleService, projectService: ProjectService, workflowBuilderToolsService: WorkflowBuilderToolsService, workflowCreationService: WorkflowCreationService, nodeTypes: NodeTypes, projectRepository: ProjectRepository, folderRepository: FolderRepository, sharedWorkflowRepository: SharedWorkflowRepository, executionRepository: ExecutionRepository);
40
41
  getServer(user: User): Promise<McpServer>;
41
42
  private registerBuilderTools;
42
43
  get isQueueMode(): boolean;
@@ -51,6 +51,8 @@ const n8n_core_1 = require("n8n-core");
51
51
  const n8n_workflow_1 = require("n8n-workflow");
52
52
  const execute_workflow_tool_1 = require("./tools/execute-workflow.tool");
53
53
  const get_execution_tool_1 = require("./tools/get-execution.tool");
54
+ const search_folders_tool_1 = require("./tools/search-folders.tool");
55
+ const search_projects_tool_1 = require("./tools/search-projects.tool");
54
56
  const get_workflow_details_tool_1 = require("./tools/get-workflow-details.tool");
55
57
  const publish_workflow_tool_1 = require("./tools/publish-workflow.tool");
56
58
  const search_workflows_tool_1 = require("./tools/search-workflows.tool");
@@ -78,7 +80,7 @@ const workflow_creation_service_1 = require("../../workflows/workflow-creation.s
78
80
  const workflow_finder_service_1 = require("../../workflows/workflow-finder.service");
79
81
  const workflow_service_1 = require("../../workflows/workflow.service");
80
82
  let McpService = class McpService {
81
- constructor(logger, executionsConfig, _instanceSettings, workflowFinderService, workflowService, urlService, credentialsService, activeExecutions, globalConfig, telemetry, workflowRunner, roleService, projectService, workflowBuilderToolsService, workflowCreationService, nodeTypes, projectRepository, sharedWorkflowRepository, executionRepository) {
83
+ constructor(logger, executionsConfig, _instanceSettings, workflowFinderService, workflowService, urlService, credentialsService, activeExecutions, globalConfig, telemetry, workflowRunner, roleService, projectService, workflowBuilderToolsService, workflowCreationService, nodeTypes, projectRepository, folderRepository, sharedWorkflowRepository, executionRepository) {
82
84
  this.logger = logger;
83
85
  this.executionsConfig = executionsConfig;
84
86
  this.workflowFinderService = workflowFinderService;
@@ -95,6 +97,7 @@ let McpService = class McpService {
95
97
  this.workflowCreationService = workflowCreationService;
96
98
  this.nodeTypes = nodeTypes;
97
99
  this.projectRepository = projectRepository;
100
+ this.folderRepository = folderRepository;
98
101
  this.sharedWorkflowRepository = sharedWorkflowRepository;
99
102
  this.executionRepository = executionRepository;
100
103
  this.pendingResponses = new Map();
@@ -140,12 +143,16 @@ let McpService = class McpService {
140
143
  server.registerTool(validateTool.name, validateTool.config, validateTool.handler);
141
144
  const createTool = (0, create_workflow_from_code_tool_1.createCreateWorkflowFromCodeTool)(user, this.workflowCreationService, this.urlService, this.telemetry, this.nodeTypes, this.credentialsService, this.projectRepository);
142
145
  server.registerTool(createTool.name, createTool.config, createTool.handler);
146
+ const searchProjectsTool = (0, search_projects_tool_1.createSearchProjectsTool)(user, this.projectRepository, this.telemetry);
147
+ server.registerTool(searchProjectsTool.name, searchProjectsTool.config, searchProjectsTool.handler);
148
+ const searchFoldersTool = (0, search_folders_tool_1.createSearchFoldersTool)(user, this.folderRepository, this.projectService, this.telemetry);
149
+ server.registerTool(searchFoldersTool.name, searchFoldersTool.config, searchFoldersTool.handler);
143
150
  const archiveTool = (0, delete_workflow_tool_1.createArchiveWorkflowTool)(user, this.workflowService, this.telemetry);
144
151
  server.registerTool(archiveTool.name, archiveTool.config, archiveTool.handler);
145
152
  const updateTool = (0, update_workflow_tool_1.createUpdateWorkflowTool)(user, this.workflowFinderService, this.workflowService, this.urlService, this.telemetry, this.nodeTypes, this.credentialsService, this.sharedWorkflowRepository);
146
153
  server.registerTool(updateTool.name, updateTool.config, updateTool.handler);
147
154
  server.resource('workflow-sdk-reference', 'n8n://workflow-sdk/reference', {
148
- description: 'n8n Workflow SDK reference — patterns, expressions, and rules for building workflows',
155
+ description: 'n8n Workflow SDK reference — patterns, expressions, and rules for building workflows. Get this FIRST before building workflows to learn the SDK.',
149
156
  }, async () => ({
150
157
  contents: [
151
158
  {
@@ -156,14 +163,7 @@ let McpService = class McpService {
156
163
  ],
157
164
  }));
158
165
  const sdkRefTool = (0, get_workflow_sdk_reference_tool_1.createGetWorkflowSdkReferenceTool)(user, this.telemetry);
159
- const registeredSdkRefTool = server.registerTool(sdkRefTool.name, sdkRefTool.config, sdkRefTool.handler);
160
- registeredSdkRefTool.disable();
161
- server.server.oninitialized = () => {
162
- const capabilities = server.server.getClientCapabilities();
163
- if (!capabilities || !('resources' in capabilities)) {
164
- registeredSdkRefTool.enable();
165
- }
166
- };
166
+ server.registerTool(sdkRefTool.name, sdkRefTool.config, sdkRefTool.handler);
167
167
  }
168
168
  get isQueueMode() {
169
169
  return this.executionsConfig.mode === 'queue';
@@ -240,6 +240,7 @@ exports.McpService = McpService = __decorate([
240
240
  workflow_creation_service_1.WorkflowCreationService,
241
241
  node_types_1.NodeTypes,
242
242
  db_1.ProjectRepository,
243
+ db_1.FolderRepository,
243
244
  db_1.SharedWorkflowRepository,
244
245
  db_1.ExecutionRepository])
245
246
  ], McpService);
@@ -1 +1 @@
1
- {"version":3,"file":"mcp.service.js","sourceRoot":"","sources":["../../../src/modules/mcp/mcp.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mcp.service.js","sourceRoot":"","sources":["../../../src/modules/mcp/mcp.service.ts"],"names":[],"mappings":"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"}
@@ -6,12 +6,21 @@ import type { WorkflowFinderService } from '../../../workflows/workflow-finder.s
6
6
  declare const inputSchema: z.ZodObject<{
7
7
  workflowId: z.ZodString;
8
8
  executionId: z.ZodString;
9
+ includeData: z.ZodOptional<z.ZodBoolean>;
10
+ nodeNames: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
11
+ truncateData: z.ZodOptional<z.ZodNumber>;
9
12
  }, "strip", z.ZodTypeAny, {
10
13
  executionId: string;
11
14
  workflowId: string;
15
+ includeData?: boolean | undefined;
16
+ nodeNames?: string[] | undefined;
17
+ truncateData?: number | undefined;
12
18
  }, {
13
19
  executionId: string;
14
20
  workflowId: string;
21
+ includeData?: boolean | undefined;
22
+ nodeNames?: string[] | undefined;
23
+ truncateData?: number | undefined;
15
24
  }>;
16
25
  export declare const createGetExecutionTool: (user: User, executionRepository: ExecutionRepository, workflowFinderService: WorkflowFinderService, telemetry: Telemetry) => ToolDefinition<typeof inputSchema.shape>;
17
26
  export {};
@@ -12,6 +12,20 @@ const workflow_validation_utils_1 = require("./workflow-validation.utils");
12
12
  const inputSchema = zod_1.default.object({
13
13
  workflowId: zod_1.default.string().describe('The ID of the workflow the execution belongs to'),
14
14
  executionId: zod_1.default.string().describe('The ID of the execution to retrieve'),
15
+ includeData: zod_1.default
16
+ .boolean()
17
+ .optional()
18
+ .describe('Whether to include the full execution result data. Defaults to false (metadata only). Set to true to include node inputs/outputs.'),
19
+ nodeNames: zod_1.default
20
+ .array(zod_1.default.string())
21
+ .optional()
22
+ .describe('When includeData is true, return data only for these node names. If omitted, data for all nodes is included.'),
23
+ truncateData: zod_1.default
24
+ .number()
25
+ .int()
26
+ .positive()
27
+ .optional()
28
+ .describe('When includeData is true, limit the number of data items returned per node output to this value. If omitted, all items are returned.'),
15
29
  });
16
30
  const outputSchema = {
17
31
  execution: zod_1.default
@@ -29,13 +43,16 @@ const outputSchema = {
29
43
  .passthrough()
30
44
  .nullable()
31
45
  .describe('Execution metadata, or null if an error occurred'),
32
- data: zod_1.default.unknown().optional().describe('Full execution result data'),
46
+ data: zod_1.default
47
+ .unknown()
48
+ .optional()
49
+ .describe('Execution result data (only present when includeData is true)'),
33
50
  error: zod_1.default.string().optional().describe('Error message if the request failed'),
34
51
  };
35
52
  const createGetExecutionTool = (user, executionRepository, workflowFinderService, telemetry) => ({
36
53
  name: 'get_execution',
37
54
  config: {
38
- description: 'Get full execution details and results using the execution ID and workflow ID',
55
+ description: 'Get execution details by execution ID and workflow ID. By default returns metadata only. Set includeData to true to include node execution data, optionally filtered by nodeNames and truncated by truncateData.',
39
56
  inputSchema: inputSchema.shape,
40
57
  outputSchema,
41
58
  annotations: {
@@ -46,17 +63,26 @@ const createGetExecutionTool = (user, executionRepository, workflowFinderService
46
63
  openWorldHint: false,
47
64
  },
48
65
  },
49
- handler: async ({ workflowId, executionId }) => {
66
+ handler: async ({ workflowId, executionId, includeData, nodeNames, truncateData, }) => {
50
67
  const telemetryPayload = {
51
68
  user_id: user.id,
52
69
  tool_name: 'get_execution',
53
- parameters: { workflowId, executionId },
70
+ parameters: { workflowId, executionId, includeData, nodeNames, truncateData },
54
71
  };
55
72
  try {
56
73
  await (0, workflow_validation_utils_1.getMcpWorkflow)(workflowId, user, ['workflow:read'], workflowFinderService);
57
- const execution = await executionRepository.findWithUnflattenedData(executionId, [
58
- workflowId,
59
- ]);
74
+ let execution;
75
+ let executionData;
76
+ if (includeData) {
77
+ const fullExecution = await executionRepository.findWithUnflattenedData(executionId, [
78
+ workflowId,
79
+ ]);
80
+ execution = fullExecution;
81
+ executionData = fullExecution?.data ?? null;
82
+ }
83
+ else {
84
+ execution = await executionRepository.findIfAccessible(executionId, [workflowId]);
85
+ }
60
86
  if (!execution) {
61
87
  const executionExists = await executionRepository.existsBy({ id: executionId });
62
88
  if (!executionExists) {
@@ -64,20 +90,30 @@ const createGetExecutionTool = (user, executionRepository, workflowFinderService
64
90
  }
65
91
  throw new mcp_errors_1.WorkflowAccessError(`Execution '${executionId}' does not belong to workflow '${workflowId}'`, 'execution_workflow_mismatch');
66
92
  }
67
- const output = {
68
- execution: {
69
- id: execution.id,
70
- workflowId: execution.workflowId,
71
- mode: execution.mode,
72
- status: execution.status,
73
- startedAt: execution.startedAt?.toISOString() ?? null,
74
- stoppedAt: execution.stoppedAt?.toISOString() ?? null,
75
- retryOf: execution.retryOf ?? null,
76
- retrySuccessId: execution.retrySuccessId ?? null,
77
- waitTill: execution.waitTill?.toISOString() ?? null,
78
- },
79
- data: execution.data,
93
+ const executionMeta = {
94
+ id: execution.id,
95
+ workflowId: execution.workflowId,
96
+ mode: execution.mode,
97
+ status: execution.status,
98
+ startedAt: execution.startedAt?.toISOString() ?? null,
99
+ stoppedAt: execution.stoppedAt?.toISOString() ?? null,
100
+ retryOf: execution.retryOf ?? null,
101
+ retrySuccessId: execution.retrySuccessId ?? null,
102
+ waitTill: execution.waitTill?.toISOString() ?? null,
80
103
  };
104
+ let filteredData;
105
+ if (executionData) {
106
+ filteredData = executionData;
107
+ if (nodeNames !== undefined || truncateData) {
108
+ filteredData = filterExecutionData(filteredData, nodeNames, truncateData);
109
+ }
110
+ }
111
+ else if (executionData === null) {
112
+ filteredData = null;
113
+ }
114
+ const output = filteredData !== undefined
115
+ ? { execution: executionMeta, data: filteredData }
116
+ : { execution: executionMeta };
81
117
  telemetryPayload.results = {
82
118
  success: true,
83
119
  data: {
@@ -123,4 +159,43 @@ const createGetExecutionTool = (user, executionRepository, workflowFinderService
123
159
  },
124
160
  });
125
161
  exports.createGetExecutionTool = createGetExecutionTool;
162
+ function filterExecutionData(data, nodeNames, truncateData) {
163
+ const filtered = { ...data, resultData: { ...data.resultData } };
164
+ let runData = filtered.resultData.runData ?? {};
165
+ if (nodeNames !== undefined) {
166
+ const filteredRunData = {};
167
+ for (const name of nodeNames) {
168
+ if (name in runData) {
169
+ filteredRunData[name] = runData[name];
170
+ }
171
+ }
172
+ runData = filteredRunData;
173
+ if (filtered.resultData.pinData) {
174
+ const filteredPinData = {};
175
+ for (const name of nodeNames) {
176
+ if (name in filtered.resultData.pinData) {
177
+ filteredPinData[name] = filtered.resultData.pinData[name];
178
+ }
179
+ }
180
+ filtered.resultData.pinData = filteredPinData;
181
+ }
182
+ }
183
+ if (truncateData) {
184
+ const truncated = {};
185
+ for (const [nodeName, taskDataArray] of Object.entries(runData)) {
186
+ truncated[nodeName] = taskDataArray.map((taskData) => {
187
+ if (!taskData.data)
188
+ return taskData;
189
+ const truncatedConnections = {};
190
+ for (const [connType, outputs] of Object.entries(taskData.data)) {
191
+ truncatedConnections[connType] = outputs.map((items) => items ? items.slice(0, truncateData) : items);
192
+ }
193
+ return { ...taskData, data: truncatedConnections };
194
+ });
195
+ }
196
+ runData = truncated;
197
+ }
198
+ filtered.resultData.runData = runData;
199
+ return filtered;
200
+ }
126
201
  //# sourceMappingURL=get-execution.tool.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"get-execution.tool.js","sourceRoot":"","sources":["../../../../src/modules/mcp/tools/get-execution.tool.ts"],"names":[],"mappings":";;;;;;AACA,+CAA0D;AAC1D,8CAAoB;AAEpB,oDAA8D;AAC9D,8CAAoD;AAEpD,2EAA6D;AAK7D,MAAM,WAAW,GAAG,aAAC,CAAC,MAAM,CAAC;IAC5B,UAAU,EAAE,aAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,iDAAiD,CAAC;IAClF,WAAW,EAAE,aAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,qCAAqC,CAAC;CACvE,CAAC,CAAC;AAEH,MAAM,YAAY,GAAG;IACpB,SAAS,EAAE,aAAC;SACV,MAAM,CAAC;QACP,EAAE,EAAE,aAAC,CAAC,MAAM,EAAE;QACd,UAAU,EAAE,aAAC,CAAC,MAAM,EAAE;QACtB,IAAI,EAAE,aAAC,CAAC,MAAM,EAAE;QAChB,MAAM,EAAE,aAAC,CAAC,MAAM,EAAE;QAClB,SAAS,EAAE,aAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QAChC,SAAS,EAAE,aAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QAChC,OAAO,EAAE,aAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;QACzC,cAAc,EAAE,aAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;QAChD,QAAQ,EAAE,aAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;KAC1C,CAAC;SACD,WAAW,EAAE;SACb,QAAQ,EAAE;SACV,QAAQ,CAAC,kDAAkD,CAAC;IAC9D,IAAI,EAAE,aAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,4BAA4B,CAAC;IACnE,KAAK,EAAE,aAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,qCAAqC,CAAC;CACpD,CAAC;AAEnB,MAAM,sBAAsB,GAAG,CACrC,IAAU,EACV,mBAAwC,EACxC,qBAA4C,EAC5C,SAAoB,EACuB,EAAE,CAAC,CAAC;IAC/C,IAAI,EAAE,eAAe;IACrB,MAAM,EAAE;QACP,WAAW,EAAE,+EAA+E;QAC5F,WAAW,EAAE,WAAW,CAAC,KAAK;QAC9B,YAAY;QACZ,WAAW,EAAE;YACZ,KAAK,EAAE,eAAe;YACtB,YAAY,EAAE,IAAI;YAClB,eAAe,EAAE,KAAK;YACtB,cAAc,EAAE,IAAI;YACpB,aAAa,EAAE,KAAK;SACpB;KACD;IACD,OAAO,EAAE,KAAK,EAAE,EAAE,UAAU,EAAE,WAAW,EAA+B,EAAE,EAAE;QAC3E,MAAM,gBAAgB,GAAkC;YACvD,OAAO,EAAE,IAAI,CAAC,EAAE;YAChB,SAAS,EAAE,eAAe;YAC1B,UAAU,EAAE,EAAE,UAAU,EAAE,WAAW,EAAE;SACvC,CAAC;QAEF,IAAI,CAAC;YACJ,MAAM,IAAA,0CAAc,EAAC,UAAU,EAAE,IAAI,EAAE,CAAC,eAAe,CAAC,EAAE,qBAAqB,CAAC,CAAC;YAGjF,MAAM,SAAS,GAAG,MAAM,mBAAmB,CAAC,uBAAuB,CAAC,WAAW,EAAE;gBAChF,UAAU;aACV,CAAC,CAAC;YAEH,IAAI,CAAC,SAAS,EAAE,CAAC;gBAEhB,MAAM,eAAe,GAAG,MAAM,mBAAmB,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;gBAChF,IAAI,CAAC,eAAe,EAAE,CAAC;oBACtB,MAAM,IAAI,gCAAmB,CAC5B,sBAAsB,WAAW,kBAAkB,EACnD,0BAA0B,CAC1B,CAAC;gBACH,CAAC;gBAED,MAAM,IAAI,gCAAmB,CAC5B,cAAc,WAAW,kCAAkC,UAAU,GAAG,EACxE,6BAA6B,CAC7B,CAAC;YACH,CAAC;YAED,MAAM,MAAM,GAAG;gBACd,SAAS,EAAE;oBACV,EAAE,EAAE,SAAS,CAAC,EAAE;oBAChB,UAAU,EAAE,SAAS,CAAC,UAAU;oBAChC,IAAI,EAAE,SAAS,CAAC,IAAI;oBACpB,MAAM,EAAE,SAAS,CAAC,MAAM;oBACxB,SAAS,EAAE,SAAS,CAAC,SAAS,EAAE,WAAW,EAAE,IAAI,IAAI;oBACrD,SAAS,EAAE,SAAS,CAAC,SAAS,EAAE,WAAW,EAAE,IAAI,IAAI;oBACrD,OAAO,EAAE,SAAS,CAAC,OAAO,IAAI,IAAI;oBAClC,cAAc,EAAE,SAAS,CAAC,cAAc,IAAI,IAAI;oBAChD,QAAQ,EAAE,SAAS,CAAC,QAAQ,EAAE,WAAW,EAAE,IAAI,IAAI;iBACnD;gBACD,IAAI,EAAE,SAAS,CAAC,IAAI;aACpB,CAAC;YAEF,gBAAgB,CAAC,OAAO,GAAG;gBAC1B,OAAO,EAAE,IAAI;gBACb,IAAI,EAAE;oBACL,WAAW;oBACX,MAAM,EAAE,SAAS,CAAC,MAAM;iBACxB;aACD,CAAC;YACF,SAAS,CAAC,KAAK,CAAC,0CAA0B,EAAE,gBAAgB,CAAC,CAAC;YAE9D,OAAO;gBACN,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAA,4BAAa,EAAC,MAAM,CAAC,EAAE,CAAC;gBACxD,iBAAiB,EAAE,MAAM;aACzB,CAAC;QACH,CAAC;QAAC,OAAO,EAAE,EAAE,CAAC;YACb,MAAM,KAAK,GAAG,IAAA,0BAAW,EAAC,EAAE,CAAC,CAAC;YAC9B,MAAM,aAAa,GAAG,KAAK,YAAY,gCAAmB,CAAC;YAE3D,MAAM,SAAS,GAA4B;gBAC1C,OAAO,EAAE,KAAK,CAAC,OAAO,IAAI,eAAe;gBACzC,IAAI,EAAE,KAAK,CAAC,WAAW,CAAC,IAAI;aAC5B,CAAC;YAEF,IAAI,OAAO,IAAI,KAAK,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;gBACrC,SAAS,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;YAC/B,CAAC;YACD,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;gBACjB,SAAS,CAAC,KAAK;oBACd,KAAK,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAA,4BAAa,EAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAClF,CAAC;YAED,MAAM,MAAM,GAAG;gBACd,SAAS,EAAE,IAAI;gBACf,KAAK,EAAE,KAAK,CAAC,OAAO,IAAI,GAAG,KAAK,CAAC,WAAW,CAAC,IAAI,gBAAgB;aACjE,CAAC;YAEF,gBAAgB,CAAC,OAAO,GAAG;gBAC1B,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,SAAS;gBAChB,YAAY,EAAE,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS;aACtD,CAAC;YACF,SAAS,CAAC,KAAK,CAAC,0CAA0B,EAAE,gBAAgB,CAAC,CAAC;YAE9D,OAAO;gBACN,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAA,4BAAa,EAAC,MAAM,CAAC,EAAE,CAAC;gBACxD,iBAAiB,EAAE,MAAM;aACzB,CAAC;QACH,CAAC;IACF,CAAC;CACD,CAAC,CAAC;AAjHU,QAAA,sBAAsB,0BAiHhC"}
1
+ {"version":3,"file":"get-execution.tool.js","sourceRoot":"","sources":["../../../../src/modules/mcp/tools/get-execution.tool.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ import type { FolderRepository, User } from '@n8n/db';
2
+ import z from 'zod';
3
+ import type { ToolDefinition } from '../mcp.types';
4
+ import type { ProjectService } from '../../../services/project.service.ee';
5
+ import type { Telemetry } from '../../../telemetry';
6
+ declare const inputSchema: {
7
+ projectId: z.ZodString;
8
+ query: z.ZodOptional<z.ZodString>;
9
+ limit: z.ZodOptional<z.ZodNumber>;
10
+ };
11
+ export declare const createSearchFoldersTool: (user: User, folderRepository: FolderRepository, projectService: ProjectService, telemetry: Telemetry) => ToolDefinition<typeof inputSchema>;
12
+ export {};