n8n 2.19.2 → 2.20.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/build.tsbuildinfo +1 -1
- package/dist/chat/chat-execution-manager.js +7 -1
- package/dist/chat/chat-execution-manager.js.map +1 -1
- package/dist/collaboration/collaboration.service.d.ts +1 -0
- package/dist/collaboration/collaboration.service.js +31 -0
- package/dist/collaboration/collaboration.service.js.map +1 -1
- package/dist/commands/execute.d.ts +2 -2
- package/dist/commands/export/credentials.d.ts +2 -2
- package/dist/commands/export/credentials.js +1 -1
- package/dist/commands/export/credentials.js.map +1 -1
- package/dist/commands/export/workflow.d.ts +4 -4
- package/dist/commands/import/credentials.d.ts +12 -2
- package/dist/commands/import/credentials.js +89 -11
- package/dist/commands/import/credentials.js.map +1 -1
- package/dist/commands/import/workflow.d.ts +2 -2
- package/dist/commands/ttwf/generate.d.ts +3 -3
- package/dist/controllers/e2e.controller.js +1 -1
- package/dist/controllers/e2e.controller.js.map +1 -1
- package/dist/controllers/oauth/oauth2-credential.controller.d.ts +6 -4
- package/dist/controllers/oauth/oauth2-credential.controller.js +12 -5
- package/dist/controllers/oauth/oauth2-credential.controller.js.map +1 -1
- package/dist/credentials/credentials.controller.js +1 -1
- package/dist/credentials/credentials.controller.js.map +1 -1
- package/dist/credentials/credentials.service.d.ts +2 -2
- package/dist/credentials/credentials.service.ee.js +2 -2
- package/dist/credentials/credentials.service.ee.js.map +1 -1
- package/dist/credentials/credentials.service.js +13 -16
- package/dist/credentials/credentials.service.js.map +1 -1
- package/dist/credentials/dynamic-credentials-proxy.js +1 -1
- package/dist/credentials/dynamic-credentials-proxy.js.map +1 -1
- package/dist/credentials-helper.d.ts +1 -0
- package/dist/credentials-helper.js +12 -4
- package/dist/credentials-helper.js.map +1 -1
- package/dist/credentials-overwrites.js +2 -2
- package/dist/credentials-overwrites.js.map +1 -1
- package/dist/evaluation.ee/test-runner/evaluation-metrics.ee.d.ts +5 -0
- package/dist/evaluation.ee/test-runner/evaluation-metrics.ee.js +22 -12
- package/dist/evaluation.ee/test-runner/evaluation-metrics.ee.js.map +1 -1
- package/dist/evaluation.ee/test-runner/test-runner.service.ee.d.ts +4 -2
- package/dist/evaluation.ee/test-runner/test-runner.service.ee.js +152 -89
- package/dist/evaluation.ee/test-runner/test-runner.service.ee.js.map +1 -1
- package/dist/evaluation.ee/test-runs.controller.ee.d.ts +8 -2
- package/dist/evaluation.ee/test-runs.controller.ee.js +31 -5
- package/dist/evaluation.ee/test-runs.controller.ee.js.map +1 -1
- package/dist/eventbus/event-message-classes/index.d.ts +3 -2
- package/dist/eventbus/event-message-classes/index.js +11 -1
- package/dist/eventbus/event-message-classes/index.js.map +1 -1
- package/dist/eventbus/message-event-bus/message-event-bus.d.ts +5 -2
- package/dist/eventbus/message-event-bus/message-event-bus.js +101 -73
- package/dist/eventbus/message-event-bus/message-event-bus.js.map +1 -1
- package/dist/eventbus/message-event-bus-writer/message-event-bus-log-writer.d.ts +3 -0
- package/dist/eventbus/message-event-bus-writer/message-event-bus-log-writer.js +3 -1
- package/dist/eventbus/message-event-bus-writer/message-event-bus-log-writer.js.map +1 -1
- package/dist/eventbus/message-event-bus-writer/resolve-event-log-path.d.ts +12 -0
- package/dist/eventbus/message-event-bus-writer/resolve-event-log-path.js +34 -0
- package/dist/eventbus/message-event-bus-writer/resolve-event-log-path.js.map +1 -0
- package/dist/execution-lifecycle/execute-error-workflow.js +1 -1
- package/dist/execution-lifecycle/execute-error-workflow.js.map +1 -1
- package/dist/executions/execution-recovery.service.d.ts +1 -1
- package/dist/executions/execution-recovery.service.js +11 -6
- package/dist/executions/execution-recovery.service.js.map +1 -1
- package/dist/executions/execution.service.d.ts +7 -2
- package/dist/executions/execution.service.js +18 -1
- package/dist/executions/execution.service.js.map +1 -1
- package/dist/executions/executions.controller.d.ts +1 -3
- package/dist/executions/executions.controller.js +3 -17
- package/dist/executions/executions.controller.js.map +1 -1
- package/dist/instance-settings-loader/instance-settings-loader.service.d.ts +3 -1
- package/dist/instance-settings-loader/instance-settings-loader.service.js +6 -2
- package/dist/instance-settings-loader/instance-settings-loader.service.js.map +1 -1
- package/dist/instance-settings-loader/loaders/mcp-settings.loader.d.ts +10 -0
- package/dist/instance-settings-loader/loaders/mcp-settings.loader.js +42 -0
- package/dist/instance-settings-loader/loaders/mcp-settings.loader.js.map +1 -0
- package/dist/instance-settings-loader/loaders/sso.instance-settings-loader.js +9 -4
- package/dist/instance-settings-loader/loaders/sso.instance-settings-loader.js.map +1 -1
- package/dist/mfa/mfa.service.d.ts +2 -2
- package/dist/mfa/mfa.service.js +11 -10
- package/dist/mfa/mfa.service.js.map +1 -1
- package/dist/modules/chat-hub/chat-hub-extractor.js +1 -1
- package/dist/modules/chat-hub/chat-hub-extractor.js.map +1 -1
- package/dist/modules/chat-hub/chat-hub-workflow.service.d.ts +1 -1
- package/dist/modules/chat-hub/chat-hub-workflow.service.js +4 -4
- package/dist/modules/chat-hub/chat-hub-workflow.service.js.map +1 -1
- package/dist/modules/community-packages/community-node-types.service.js +3 -1
- package/dist/modules/community-packages/community-node-types.service.js.map +1 -1
- package/dist/modules/dynamic-credentials.ee/credential-resolvers/n8n-credential-resolver.js +2 -2
- package/dist/modules/dynamic-credentials.ee/credential-resolvers/n8n-credential-resolver.js.map +1 -1
- package/dist/modules/dynamic-credentials.ee/credential-resolvers/oauth-credential-resolver.js +2 -2
- package/dist/modules/dynamic-credentials.ee/credential-resolvers/oauth-credential-resolver.js.map +1 -1
- package/dist/modules/dynamic-credentials.ee/credential-resolvers/slack-credential-resolver.js +2 -2
- package/dist/modules/dynamic-credentials.ee/credential-resolvers/slack-credential-resolver.js.map +1 -1
- package/dist/modules/dynamic-credentials.ee/dynamic-credentials.controller.js +2 -2
- package/dist/modules/dynamic-credentials.ee/dynamic-credentials.controller.js.map +1 -1
- package/dist/modules/dynamic-credentials.ee/services/credential-check-proxy.service.js +1 -1
- package/dist/modules/dynamic-credentials.ee/services/credential-check-proxy.service.js.map +1 -1
- package/dist/modules/dynamic-credentials.ee/services/credential-resolver-workflow.service.js +1 -1
- package/dist/modules/dynamic-credentials.ee/services/credential-resolver-workflow.service.js.map +1 -1
- package/dist/modules/dynamic-credentials.ee/services/credential-resolver.service.js +14 -14
- package/dist/modules/dynamic-credentials.ee/services/credential-resolver.service.js.map +1 -1
- package/dist/modules/dynamic-credentials.ee/services/dynamic-credential-storage.service.js +1 -1
- package/dist/modules/dynamic-credentials.ee/services/dynamic-credential-storage.service.js.map +1 -1
- package/dist/modules/dynamic-credentials.ee/services/dynamic-credential.service.js +4 -4
- package/dist/modules/dynamic-credentials.ee/services/dynamic-credential.service.js.map +1 -1
- package/dist/modules/encryption-key-manager/encryption-bootstrap.service.d.ts +6 -1
- package/dist/modules/encryption-key-manager/encryption-bootstrap.service.js +14 -2
- package/dist/modules/encryption-key-manager/encryption-bootstrap.service.js.map +1 -1
- package/dist/modules/encryption-key-manager/encryption-key.controller.js +1 -0
- package/dist/modules/encryption-key-manager/encryption-key.controller.js.map +1 -1
- package/dist/modules/encryption-key-manager/key-manager.service.d.ts +2 -1
- package/dist/modules/encryption-key-manager/key-manager.service.js +24 -5
- package/dist/modules/encryption-key-manager/key-manager.service.js.map +1 -1
- package/dist/modules/external-secrets.ee/constants.d.ts +1 -0
- package/dist/modules/external-secrets.ee/constants.js +2 -1
- package/dist/modules/external-secrets.ee/constants.js.map +1 -1
- package/dist/modules/external-secrets.ee/external-secrets-manager.ee.js +4 -4
- package/dist/modules/external-secrets.ee/external-secrets-manager.ee.js.map +1 -1
- package/dist/modules/external-secrets.ee/secrets-cache.service.d.ts +1 -0
- package/dist/modules/external-secrets.ee/secrets-cache.service.js +18 -1
- package/dist/modules/external-secrets.ee/secrets-cache.service.js.map +1 -1
- package/dist/modules/external-secrets.ee/secrets-providers-connections.controller.ee.js +3 -3
- package/dist/modules/external-secrets.ee/secrets-providers-connections.controller.ee.js.map +1 -1
- package/dist/modules/external-secrets.ee/secrets-providers-connections.service.ee.d.ts +1 -1
- package/dist/modules/external-secrets.ee/secrets-providers-connections.service.ee.js +15 -13
- package/dist/modules/external-secrets.ee/secrets-providers-connections.service.ee.js.map +1 -1
- package/dist/modules/external-secrets.ee/secrets-providers-project.controller.ee.js +3 -3
- package/dist/modules/external-secrets.ee/secrets-providers-project.controller.ee.js.map +1 -1
- package/dist/modules/external-secrets.ee/settings-store.service.js +6 -6
- package/dist/modules/external-secrets.ee/settings-store.service.js.map +1 -1
- package/dist/modules/insights/insights-collection.service.js +7 -1
- package/dist/modules/insights/insights-collection.service.js.map +1 -1
- package/dist/modules/insights/insights-pruning.service.d.ts +2 -4
- package/dist/modules/insights/insights-pruning.service.js +13 -10
- package/dist/modules/insights/insights-pruning.service.js.map +1 -1
- package/dist/modules/insights/insights.config.js +2 -1
- package/dist/modules/insights/insights.config.js.map +1 -1
- package/dist/modules/insights/insights.constants.d.ts +2 -0
- package/dist/modules/insights/insights.constants.js +3 -1
- package/dist/modules/insights/insights.constants.js.map +1 -1
- package/dist/modules/insights/insights.service.js +1 -3
- package/dist/modules/insights/insights.service.js.map +1 -1
- package/dist/modules/instance-ai/compaction.service.d.ts +7 -2
- package/dist/modules/instance-ai/compaction.service.js +17 -17
- package/dist/modules/instance-ai/compaction.service.js.map +1 -1
- package/dist/modules/instance-ai/instance-ai-settings.service.js +4 -4
- package/dist/modules/instance-ai/instance-ai-settings.service.js.map +1 -1
- package/dist/modules/instance-ai/instance-ai.adapter.service.d.ts +38 -1
- package/dist/modules/instance-ai/instance-ai.adapter.service.js +179 -60
- package/dist/modules/instance-ai/instance-ai.adapter.service.js.map +1 -1
- package/dist/modules/instance-ai/instance-ai.controller.d.ts +2 -2
- package/dist/modules/instance-ai/instance-ai.controller.js +7 -17
- package/dist/modules/instance-ai/instance-ai.controller.js.map +1 -1
- package/dist/modules/instance-ai/instance-ai.service.d.ts +15 -4
- package/dist/modules/instance-ai/instance-ai.service.js +489 -76
- package/dist/modules/instance-ai/instance-ai.service.js.map +1 -1
- package/dist/modules/instance-ai/storage/typeorm-memory-storage.js +11 -1
- package/dist/modules/instance-ai/storage/typeorm-memory-storage.js.map +1 -1
- package/dist/modules/instance-ai/web-research/fetch-and-extract.d.ts +3 -1
- package/dist/modules/instance-ai/web-research/fetch-and-extract.js +13 -11
- package/dist/modules/instance-ai/web-research/fetch-and-extract.js.map +1 -1
- package/dist/modules/instance-ai/web-research/index.d.ts +0 -1
- package/dist/modules/instance-ai/web-research/index.js +1 -3
- package/dist/modules/instance-ai/web-research/index.js.map +1 -1
- package/dist/modules/instance-registry/checks/check.service.d.ts +43 -0
- package/dist/modules/instance-registry/checks/check.service.js +248 -0
- package/dist/modules/instance-registry/checks/check.service.js.map +1 -0
- package/dist/modules/instance-registry/checks/hostid-clash.check.d.ts +8 -0
- package/dist/modules/instance-registry/checks/hostid-clash.check.js +68 -0
- package/dist/modules/instance-registry/checks/hostid-clash.check.js.map +1 -0
- package/dist/modules/instance-registry/checks/index.d.ts +4 -0
- package/dist/modules/instance-registry/checks/index.js +7 -0
- package/dist/modules/instance-registry/checks/index.js.map +1 -0
- package/dist/modules/instance-registry/checks/lifecycle.check.d.ts +8 -0
- package/dist/modules/instance-registry/checks/lifecycle.check.js +52 -0
- package/dist/modules/instance-registry/checks/lifecycle.check.js.map +1 -0
- package/dist/modules/instance-registry/checks/split-brain.check.d.ts +8 -0
- package/dist/modules/instance-registry/checks/split-brain.check.js +67 -0
- package/dist/modules/instance-registry/checks/split-brain.check.js.map +1 -0
- package/dist/modules/instance-registry/checks/version-mismatch.check.d.ts +8 -0
- package/dist/modules/instance-registry/checks/version-mismatch.check.js +55 -0
- package/dist/modules/instance-registry/checks/version-mismatch.check.js.map +1 -0
- package/dist/modules/instance-registry/instance-registry.controller.d.ts +3 -1
- package/dist/modules/instance-registry/instance-registry.controller.js +41 -5
- package/dist/modules/instance-registry/instance-registry.controller.js.map +1 -1
- package/dist/modules/instance-registry/instance-registry.module.js +3 -9
- package/dist/modules/instance-registry/instance-registry.module.js.map +1 -1
- package/dist/modules/ldap.ee/helpers.ee.js +1 -1
- package/dist/modules/ldap.ee/helpers.ee.js.map +1 -1
- package/dist/modules/ldap.ee/ldap.service.ee.js +2 -2
- package/dist/modules/ldap.ee/ldap.service.ee.js.map +1 -1
- package/dist/modules/mcp/dto/update-workflows-availability.dto.d.ts +15 -0
- package/dist/modules/mcp/dto/update-workflows-availability.dto.js +14 -0
- package/dist/modules/mcp/dto/update-workflows-availability.dto.js.map +1 -0
- package/dist/modules/mcp/mcp-oauth-service.d.ts +6 -0
- package/dist/modules/mcp/mcp-oauth-service.js +15 -3
- package/dist/modules/mcp/mcp-oauth-service.js.map +1 -1
- package/dist/modules/mcp/mcp-oauth-token.service.d.ts +1 -0
- package/dist/modules/mcp/mcp-oauth-token.service.js +3 -0
- package/dist/modules/mcp/mcp-oauth-token.service.js.map +1 -1
- package/dist/modules/mcp/mcp.controller.d.ts +2 -0
- package/dist/modules/mcp/mcp.controller.js +49 -11
- package/dist/modules/mcp/mcp.controller.js.map +1 -1
- package/dist/modules/mcp/mcp.errors.d.ts +6 -0
- package/dist/modules/mcp/mcp.errors.js +12 -1
- package/dist/modules/mcp/mcp.errors.js.map +1 -1
- package/dist/modules/mcp/mcp.module.d.ts +1 -0
- package/dist/modules/mcp/mcp.module.js +3 -1
- package/dist/modules/mcp/mcp.module.js.map +1 -1
- package/dist/modules/mcp/mcp.oauth-clients.controller.d.ts +2 -1
- package/dist/modules/mcp/mcp.oauth-clients.controller.js +10 -0
- package/dist/modules/mcp/mcp.oauth-clients.controller.js.map +1 -1
- package/dist/modules/mcp/mcp.oauth.controller.js +20 -1
- package/dist/modules/mcp/mcp.oauth.controller.js.map +1 -1
- package/dist/modules/mcp/mcp.service.js +3 -0
- package/dist/modules/mcp/mcp.service.js.map +1 -1
- package/dist/modules/mcp/mcp.settings.controller.d.ts +11 -12
- package/dist/modules/mcp/mcp.settings.controller.js +19 -50
- package/dist/modules/mcp/mcp.settings.controller.js.map +1 -1
- package/dist/modules/mcp/mcp.settings.service.d.ts +30 -2
- package/dist/modules/mcp/mcp.settings.service.js +165 -2
- package/dist/modules/mcp/mcp.settings.service.js.map +1 -1
- package/dist/modules/mcp/tools/search-executions.tool.d.ts +16 -0
- package/dist/modules/mcp/tools/search-executions.tool.js +140 -0
- package/dist/modules/mcp/tools/search-executions.tool.js.map +1 -0
- package/dist/modules/mcp/tools/workflow-builder/get-workflow-node-types.tool.d.ts +2 -2
- package/dist/modules/oauth-jwe/oauth-jwe-decrypt.service.d.ts +7 -0
- package/dist/modules/oauth-jwe/oauth-jwe-decrypt.service.js +48 -0
- package/dist/modules/oauth-jwe/oauth-jwe-decrypt.service.js.map +1 -0
- package/dist/modules/oauth-jwe/oauth-jwe-key.service.d.ts +31 -0
- package/dist/modules/oauth-jwe/oauth-jwe-key.service.js +174 -0
- package/dist/modules/oauth-jwe/oauth-jwe-key.service.js.map +1 -0
- package/dist/modules/oauth-jwe/oauth-jwe.config.d.ts +3 -0
- package/dist/modules/oauth-jwe/oauth-jwe.config.js +27 -0
- package/dist/modules/oauth-jwe/oauth-jwe.config.js.map +1 -0
- package/dist/modules/oauth-jwe/oauth-jwe.constants.d.ts +9 -0
- package/dist/modules/oauth-jwe/oauth-jwe.constants.js +15 -0
- package/dist/modules/oauth-jwe/oauth-jwe.constants.js.map +1 -0
- package/dist/modules/oauth-jwe/oauth-jwe.controller.d.ts +10 -0
- package/dist/modules/oauth-jwe/oauth-jwe.controller.js +60 -0
- package/dist/modules/oauth-jwe/oauth-jwe.controller.js.map +1 -0
- package/dist/modules/oauth-jwe/oauth-jwe.module.d.ts +8 -0
- package/dist/modules/oauth-jwe/oauth-jwe.module.js +70 -0
- package/dist/modules/oauth-jwe/oauth-jwe.module.js.map +1 -0
- package/dist/modules/oauth-jwe/oauth-jwe.schemas.d.ts +131 -0
- package/dist/modules/oauth-jwe/oauth-jwe.schemas.js +34 -0
- package/dist/modules/oauth-jwe/oauth-jwe.schemas.js.map +1 -0
- package/dist/modules/oauth-jwe/oauth-jwe.utils.d.ts +4 -0
- package/dist/modules/oauth-jwe/oauth-jwe.utils.js +27 -0
- package/dist/modules/oauth-jwe/oauth-jwe.utils.js.map +1 -0
- package/dist/modules/source-control.ee/source-control-export.service.ee.js +1 -1
- package/dist/modules/source-control.ee/source-control-export.service.ee.js.map +1 -1
- package/dist/modules/source-control.ee/source-control-import.service.ee.js +6 -6
- package/dist/modules/source-control.ee/source-control-import.service.ee.js.map +1 -1
- package/dist/modules/source-control.ee/source-control-preferences.service.ee.js +6 -6
- package/dist/modules/source-control.ee/source-control-preferences.service.ee.js.map +1 -1
- package/dist/modules/sso-oidc/oidc.service.ee.js +2 -2
- package/dist/modules/sso-oidc/oidc.service.ee.js.map +1 -1
- package/dist/modules/sso-saml/saml.service.ee.js +6 -6
- package/dist/modules/sso-saml/saml.service.ee.js.map +1 -1
- package/dist/oauth/oauth-jwe-service.proxy.d.ts +9 -0
- package/dist/oauth/oauth-jwe-service.proxy.js +27 -0
- package/dist/oauth/oauth-jwe-service.proxy.js.map +1 -0
- package/dist/oauth/oauth.service.d.ts +2 -2
- package/dist/oauth/oauth.service.js +13 -12
- package/dist/oauth/oauth.service.js.map +1 -1
- package/dist/posthog/index.d.ts +2 -0
- package/dist/posthog/index.js +16 -0
- package/dist/posthog/index.js.map +1 -1
- package/dist/public-api/v1/handlers/credentials/credentials.service.js +2 -2
- package/dist/public-api/v1/handlers/credentials/credentials.service.js.map +1 -1
- package/dist/services/dynamic-node-parameters.service.d.ts +1 -0
- package/dist/services/dynamic-node-parameters.service.js +29 -12
- package/dist/services/dynamic-node-parameters.service.js.map +1 -1
- package/dist/services/export.service.js +2 -2
- package/dist/services/export.service.js.map +1 -1
- package/dist/services/frontend.service.js +18 -0
- package/dist/services/frontend.service.js.map +1 -1
- package/dist/services/import.service.d.ts +5 -1
- package/dist/services/import.service.js +62 -5
- package/dist/services/import.service.js.map +1 -1
- package/dist/services/redis-client.service.d.ts +6 -5
- package/dist/services/redis-client.service.js +19 -12
- package/dist/services/redis-client.service.js.map +1 -1
- package/dist/services/user.service.js +0 -9
- package/dist/services/user.service.js.map +1 -1
- package/dist/task-runners/task-broker/auth/task-broker-auth.service.d.ts +4 -4
- package/dist/task-runners/task-broker/auth/task-broker-auth.service.js +9 -8
- package/dist/task-runners/task-broker/auth/task-broker-auth.service.js.map +1 -1
- package/dist/task-runners/task-broker/task-broker-server.js +1 -1
- package/dist/task-runners/task-broker/task-broker-server.js.map +1 -1
- package/dist/webhooks/test-webhooks.js +16 -2
- package/dist/webhooks/test-webhooks.js.map +1 -1
- package/dist/workflow-execute-additional-data.js +4 -2
- package/dist/workflow-execute-additional-data.js.map +1 -1
- package/dist/workflows/workflow-finder.service.d.ts +2 -0
- package/dist/workflows/workflow-finder.service.js +12 -1
- package/dist/workflows/workflow-finder.service.js.map +1 -1
- package/dist/workflows/workflows.controller.d.ts +7 -2
- package/dist/workflows/workflows.controller.js +43 -10
- package/dist/workflows/workflows.controller.js.map +1 -1
- package/package.json +30 -28
- package/dist/modules/instance-ai/web-research/ssrf-guard.d.ts +0 -1
- package/dist/modules/instance-ai/web-research/ssrf-guard.js +0 -85
- package/dist/modules/instance-ai/web-research/ssrf-guard.js.map +0 -1
- package/dist/modules/mcp/dto/update-workflow-availability.dto.d.ts +0 -9
- package/dist/modules/mcp/dto/update-workflow-availability.dto.js +0 -11
- package/dist/modules/mcp/dto/update-workflow-availability.dto.js.map +0 -1
|
@@ -75,6 +75,30 @@ let McpController = class McpController {
|
|
|
75
75
|
res.header('WWW-Authenticate', 'Bearer realm="n8n MCP Server"');
|
|
76
76
|
res.status(401).end();
|
|
77
77
|
}
|
|
78
|
+
async handleGet(req, res) {
|
|
79
|
+
this.setCorsHeaders(res);
|
|
80
|
+
const enabled = await this.mcpSettingsService.getEnabled();
|
|
81
|
+
if (!enabled) {
|
|
82
|
+
res.status(403).json({ message: mcp_constants_1.MCP_ACCESS_DISABLED_ERROR_MESSAGE });
|
|
83
|
+
return;
|
|
84
|
+
}
|
|
85
|
+
try {
|
|
86
|
+
await this.handleTransportRequest(req, res);
|
|
87
|
+
}
|
|
88
|
+
catch (error) {
|
|
89
|
+
this.errorReporter.error(error);
|
|
90
|
+
if (!res.headersSent) {
|
|
91
|
+
res.status(500).json({
|
|
92
|
+
jsonrpc: '2.0',
|
|
93
|
+
error: {
|
|
94
|
+
code: -32603,
|
|
95
|
+
message: mcp_constants_1.INTERNAL_SERVER_ERROR_MESSAGE,
|
|
96
|
+
},
|
|
97
|
+
id: null,
|
|
98
|
+
});
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
}
|
|
78
102
|
async build(req, res) {
|
|
79
103
|
this.setCorsHeaders(res);
|
|
80
104
|
const body = req.body;
|
|
@@ -100,17 +124,7 @@ let McpController = class McpController {
|
|
|
100
124
|
return;
|
|
101
125
|
}
|
|
102
126
|
try {
|
|
103
|
-
|
|
104
|
-
const server = await this.mcpService.getServer(req.user);
|
|
105
|
-
const transport = new StreamableHTTPServerTransport({
|
|
106
|
-
sessionIdGenerator: undefined,
|
|
107
|
-
});
|
|
108
|
-
res.on('close', () => {
|
|
109
|
-
void transport.close();
|
|
110
|
-
void server.close();
|
|
111
|
-
});
|
|
112
|
-
await server.connect(transport);
|
|
113
|
-
await transport.handleRequest(req, res, req.body);
|
|
127
|
+
await this.handleTransportRequest(req, res, req.body);
|
|
114
128
|
if (isInitializationRequest) {
|
|
115
129
|
this.trackConnectionEvent({
|
|
116
130
|
...telemetryPayload,
|
|
@@ -142,6 +156,19 @@ let McpController = class McpController {
|
|
|
142
156
|
}
|
|
143
157
|
}
|
|
144
158
|
}
|
|
159
|
+
async handleTransportRequest(req, res, body) {
|
|
160
|
+
const { StreamableHTTPServerTransport } = await Promise.resolve().then(() => __importStar(require('@modelcontextprotocol/sdk/server/streamableHttp.js')));
|
|
161
|
+
const server = await this.mcpService.getServer(req.user);
|
|
162
|
+
const transport = new StreamableHTTPServerTransport({
|
|
163
|
+
sessionIdGenerator: undefined,
|
|
164
|
+
});
|
|
165
|
+
res.on('close', () => {
|
|
166
|
+
void transport.close();
|
|
167
|
+
void server.close();
|
|
168
|
+
});
|
|
169
|
+
await server.connect(transport);
|
|
170
|
+
await transport.handleRequest(req, res, body);
|
|
171
|
+
}
|
|
145
172
|
trackConnectionEvent(payload) {
|
|
146
173
|
this.telemetry.track(mcp_constants_1.USER_CONNECTED_TO_MCP_EVENT, payload);
|
|
147
174
|
}
|
|
@@ -156,6 +183,17 @@ __decorate([
|
|
|
156
183
|
__metadata("design:paramtypes", [Object, Object]),
|
|
157
184
|
__metadata("design:returntype", Promise)
|
|
158
185
|
], McpController.prototype, "discoverAuthSchemeHead", null);
|
|
186
|
+
__decorate([
|
|
187
|
+
(0, decorators_1.Get)('/http', {
|
|
188
|
+
ipRateLimit: { limit: 100 },
|
|
189
|
+
middlewares: [getAuthMiddleware()],
|
|
190
|
+
skipAuth: true,
|
|
191
|
+
usesTemplates: true,
|
|
192
|
+
}),
|
|
193
|
+
__metadata("design:type", Function),
|
|
194
|
+
__metadata("design:paramtypes", [Object, Object]),
|
|
195
|
+
__metadata("design:returntype", Promise)
|
|
196
|
+
], McpController.prototype, "handleGet", null);
|
|
159
197
|
__decorate([
|
|
160
198
|
(0, decorators_1.Post)('/http', {
|
|
161
199
|
ipRateLimit: { limit: 100 },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp.controller.js","sourceRoot":"","sources":["../../../src/modules/mcp/mcp.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,wDAA6C;AAE7C,
|
|
1
|
+
{"version":3,"file":"mcp.controller.js","sourceRoot":"","sources":["../../../src/modules/mcp/mcp.controller.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,12 @@
|
|
|
1
|
+
import { ServerError } from '@modelcontextprotocol/sdk/server/auth/errors.js';
|
|
1
2
|
import { UserError } from 'n8n-workflow';
|
|
2
3
|
import { AuthError } from '../../errors/response-errors/auth.error';
|
|
3
4
|
import type { WorkflowNotFoundReason } from './mcp.types';
|
|
5
|
+
export declare const buildMcpClientLimitReachedMessage: (limit: number) => string;
|
|
6
|
+
export declare class McpClientLimitReachedError extends ServerError {
|
|
7
|
+
readonly limit: number;
|
|
8
|
+
constructor(limit: number);
|
|
9
|
+
}
|
|
4
10
|
export declare class McpExecutionTimeoutError extends UserError {
|
|
5
11
|
executionId: string | null;
|
|
6
12
|
timeoutMs: number;
|
|
@@ -1,9 +1,20 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.WorkflowAccessError = exports.AccessTokenNotFoundError = exports.JWTVerificationError = exports.McpExecutionTimeoutError = void 0;
|
|
3
|
+
exports.WorkflowAccessError = exports.AccessTokenNotFoundError = exports.JWTVerificationError = exports.McpExecutionTimeoutError = exports.McpClientLimitReachedError = exports.buildMcpClientLimitReachedMessage = void 0;
|
|
4
|
+
const errors_js_1 = require("@modelcontextprotocol/sdk/server/auth/errors.js");
|
|
4
5
|
const constants_1 = require("@n8n/constants");
|
|
5
6
|
const n8n_workflow_1 = require("n8n-workflow");
|
|
6
7
|
const auth_error_1 = require("../../errors/response-errors/auth.error");
|
|
8
|
+
const buildMcpClientLimitReachedMessage = (limit) => `This n8n instance has reached its maximum of ${limit} registered MCP clients. Ask an administrator to revoke unused clients or raise N8N_MCP_MAX_REGISTERED_CLIENTS.`;
|
|
9
|
+
exports.buildMcpClientLimitReachedMessage = buildMcpClientLimitReachedMessage;
|
|
10
|
+
class McpClientLimitReachedError extends errors_js_1.ServerError {
|
|
11
|
+
constructor(limit) {
|
|
12
|
+
super((0, exports.buildMcpClientLimitReachedMessage)(limit));
|
|
13
|
+
this.name = 'McpClientLimitReachedError';
|
|
14
|
+
this.limit = limit;
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
exports.McpClientLimitReachedError = McpClientLimitReachedError;
|
|
7
18
|
class McpExecutionTimeoutError extends n8n_workflow_1.UserError {
|
|
8
19
|
constructor(executionId, timeoutMs) {
|
|
9
20
|
const timeoutSeconds = timeoutMs * constants_1.Time.milliseconds.toSeconds;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp.errors.js","sourceRoot":"","sources":["../../../src/modules/mcp/mcp.errors.ts"],"names":[],"mappings":";;;AAAA,8CAAsC;AACtC,+CAAyC;AAEzC,oEAAgE;
|
|
1
|
+
{"version":3,"file":"mcp.errors.js","sourceRoot":"","sources":["../../../src/modules/mcp/mcp.errors.ts"],"names":[],"mappings":";;;AAAA,+EAA8E;AAC9E,8CAAsC;AACtC,+CAAyC;AAEzC,oEAAgE;AAIzD,MAAM,iCAAiC,GAAG,CAAC,KAAa,EAAU,EAAE,CAC1E,gDAAgD,KAAK,iHAAiH,CAAC;AAD3J,QAAA,iCAAiC,qCAC0H;AAQxK,MAAa,0BAA2B,SAAQ,uBAAW;IAG1D,YAAY,KAAa;QACxB,KAAK,CAAC,IAAA,yCAAiC,EAAC,KAAK,CAAC,CAAC,CAAC;QAChD,IAAI,CAAC,IAAI,GAAG,4BAA4B,CAAC;QACzC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACpB,CAAC;CACD;AARD,gEAQC;AAKD,MAAa,wBAAyB,SAAQ,wBAAS;IAItD,YAAY,WAA0B,EAAE,SAAiB;QACxD,MAAM,cAAc,GAAG,SAAS,GAAG,gBAAI,CAAC,YAAY,CAAC,SAAS,CAAC;QAC/D,KAAK,CAAC,sCAAsC,cAAc,UAAU,CAAC,CAAC;QAEtE,IAAI,CAAC,IAAI,GAAG,0BAA0B,CAAC;QACvC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC5B,CAAC;CACD;AAZD,4DAYC;AAED,MAAa,oBAAqB,SAAQ,sBAAS;IAClD;QACC,KAAK,CAAC,yBAAyB,CAAC,CAAC;QACjC,IAAI,CAAC,IAAI,GAAG,sBAAsB,CAAC;IACpC,CAAC;CACD;AALD,oDAKC;AAED,MAAa,wBAAyB,SAAQ,sBAAS;IACtD;QACC,KAAK,CAAC,oCAAoC,CAAC,CAAC;QAC5C,IAAI,CAAC,IAAI,GAAG,0BAA0B,CAAC;IACxC,CAAC;CACD;AALD,4DAKC;AAMD,MAAa,mBAAoB,SAAQ,wBAAS;IAGjD,YAAY,OAAe,EAAE,MAA8B;QAC1D,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,qBAAqB,CAAC;QAClC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACtB,CAAC;CACD;AARD,kDAQC"}
|
|
@@ -43,6 +43,7 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
43
43
|
};
|
|
44
44
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
45
45
|
exports.McpModule = void 0;
|
|
46
|
+
const config_1 = require("@n8n/config");
|
|
46
47
|
const decorators_1 = require("@n8n/decorators");
|
|
47
48
|
const di_1 = require("@n8n/di");
|
|
48
49
|
let McpModule = class McpModule {
|
|
@@ -56,7 +57,8 @@ let McpModule = class McpModule {
|
|
|
56
57
|
async settings() {
|
|
57
58
|
const { McpSettingsService } = await Promise.resolve().then(() => __importStar(require('./mcp.settings.service')));
|
|
58
59
|
const mcpAccessEnabled = await di_1.Container.get(McpSettingsService).getEnabled();
|
|
59
|
-
|
|
60
|
+
const { mcpManagedByEnv } = di_1.Container.get(config_1.InstanceSettingsLoaderConfig);
|
|
61
|
+
return { mcpAccessEnabled, mcpManagedByEnv };
|
|
60
62
|
}
|
|
61
63
|
async entities() {
|
|
62
64
|
const { OAuthClient } = await Promise.resolve().then(() => __importStar(require('./database/entities/oauth-client.entity')));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp.module.js","sourceRoot":"","sources":["../../../src/modules/mcp/mcp.module.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"mcp.module.js","sourceRoot":"","sources":["../../../src/modules/mcp/mcp.module.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,wCAA2D;AAE3D,gDAA4D;AAC5D,gCAAoC;AAQ7B,IAAM,SAAS,GAAf,MAAM,SAAS;IACrB,KAAK,CAAC,IAAI;QACT,wDAAa,kBAAkB,GAAC,CAAC;QACjC,wDAAa,2BAA2B,GAAC,CAAC;QAC1C,wDAAa,wBAAwB,GAAC,CAAC;QACvC,wDAAa,+BAA+B,GAAC,CAAC;QAC9C,wDAAa,gCAAgC,GAAC,CAAC;IAChD,CAAC;IAOD,KAAK,CAAC,QAAQ;QACb,MAAM,EAAE,kBAAkB,EAAE,GAAG,wDAAa,wBAAwB,GAAC,CAAC;QACtE,MAAM,gBAAgB,GAAG,MAAM,cAAS,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC,UAAU,EAAE,CAAC;QAC9E,MAAM,EAAE,eAAe,EAAE,GAAG,cAAS,CAAC,GAAG,CAAC,qCAA4B,CAAC,CAAC;QACxE,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,CAAC;IAC9C,CAAC;IAED,KAAK,CAAC,QAAQ;QACb,MAAM,EAAE,WAAW,EAAE,GAAG,wDAAa,yCAAyC,GAAC,CAAC;QAChF,MAAM,EAAE,iBAAiB,EAAE,GAAG,wDAC7B,qDAAqD,GACrD,CAAC;QACF,MAAM,EAAE,WAAW,EAAE,GAAG,wDAAa,+CAA+C,GAAC,CAAC;QACtF,MAAM,EAAE,YAAY,EAAE,GAAG,wDAAa,gDAAgD,GAAC,CAAC;QACxF,MAAM,EAAE,WAAW,EAAE,GAAG,wDAAa,+CAA+C,GAAC,CAAC;QAEtF,OAAO,CAAC,WAAW,EAAE,iBAAiB,EAAE,WAAW,EAAE,YAAY,EAAE,WAAW,CAAU,CAAC;IAC1F,CAAC;IAGK,AAAN,KAAK,CAAC,QAAQ,KAAI,CAAC;CACnB,CAAA;AAnCY,8BAAS;AAkCf;IADL,IAAA,uBAAU,GAAE;;;;yCACM;oBAlCP,SAAS;IADrB,IAAA,0BAAa,EAAC,EAAE,IAAI,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC;GAC3C,SAAS,CAmCrB"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { DeleteOAuthClientResponseDto, ListOAuthClientsResponseDto } from '@n8n/api-types';
|
|
1
|
+
import { DeleteOAuthClientResponseDto, InstanceMcpClientStatsResponseDto, ListOAuthClientsResponseDto } from '@n8n/api-types';
|
|
2
2
|
import { Logger } from '@n8n/backend-common';
|
|
3
3
|
import { AuthenticatedRequest } from '@n8n/db';
|
|
4
4
|
import type { Response } from 'express';
|
|
@@ -8,5 +8,6 @@ export declare class McpOAuthClientsController {
|
|
|
8
8
|
private readonly logger;
|
|
9
9
|
constructor(mcpOAuthService: McpOAuthService, logger: Logger);
|
|
10
10
|
getAllClients(req: AuthenticatedRequest, _res: Response): Promise<ListOAuthClientsResponseDto>;
|
|
11
|
+
getInstanceStats(): Promise<InstanceMcpClientStatsResponseDto>;
|
|
11
12
|
deleteClient(req: AuthenticatedRequest, _res: Response, clientId: string): Promise<DeleteOAuthClientResponseDto>;
|
|
12
13
|
}
|
|
@@ -40,6 +40,9 @@ let McpOAuthClientsController = class McpOAuthClientsController {
|
|
|
40
40
|
count: clients.length,
|
|
41
41
|
};
|
|
42
42
|
}
|
|
43
|
+
async getInstanceStats() {
|
|
44
|
+
return await this.mcpOAuthService.getInstanceClientStats();
|
|
45
|
+
}
|
|
43
46
|
async deleteClient(req, _res, clientId) {
|
|
44
47
|
this.logger.info('Deleting OAuth client', {
|
|
45
48
|
clientId,
|
|
@@ -77,6 +80,13 @@ __decorate([
|
|
|
77
80
|
__metadata("design:paramtypes", [Object, Object]),
|
|
78
81
|
__metadata("design:returntype", Promise)
|
|
79
82
|
], McpOAuthClientsController.prototype, "getAllClients", null);
|
|
83
|
+
__decorate([
|
|
84
|
+
(0, decorators_1.GlobalScope)('mcp:manage'),
|
|
85
|
+
(0, decorators_1.Get)('/instance-stats'),
|
|
86
|
+
__metadata("design:type", Function),
|
|
87
|
+
__metadata("design:paramtypes", []),
|
|
88
|
+
__metadata("design:returntype", Promise)
|
|
89
|
+
], McpOAuthClientsController.prototype, "getInstanceStats", null);
|
|
80
90
|
__decorate([
|
|
81
91
|
(0, decorators_1.GlobalScope)('mcp:oauth'),
|
|
82
92
|
(0, decorators_1.Delete)('/:clientId'),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp.oauth-clients.controller.js","sourceRoot":"","sources":["../../../src/modules/mcp/mcp.oauth-clients.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"mcp.oauth-clients.controller.js","sourceRoot":"","sources":["../../../src/modules/mcp/mcp.oauth-clients.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAMA,wDAA6C;AAE7C,gDAAkF;AAGlF,8EAAyE;AAEzE,2DAAsD;AAG/C,IAAM,yBAAyB,GAA/B,MAAM,yBAAyB;IACrC,YACkB,eAAgC,EAChC,MAAc;QADd,oBAAe,GAAf,eAAe,CAAiB;QAChC,WAAM,GAAN,MAAM,CAAQ;IAC7B,CAAC;IAOE,AAAN,KAAK,CAAC,aAAa,CAClB,GAAyB,EACzB,IAAc;QAEd,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,qCAAqC,EAAE,EAAE,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;QAElF,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAEtE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,OAAO,CAAC,MAAM,gBAAgB,CAAC,CAAC;QAE3D,MAAM,UAAU,GAA6B,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;YACrE,EAAE,EAAE,MAAM,CAAC,EAAE;YACb,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,YAAY,EAAE,MAAM,CAAC,YAAY;YACjC,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,uBAAuB,EAAE,MAAM,CAAC,uBAAuB;YACvD,SAAS,EAAE,MAAM,CAAC,SAAS,CAAC,WAAW,EAAE;YACzC,SAAS,EAAE,MAAM,CAAC,SAAS,CAAC,WAAW,EAAE;SACzC,CAAC,CAAC,CAAC;QAEJ,OAAO;YACN,IAAI,EAAE,UAAU;YAChB,KAAK,EAAE,OAAO,CAAC,MAAM;SACrB,CAAC;IACH,CAAC;IASK,AAAN,KAAK,CAAC,gBAAgB;QACrB,OAAO,MAAM,IAAI,CAAC,eAAe,CAAC,sBAAsB,EAAE,CAAC;IAC5D,CAAC;IAQK,AAAN,KAAK,CAAC,YAAY,CACjB,GAAyB,EACzB,IAAc,EACK,QAAgB;QAEnC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,uBAAuB,EAAE;YACzC,QAAQ;YACR,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,EAAE;YACnB,SAAS,EAAE,GAAG,CAAC,IAAI,CAAC,KAAK;SACzB,CAAC,CAAC;QAEH,IAAI,CAAC;YACJ,MAAM,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC,QAAQ,EAAE,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAE/D,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,mCAAmC,EAAE;gBACrD,QAAQ;gBACR,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,EAAE;aACnB,CAAC,CAAC;YAEH,OAAO;gBACN,OAAO,EAAE,IAAI;gBACb,OAAO,EAAE,gBAAgB,QAAQ,gCAAgC;aACjE,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,IAAI,KAAK,YAAY,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;gBACnE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,+CAA+C,EAAE;oBACjE,QAAQ;oBACR,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,EAAE;iBACnB,CAAC,CAAC;gBACH,MAAM,IAAI,+BAAa,CAAC,wBAAwB,QAAQ,YAAY,CAAC,CAAC;YACvE,CAAC;YACD,MAAM,KAAK,CAAC;QACb,CAAC;IACF,CAAC;CACD,CAAA;AAxFY,8DAAyB;AAW/B;IAFL,IAAA,wBAAW,EAAC,WAAW,CAAC;IACxB,IAAA,gBAAG,EAAC,GAAG,CAAC;;;;8DAyBR;AASK;IAFL,IAAA,wBAAW,EAAC,YAAY,CAAC;IACzB,IAAA,gBAAG,EAAC,iBAAiB,CAAC;;;;iEAGtB;AAQK;IAFL,IAAA,wBAAW,EAAC,WAAW,CAAC;IACxB,IAAA,mBAAM,EAAC,YAAY,CAAC;IAInB,WAAA,IAAA,kBAAK,EAAC,UAAU,CAAC,CAAA;;;;6DA8BlB;oCAvFW,yBAAyB;IADrC,IAAA,2BAAc,EAAC,oBAAoB,CAAC;qCAGD,mCAAe;QACxB,uBAAM;GAHpB,yBAAyB,CAwFrC"}
|
|
@@ -14,15 +14,20 @@ const authorize_js_1 = require("@modelcontextprotocol/sdk/server/auth/handlers/a
|
|
|
14
14
|
const register_js_1 = require("@modelcontextprotocol/sdk/server/auth/handlers/register.js");
|
|
15
15
|
const revoke_js_1 = require("@modelcontextprotocol/sdk/server/auth/handlers/revoke.js");
|
|
16
16
|
const token_js_1 = require("@modelcontextprotocol/sdk/server/auth/handlers/token.js");
|
|
17
|
+
const backend_common_1 = require("@n8n/backend-common");
|
|
18
|
+
const config_1 = require("@n8n/config");
|
|
17
19
|
const constants_1 = require("@n8n/constants");
|
|
18
20
|
const decorators_1 = require("@n8n/decorators");
|
|
19
21
|
const di_1 = require("@n8n/di");
|
|
20
22
|
const url_service_1 = require("../../services/url.service");
|
|
21
23
|
const mcp_oauth_service_1 = require("./mcp-oauth-service");
|
|
22
24
|
const mcp_constants_1 = require("./mcp.constants");
|
|
25
|
+
const mcp_errors_1 = require("./mcp.errors");
|
|
23
26
|
const mcp_settings_service_1 = require("./mcp.settings.service");
|
|
24
27
|
const mcpOAuthService = di_1.Container.get(mcp_oauth_service_1.McpOAuthService);
|
|
25
28
|
const mcpSettingsService = di_1.Container.get(mcp_settings_service_1.McpSettingsService);
|
|
29
|
+
const globalConfig = di_1.Container.get(config_1.GlobalConfig);
|
|
30
|
+
const logger = di_1.Container.get(backend_common_1.Logger);
|
|
26
31
|
const mcpEnabledGuard = async (_req, res, next) => {
|
|
27
32
|
const enabled = await mcpSettingsService.getEnabled();
|
|
28
33
|
if (!enabled) {
|
|
@@ -31,6 +36,20 @@ const mcpEnabledGuard = async (_req, res, next) => {
|
|
|
31
36
|
}
|
|
32
37
|
next();
|
|
33
38
|
};
|
|
39
|
+
const mcpClientLimitGuard = async (_req, res, next) => {
|
|
40
|
+
if (await mcpOAuthService.isClientLimitReached()) {
|
|
41
|
+
const limit = globalConfig.endpoints.mcpMaxRegisteredClients;
|
|
42
|
+
logger.warn('MCP OAuth client registration rejected: instance limit reached (pre-check)', {
|
|
43
|
+
limit,
|
|
44
|
+
});
|
|
45
|
+
res.status(503).json({
|
|
46
|
+
error: 'server_error',
|
|
47
|
+
error_description: (0, mcp_errors_1.buildMcpClientLimitReachedMessage)(limit),
|
|
48
|
+
});
|
|
49
|
+
return;
|
|
50
|
+
}
|
|
51
|
+
next();
|
|
52
|
+
};
|
|
34
53
|
let McpOAuthController = class McpOAuthController {
|
|
35
54
|
constructor(urlService) {
|
|
36
55
|
this.urlService = urlService;
|
|
@@ -82,7 +101,7 @@ McpOAuthController.routers = [
|
|
|
82
101
|
path: '/mcp-oauth/register',
|
|
83
102
|
router: (0, register_js_1.clientRegistrationHandler)({ clientsStore: mcpOAuthService.clientsStore }),
|
|
84
103
|
skipAuth: true,
|
|
85
|
-
middlewares: [mcpEnabledGuard],
|
|
104
|
+
middlewares: [mcpEnabledGuard, mcpClientLimitGuard],
|
|
86
105
|
ipRateLimit: { limit: 10, windowMs: 5 * constants_1.Time.minutes.toMilliseconds },
|
|
87
106
|
},
|
|
88
107
|
{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp.oauth.controller.js","sourceRoot":"","sources":["../../../src/modules/mcp/mcp.oauth.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,8FAAmG;AACnG,4FAAuG;AACvG,wFAA6F;AAC7F,sFAAuF;AACvF,8CAAsC;AACtC,gDAA0F;AAC1F,gCAAoC;AAGpC,wDAAoD;AAEpD,2DAAwE;AACxE,mDAAoE;AACpE,iEAA4D;AAE5D,MAAM,eAAe,GAAG,cAAS,CAAC,GAAG,CAAC,mCAAe,CAAC,CAAC;AACvD,MAAM,kBAAkB,GAAG,cAAS,CAAC,GAAG,CAAC,yCAAkB,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"mcp.oauth.controller.js","sourceRoot":"","sources":["../../../src/modules/mcp/mcp.oauth.controller.ts"],"names":[],"mappings":"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"}
|
|
@@ -52,6 +52,7 @@ const n8n_workflow_1 = require("n8n-workflow");
|
|
|
52
52
|
const data_table_1 = require("./tools/data-table");
|
|
53
53
|
const execute_workflow_tool_1 = require("./tools/execute-workflow.tool");
|
|
54
54
|
const get_execution_tool_1 = require("./tools/get-execution.tool");
|
|
55
|
+
const search_executions_tool_1 = require("./tools/search-executions.tool");
|
|
55
56
|
const get_workflow_details_tool_1 = require("./tools/get-workflow-details.tool");
|
|
56
57
|
const publish_workflow_tool_1 = require("./tools/publish-workflow.tool");
|
|
57
58
|
const search_folders_tool_1 = require("./tools/search-folders.tool");
|
|
@@ -126,6 +127,8 @@ let McpService = class McpService {
|
|
|
126
127
|
server.registerTool(executeWorkflowTool.name, executeWorkflowTool.config, executeWorkflowTool.handler);
|
|
127
128
|
const getExecutionTool = (0, get_execution_tool_1.createGetExecutionTool)(user, this.executionRepository, this.workflowFinderService, this.telemetry);
|
|
128
129
|
server.registerTool(getExecutionTool.name, getExecutionTool.config, getExecutionTool.handler);
|
|
130
|
+
const searchExecutionsTool = (0, search_executions_tool_1.createSearchExecutionsTool)(user, this.executionService, this.workflowFinderService, this.telemetry);
|
|
131
|
+
server.registerTool(searchExecutionsTool.name, searchExecutionsTool.config, searchExecutionsTool.handler);
|
|
129
132
|
const workflowDetailsTool = (0, get_workflow_details_tool_1.createWorkflowDetailsTool)(user, this.urlService.getWebhookBaseUrl(), this.workflowFinderService, this.credentialsService, {
|
|
130
133
|
webhook: this.globalConfig.endpoints.webhook,
|
|
131
134
|
webhookTest: this.globalConfig.endpoints.webhookTest,
|
|
@@ -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":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,wDAA6C;AAC7C,wCAA6D;AAC7D,gCAMiB;AACjB,gCAAkC;AAClC,uCAA4C;AAC5C,+CAKsB;AAEtB,mDAQ4B;AAC5B,yEAA0E;AAC1E,mEAAoE;AACpE,2EAA4E;AAC5E,iFAA8E;AAC9E,yEAA0E;AAC1E,qEAAsE;AACtE,uEAAwE;AACxE,yEAA0E;AAC1E,6EAA8E;AAC9E,4GAA2G;AAC3G,wFAA0F;AAC1F,wFAAyF;AACzF,kHAAiH;AACjH,wGAAuG;AACvG,8GAA6G;AAC7G,gFAA+E;AAC/E,oGAAoG;AACpG,0FAAwF;AACxF,sGAAsG;AACtG,4GAAsG;AAEtG,2DAAuD;AACvD,iFAA6E;AAC7E,2EAAuE;AACvE,4FAAsF;AACtF,6CAAyC;AACzC,sEAA+D;AAC/D,0DAAsD;AACtD,wDAAoD;AACpD,2CAAwC;AACxC,uDAAmD;AACnD,qFAAgF;AAChF,iFAA4E;AAC5E,mEAA+D;AAC/D,2FAAsF;AACtF,mEAAoE;AACpE,sEAAkE;AAY3D,IAAM,UAAU,GAAhB,MAAM,UAAU;IAOtB,YACkB,MAAc,EACd,gBAAkC,EACnD,iBAAmC,EAClB,qBAA4C,EAC5C,eAAgC,EAChC,UAAsB,EACtB,kBAAsC,EACtC,gBAAkC,EAClC,YAA0B,EAC1B,SAAoB,EACpB,cAA8B,EAC9B,WAAwB,EACxB,cAA8B,EAC9B,2BAAwD,EACxD,uBAAgD,EAChD,SAAoB,EACpB,iBAAoC,EACpC,gBAAkC,EAClC,wBAAkD,EAClD,mBAAwC,EACxC,gBAAkC,EAClC,qBAA4C,EAC5C,oBAA0C;QAtB1C,WAAM,GAAN,MAAM,CAAQ;QACd,qBAAgB,GAAhB,gBAAgB,CAAkB;QAElC,0BAAqB,GAArB,qBAAqB,CAAuB;QAC5C,oBAAe,GAAf,eAAe,CAAiB;QAChC,eAAU,GAAV,UAAU,CAAY;QACtB,uBAAkB,GAAlB,kBAAkB,CAAoB;QACtC,qBAAgB,GAAhB,gBAAgB,CAAkB;QAClC,iBAAY,GAAZ,YAAY,CAAc;QAC1B,cAAS,GAAT,SAAS,CAAW;QACpB,mBAAc,GAAd,cAAc,CAAgB;QAC9B,gBAAW,GAAX,WAAW,CAAa;QACxB,mBAAc,GAAd,cAAc,CAAgB;QAC9B,gCAA2B,GAA3B,2BAA2B,CAA6B;QACxD,4BAAuB,GAAvB,uBAAuB,CAAyB;QAChD,cAAS,GAAT,SAAS,CAAW;QACpB,sBAAiB,GAAjB,iBAAiB,CAAmB;QACpC,qBAAgB,GAAhB,gBAAgB,CAAkB;QAClC,6BAAwB,GAAxB,wBAAwB,CAA0B;QAClD,wBAAmB,GAAnB,mBAAmB,CAAqB;QACxC,qBAAgB,GAAhB,gBAAgB,CAAkB;QAClC,0BAAqB,GAArB,qBAAqB,CAAuB;QAC5C,yBAAoB,GAApB,oBAAoB,CAAsB;QAzB3C,qBAAgB,GAAG,IAAI,GAAG,EAA8B,CAAC;IA0BvE,CAAC;IAEJ,KAAK,CAAC,SAAS,CAAC,IAAU;QACzB,MAAM,EAAE,SAAS,EAAE,GAAG,wDAAa,yCAAyC,GAAC,CAAC;QAC9E,MAAM,cAAc,GAAG,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,iBAAiB,CAAC;QACrE,MAAM,MAAM,GAAG,IAAI,SAAS,CAC3B;YACC,IAAI,EAAE,gBAAgB;YACtB,OAAO,EAAE,cAAc,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO;SAC3C,EACD;YACC,YAAY,EAAE,IAAA,qCAAkB,EAAC,cAAc,CAAC;SAChD,CACD,CAAC;QAGF,MAAM,kBAAkB,GAAG,IAAA,iDAAyB,EACnD,IAAI,EACJ,IAAI,CAAC,eAAe,EACpB,IAAI,CAAC,SAAS,CACd,CAAC;QACF,MAAM,CAAC,YAAY,CAClB,kBAAkB,CAAC,IAAI,EACvB,kBAAkB,CAAC,MAAM,EACzB,kBAAkB,CAAC,OAAO,CAC1B,CAAC;QAEF,MAAM,mBAAmB,GAAG,IAAA,iDAAyB,EACpD,IAAI,EACJ,IAAI,CAAC,qBAAqB,EAC1B,IAAI,CAAC,cAAc,EACnB,IAAI,CAAC,SAAS,EACd,IAAI,CACJ,CAAC;QACF,MAAM,CAAC,YAAY,CAClB,mBAAmB,CAAC,IAAI,EACxB,mBAAmB,CAAC,MAAM,EAC1B,mBAAmB,CAAC,OAAO,CAC3B,CAAC;QAEF,MAAM,gBAAgB,GAAG,IAAA,2CAAsB,EAC9C,IAAI,EACJ,IAAI,CAAC,mBAAmB,EACxB,IAAI,CAAC,qBAAqB,EAC1B,IAAI,CAAC,SAAS,CACd,CAAC;QACF,MAAM,CAAC,YAAY,CAAC,gBAAgB,CAAC,IAAI,EAAE,gBAAgB,CAAC,MAAM,EAAE,gBAAgB,CAAC,OAAO,CAAC,CAAC;QAE9F,MAAM,oBAAoB,GAAG,IAAA,mDAA0B,EACtD,IAAI,EACJ,IAAI,CAAC,gBAAgB,EACrB,IAAI,CAAC,qBAAqB,EAC1B,IAAI,CAAC,SAAS,CACd,CAAC;QACF,MAAM,CAAC,YAAY,CAClB,oBAAoB,CAAC,IAAI,EACzB,oBAAoB,CAAC,MAAM,EAC3B,oBAAoB,CAAC,OAAO,CAC5B,CAAC;QAEF,MAAM,mBAAmB,GAAG,IAAA,qDAAyB,EACpD,IAAI,EACJ,IAAI,CAAC,UAAU,CAAC,iBAAiB,EAAE,EACnC,IAAI,CAAC,qBAAqB,EAC1B,IAAI,CAAC,kBAAkB,EACvB;YACC,OAAO,EAAE,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,OAAO;YAC5C,WAAW,EAAE,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,WAAW;SACpD,EACD,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,cAAc,CACnB,CAAC;QACF,MAAM,CAAC,YAAY,CAClB,mBAAmB,CAAC,IAAI,EACxB,mBAAmB,CAAC,MAAM,EAC1B,mBAAmB,CAAC,OAAO,CAC3B,CAAC;QAEF,MAAM,mBAAmB,GAAG,IAAA,iDAAyB,EACpD,IAAI,EACJ,IAAI,CAAC,qBAAqB,EAC1B,IAAI,CAAC,eAAe,EACpB,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,oBAAoB,CACzB,CAAC;QACF,MAAM,CAAC,YAAY,CAClB,mBAAmB,CAAC,IAAI,EACxB,mBAAmB,CAAC,MAAM,EAC1B,mBAAmB,CAAC,OAAO,CAC3B,CAAC;QAEF,MAAM,qBAAqB,GAAG,IAAA,qDAA2B,EACxD,IAAI,EACJ,IAAI,CAAC,qBAAqB,EAC1B,IAAI,CAAC,eAAe,EACpB,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,oBAAoB,CACzB,CAAC;QACF,MAAM,CAAC,YAAY,CAClB,qBAAqB,CAAC,IAAI,EAC1B,qBAAqB,CAAC,MAAM,EAC5B,qBAAqB,CAAC,OAAO,CAC7B,CAAC;QAEF,MAAM,sBAAsB,GAAG,IAAA,6DAA4B,EAC1D,IAAI,EACJ,IAAI,CAAC,qBAAqB,EAC1B,IAAI,CAAC,gBAAgB,EACrB,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,MAAM,CACX,CAAC;QACF,MAAM,CAAC,YAAY,CAClB,sBAAsB,CAAC,IAAI,EAC3B,sBAAsB,CAAC,MAAM,EAC7B,sBAAsB,CAAC,OAAO,CAC9B,CAAC;QAEF,MAAM,gBAAgB,GAAG,IAAA,2CAAsB,EAC9C,IAAI,EACJ,IAAI,CAAC,qBAAqB,EAC1B,IAAI,CAAC,gBAAgB,EACrB,IAAI,CAAC,cAAc,EACnB,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,SAAS,EACd,IAAI,CACJ,CAAC;QACF,MAAM,CAAC,YAAY,CAAC,gBAAgB,CAAC,IAAI,EAAE,gBAAgB,CAAC,MAAM,EAAE,gBAAgB,CAAC,OAAO,CAAC,CAAC;QAG9F,MAAM,YAAY,GAAG,IAAI,CAAC,qBAAqB,CAAC,8BAA8B,CAAC,IAAI,CAAC,CAAC;QAErF,MAAM,oBAAoB,GAAG,IAAA,uCAA0B,EAAC,IAAI,EAAE,YAAY,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QAC5F,MAAM,CAAC,YAAY,CAClB,oBAAoB,CAAC,IAAI,EACzB,oBAAoB,CAAC,MAAM,EAC3B,oBAAoB,CAAC,OAAO,CAC5B,CAAC;QAEF,MAAM,mBAAmB,GAAG,IAAA,sCAAyB,EAAC,IAAI,EAAE,YAAY,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QAC1F,MAAM,CAAC,YAAY,CAClB,mBAAmB,CAAC,IAAI,EACxB,mBAAmB,CAAC,MAAM,EAC1B,mBAAmB,CAAC,OAAO,CAC3B,CAAC;QAEF,MAAM,mBAAmB,GAAG,IAAA,sCAAyB,EAAC,IAAI,EAAE,YAAY,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QAC1F,MAAM,CAAC,YAAY,CAClB,mBAAmB,CAAC,IAAI,EACxB,mBAAmB,CAAC,MAAM,EAC1B,mBAAmB,CAAC,OAAO,CAC3B,CAAC;QAEF,MAAM,sBAAsB,GAAG,IAAA,yCAA4B,EAAC,IAAI,EAAE,YAAY,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QAChG,MAAM,CAAC,YAAY,CAClB,sBAAsB,CAAC,IAAI,EAC3B,sBAAsB,CAAC,MAAM,EAC7B,sBAAsB,CAAC,OAAO,CAC9B,CAAC;QAEF,MAAM,yBAAyB,GAAG,IAAA,4CAA+B,EAChE,IAAI,EACJ,YAAY,EACZ,IAAI,CAAC,SAAS,CACd,CAAC;QACF,MAAM,CAAC,YAAY,CAClB,yBAAyB,CAAC,IAAI,EAC9B,yBAAyB,CAAC,MAAM,EAChC,yBAAyB,CAAC,OAAO,CACjC,CAAC;QAEF,MAAM,yBAAyB,GAAG,IAAA,4CAA+B,EAChE,IAAI,EACJ,YAAY,EACZ,IAAI,CAAC,SAAS,CACd,CAAC;QACF,MAAM,CAAC,YAAY,CAClB,yBAAyB,CAAC,IAAI,EAC9B,yBAAyB,CAAC,MAAM,EAChC,yBAAyB,CAAC,OAAO,CACjC,CAAC;QAEF,MAAM,oBAAoB,GAAG,IAAA,uCAA0B,EAAC,IAAI,EAAE,YAAY,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QAC5F,MAAM,CAAC,YAAY,CAClB,oBAAoB,CAAC,IAAI,EACzB,oBAAoB,CAAC,MAAM,EAC3B,oBAAoB,CAAC,OAAO,CAC5B,CAAC;QAGF,IAAI,cAAc,EAAE,CAAC;YACpB,MAAM,IAAI,CAAC,oBAAoB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QAC/C,CAAC;QAED,OAAO,MAAM,CAAC;IACf,CAAC;IAEO,KAAK,CAAC,oBAAoB,CAAC,MAAsC,EAAE,IAAU;QACpF,MAAM,IAAI,CAAC,2BAA2B,CAAC,UAAU,EAAE,CAAC;QAEpD,MAAM,eAAe,GAAG,IAAA,0DAA6B,EACpD,IAAI,EACJ,IAAI,CAAC,2BAA2B,EAChC,IAAI,CAAC,SAAS,CACd,CAAC;QACF,MAAM,CAAC,YAAY,CAAC,eAAe,CAAC,IAAI,EAAE,eAAe,CAAC,MAAM,EAAE,eAAe,CAAC,OAAO,CAAC,CAAC;QAE3F,MAAM,gBAAgB,GAAG,IAAA,6DAA8B,EACtD,IAAI,EACJ,IAAI,CAAC,2BAA2B,EAChC,IAAI,CAAC,SAAS,CACd,CAAC;QACF,MAAM,CAAC,YAAY,CAAC,gBAAgB,CAAC,IAAI,EAAE,gBAAgB,CAAC,MAAM,EAAE,gBAAgB,CAAC,OAAO,CAAC,CAAC;QAE9F,MAAM,kBAAkB,GAAG,IAAA,uEAAmC,EAC7D,IAAI,EACJ,IAAI,CAAC,2BAA2B,EAChC,IAAI,CAAC,SAAS,CACd,CAAC;QACF,MAAM,CAAC,YAAY,CAClB,kBAAkB,CAAC,IAAI,EACvB,kBAAkB,CAAC,MAAM,EACzB,kBAAkB,CAAC,OAAO,CAC1B,CAAC;QAEF,MAAM,YAAY,GAAG,IAAA,4DAA8B,EAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QAC1E,MAAM,CAAC,YAAY,CAAC,YAAY,CAAC,IAAI,EAAE,YAAY,CAAC,MAAM,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;QAElF,MAAM,UAAU,GAAG,IAAA,iEAAgC,EAClD,IAAI,EACJ,IAAI,CAAC,uBAAuB,EAC5B,IAAI,CAAC,qBAAqB,EAC1B,IAAI,CAAC,UAAU,EACf,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,kBAAkB,EACvB,IAAI,CAAC,iBAAiB,CACtB,CAAC;QACF,MAAM,CAAC,YAAY,CAAC,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,MAAM,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC;QAE5E,MAAM,kBAAkB,GAAG,IAAA,+CAAwB,EAClD,IAAI,EACJ,IAAI,CAAC,iBAAiB,EACtB,IAAI,CAAC,SAAS,CACd,CAAC;QACF,MAAM,CAAC,YAAY,CAClB,kBAAkB,CAAC,IAAI,EACvB,kBAAkB,CAAC,MAAM,EACzB,kBAAkB,CAAC,OAAO,CAC1B,CAAC;QAEF,MAAM,iBAAiB,GAAG,IAAA,6CAAuB,EAChD,IAAI,EACJ,IAAI,CAAC,gBAAgB,EACrB,IAAI,CAAC,cAAc,EACnB,IAAI,CAAC,SAAS,CACd,CAAC;QACF,MAAM,CAAC,YAAY,CAClB,iBAAiB,CAAC,IAAI,EACtB,iBAAiB,CAAC,MAAM,EACxB,iBAAiB,CAAC,OAAO,CACzB,CAAC;QAEF,MAAM,WAAW,GAAG,IAAA,gDAAyB,EAC5C,IAAI,EACJ,IAAI,CAAC,qBAAqB,EAC1B,IAAI,CAAC,eAAe,EACpB,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,oBAAoB,CACzB,CAAC;QACF,MAAM,CAAC,YAAY,CAAC,WAAW,CAAC,IAAI,EAAE,WAAW,CAAC,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;QAE/E,MAAM,UAAU,GAAG,IAAA,+CAAwB,EAC1C,IAAI,EACJ,IAAI,CAAC,qBAAqB,EAC1B,IAAI,CAAC,eAAe,EACpB,IAAI,CAAC,UAAU,EACf,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,kBAAkB,EACvB,IAAI,CAAC,wBAAwB,EAC7B,IAAI,CAAC,oBAAoB,CACzB,CAAC;QACF,MAAM,CAAC,YAAY,CAAC,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,MAAM,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC;QAG5E,MAAM,CAAC,QAAQ,CACd,wBAAwB,EACxB,8BAA8B,EAC9B;YACC,WAAW,EACV,kJAAkJ;SACnJ,EACD,KAAK,IAAI,EAAE,CAAC,CAAC;YACZ,QAAQ,EAAE;gBACT;oBACC,GAAG,EAAE,8BAA8B;oBACnC,QAAQ,EAAE,YAAY;oBACtB,IAAI,EAAE,IAAA,8CAAsB,GAAE;iBAC9B;aACD;SACD,CAAC,CACF,CAAC;QAIF,MAAM,UAAU,GAAG,IAAA,mEAAiC,EAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QAC3E,MAAM,CAAC,YAAY,CAAC,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,MAAM,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC;IAC7E,CAAC;IAOD,IAAI,WAAW;QACd,OAAO,IAAI,CAAC,gBAAgB,CAAC,IAAI,KAAK,OAAO,CAAC;IAC/C,CAAC;IAMD,qBAAqB,CAAC,WAAmB;QACxC,MAAM,QAAQ,GAAG,IAAA,oCAAqB,GAAoB,CAAC;QAC3D,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,WAAW,EAAE;YACtC,WAAW;YACX,OAAO,EAAE,QAAQ;YACjB,SAAS,EAAE,IAAI,IAAI,EAAE;SACrB,CAAC,CAAC;QAEH,OAAO,QAAQ,CAAC;IACjB,CAAC;IAMD,oBAAoB,CAAC,WAAmB,EAAE,OAAyB;QAClE,MAAM,OAAO,GAAG,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QACvD,IAAI,CAAC,OAAO,EAAE,CAAC;YACd,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,6CAA6C,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;YACjF,OAAO;QACR,CAAC;QAED,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACjC,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IAC3C,CAAC;IAKD,qBAAqB,CAAC,WAAmB;QACxC,IAAI,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC;YAC5C,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;YAC1C,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,8BAA8B,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;QACpE,CAAC;IACF,CAAC;IAMD,sBAAsB,CAAC,WAAmB,EAAE,MAAM,GAAG,yBAAyB;QAC7E,MAAM,OAAO,GAAG,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QACvD,IAAI,CAAC,OAAO,EAAE,CAAC;YACd,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,oCAAoC,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;YACzE,OAAO;QACR,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,kCAAkC,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,CAAC;QAE/E,MAAM,iBAAiB,GAAG,IAAI,4CAA6B,CAAC,WAAW,CAAC,CAAC;QACzE,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC;QAE1C,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAE1C,IAAI,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC;YAC5C,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,WAAW,EAAE,iBAAiB,CAAC,CAAC;QACrE,CAAC;IACF,CAAC;IAMD,0BAA0B,CAAC,MAAM,GAAG,sBAAsB;QACzD,MAAM,YAAY,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,CAAC,CAAC;QAC9D,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,uCAAuC,EAAE;YAC1D,KAAK,EAAE,YAAY,CAAC,MAAM;YAC1B,MAAM;SACN,CAAC,CAAC;QAEH,KAAK,MAAM,WAAW,IAAI,YAAY,EAAE,CAAC;YACxC,IAAI,CAAC,sBAAsB,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;QAClD,CAAC;IACF,CAAC;IAKD,IAAI,qBAAqB;QACxB,OAAO,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC;IACnC,CAAC;CAGD,CAAA;AAtbY,gCAAU;qBAAV,UAAU;IADtB,IAAA,YAAO,GAAE;qCASiB,uBAAM;QACI,yBAAgB;QAChC,2BAAgB;QACK,+CAAqB;QAC3B,kCAAe;QACpB,wBAAU;QACF,wCAAkB;QACpB,oCAAgB;QACpB,qBAAY;QACf,qBAAS;QACJ,gCAAc;QACjB,0BAAW;QACR,mCAAc;QACD,4DAA2B;QAC/B,mDAAuB;QACrC,sBAAS;QACD,sBAAiB;QAClB,qBAAgB;QACR,6BAAwB;QAC7B,wBAAmB;QACtB,oCAAgB;QACX,gDAAqB;QACtB,4CAAoB;GA9BhD,UAAU,CAsbtB"}
|
|
@@ -1,32 +1,31 @@
|
|
|
1
1
|
import { ModuleRegistry, Logger } from '@n8n/backend-common';
|
|
2
|
+
import { InstanceSettingsLoaderConfig } from '@n8n/config';
|
|
2
3
|
import { type AuthenticatedRequest } from '@n8n/db';
|
|
3
4
|
import type { Response } from 'express';
|
|
5
|
+
import type { ListQuery } from '../../requests';
|
|
6
|
+
import { WorkflowService } from '../../workflows/workflow.service';
|
|
4
7
|
import { UpdateMcpSettingsDto } from './dto/update-mcp-settings.dto';
|
|
5
|
-
import {
|
|
8
|
+
import { UpdateWorkflowsAvailabilityDto } from './dto/update-workflows-availability.dto';
|
|
6
9
|
import { McpServerApiKeyService } from './mcp-api-key.service';
|
|
7
10
|
import { McpSettingsService } from './mcp.settings.service';
|
|
8
|
-
import { CollaborationService } from '../../collaboration/collaboration.service';
|
|
9
|
-
import type { ListQuery } from '../../requests';
|
|
10
|
-
import { WorkflowFinderService } from '../../workflows/workflow-finder.service';
|
|
11
|
-
import { WorkflowService } from '../../workflows/workflow.service';
|
|
12
11
|
export declare class McpSettingsController {
|
|
13
12
|
private readonly mcpSettingsService;
|
|
14
13
|
private readonly logger;
|
|
15
14
|
private readonly moduleRegistry;
|
|
16
15
|
private readonly mcpServerApiKeyService;
|
|
17
|
-
private readonly workflowFinderService;
|
|
18
16
|
private readonly workflowService;
|
|
19
|
-
private readonly
|
|
20
|
-
constructor(mcpSettingsService: McpSettingsService, logger: Logger, moduleRegistry: ModuleRegistry, mcpServerApiKeyService: McpServerApiKeyService,
|
|
17
|
+
private readonly instanceSettingsLoaderConfig;
|
|
18
|
+
constructor(mcpSettingsService: McpSettingsService, logger: Logger, moduleRegistry: ModuleRegistry, mcpServerApiKeyService: McpServerApiKeyService, workflowService: WorkflowService, instanceSettingsLoaderConfig: InstanceSettingsLoaderConfig);
|
|
21
19
|
updateSettings(_req: AuthenticatedRequest, _res: Response, dto: UpdateMcpSettingsDto): Promise<{
|
|
22
20
|
mcpAccessEnabled: boolean;
|
|
23
21
|
}>;
|
|
24
22
|
getApiKeyForMcpServer(req: AuthenticatedRequest): Promise<import("@n8n/db").ApiKey>;
|
|
25
23
|
rotateApiKeyForMcpServer(req: AuthenticatedRequest): Promise<import("@n8n/db").ApiKey>;
|
|
26
24
|
getMcpEligibleWorkflows(req: ListQuery.Request, res: Response): Promise<void>;
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
25
|
+
toggleWorkflowsMCPAccess(req: AuthenticatedRequest, _res: Response, dto: UpdateWorkflowsAvailabilityDto): Promise<{
|
|
26
|
+
updatedCount: number;
|
|
27
|
+
skippedCount: number;
|
|
28
|
+
failedCount: number;
|
|
29
|
+
updatedIds?: string[];
|
|
31
30
|
}>;
|
|
32
31
|
}
|
|
@@ -14,29 +14,28 @@ var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
|
14
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
15
|
exports.McpSettingsController = void 0;
|
|
16
16
|
const backend_common_1 = require("@n8n/backend-common");
|
|
17
|
-
const
|
|
17
|
+
const config_1 = require("@n8n/config");
|
|
18
18
|
const decorators_1 = require("@n8n/decorators");
|
|
19
|
-
const
|
|
19
|
+
const forbidden_error_1 = require("../../errors/response-errors/forbidden.error");
|
|
20
|
+
const middlewares_1 = require("../../middlewares");
|
|
21
|
+
const workflow_service_1 = require("../../workflows/workflow.service");
|
|
20
22
|
const update_mcp_settings_dto_1 = require("./dto/update-mcp-settings.dto");
|
|
21
|
-
const
|
|
23
|
+
const update_workflows_availability_dto_1 = require("./dto/update-workflows-availability.dto");
|
|
22
24
|
const mcp_api_key_service_1 = require("./mcp-api-key.service");
|
|
23
25
|
const mcp_settings_service_1 = require("./mcp.settings.service");
|
|
24
|
-
const collaboration_service_1 = require("../../collaboration/collaboration.service");
|
|
25
|
-
const not_found_error_1 = require("../../errors/response-errors/not-found.error");
|
|
26
|
-
const middlewares_1 = require("../../middlewares");
|
|
27
|
-
const workflow_finder_service_1 = require("../../workflows/workflow-finder.service");
|
|
28
|
-
const workflow_service_1 = require("../../workflows/workflow.service");
|
|
29
26
|
let McpSettingsController = class McpSettingsController {
|
|
30
|
-
constructor(mcpSettingsService, logger, moduleRegistry, mcpServerApiKeyService,
|
|
27
|
+
constructor(mcpSettingsService, logger, moduleRegistry, mcpServerApiKeyService, workflowService, instanceSettingsLoaderConfig) {
|
|
31
28
|
this.mcpSettingsService = mcpSettingsService;
|
|
32
29
|
this.logger = logger;
|
|
33
30
|
this.moduleRegistry = moduleRegistry;
|
|
34
31
|
this.mcpServerApiKeyService = mcpServerApiKeyService;
|
|
35
|
-
this.workflowFinderService = workflowFinderService;
|
|
36
32
|
this.workflowService = workflowService;
|
|
37
|
-
this.
|
|
33
|
+
this.instanceSettingsLoaderConfig = instanceSettingsLoaderConfig;
|
|
38
34
|
}
|
|
39
35
|
async updateSettings(_req, _res, dto) {
|
|
36
|
+
if (this.instanceSettingsLoaderConfig.mcpManagedByEnv) {
|
|
37
|
+
throw new forbidden_error_1.ForbiddenError('MCP settings are managed via environment variables');
|
|
38
|
+
}
|
|
40
39
|
const enabled = dto.mcpAccessEnabled;
|
|
41
40
|
await this.mcpSettingsService.setEnabled(enabled);
|
|
42
41
|
try {
|
|
@@ -67,37 +66,10 @@ let McpSettingsController = class McpSettingsController {
|
|
|
67
66
|
const { workflows, count } = await this.workflowService.getMany(req.user, options, false, false, false, ['workflow:update']);
|
|
68
67
|
res.json({ count, data: workflows });
|
|
69
68
|
}
|
|
70
|
-
async
|
|
71
|
-
const
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
workflowId,
|
|
75
|
-
userId: req.user.id,
|
|
76
|
-
});
|
|
77
|
-
throw new not_found_error_1.NotFoundError('Could not load the workflow - you can only access workflows available to you');
|
|
78
|
-
}
|
|
79
|
-
const workflowUpdate = new db_1.WorkflowEntity();
|
|
80
|
-
const currentSettings = workflow.settings ?? {};
|
|
81
|
-
workflowUpdate.settings = {
|
|
82
|
-
...currentSettings,
|
|
83
|
-
availableInMCP: dto.availableInMCP,
|
|
84
|
-
};
|
|
85
|
-
workflowUpdate.versionId = workflow.versionId;
|
|
86
|
-
const updatedWorkflow = await this.workflowService.update(req.user, workflowUpdate, workflowId);
|
|
87
|
-
const checksum = await (0, n8n_workflow_1.calculateWorkflowChecksum)(updatedWorkflow);
|
|
88
|
-
void this.collaborationService
|
|
89
|
-
.broadcastWorkflowSettingsUpdated(workflowId, { availableInMCP: dto.availableInMCP }, checksum)
|
|
90
|
-
.catch((error) => {
|
|
91
|
-
this.logger.warn('Failed to broadcast workflow settings update', {
|
|
92
|
-
workflowId,
|
|
93
|
-
cause: error instanceof Error ? error.message : String(error),
|
|
94
|
-
});
|
|
95
|
-
});
|
|
96
|
-
return {
|
|
97
|
-
id: updatedWorkflow.id,
|
|
98
|
-
settings: updatedWorkflow.settings,
|
|
99
|
-
versionId: updatedWorkflow.versionId,
|
|
100
|
-
};
|
|
69
|
+
async toggleWorkflowsMCPAccess(req, _res, dto) {
|
|
70
|
+
const { changedWorkflows, ...result } = await this.mcpSettingsService.bulkSetAvailableInMCP(req.user, dto);
|
|
71
|
+
void this.mcpSettingsService.broadcastWorkflowMCPAvailabilityChanged(changedWorkflows);
|
|
72
|
+
return result;
|
|
101
73
|
}
|
|
102
74
|
};
|
|
103
75
|
exports.McpSettingsController = McpSettingsController;
|
|
@@ -130,22 +102,19 @@ __decorate([
|
|
|
130
102
|
__metadata("design:returntype", Promise)
|
|
131
103
|
], McpSettingsController.prototype, "getMcpEligibleWorkflows", null);
|
|
132
104
|
__decorate([
|
|
133
|
-
(0, decorators_1.
|
|
134
|
-
(
|
|
135
|
-
__param(2, (0, decorators_1.Param)('workflowId')),
|
|
136
|
-
__param(3, decorators_1.Body),
|
|
105
|
+
(0, decorators_1.Patch)('/workflows/toggle-access'),
|
|
106
|
+
__param(2, decorators_1.Body),
|
|
137
107
|
__metadata("design:type", Function),
|
|
138
|
-
__metadata("design:paramtypes", [Object, Object,
|
|
108
|
+
__metadata("design:paramtypes", [Object, Object, update_workflows_availability_dto_1.UpdateWorkflowsAvailabilityDto]),
|
|
139
109
|
__metadata("design:returntype", Promise)
|
|
140
|
-
], McpSettingsController.prototype, "
|
|
110
|
+
], McpSettingsController.prototype, "toggleWorkflowsMCPAccess", null);
|
|
141
111
|
exports.McpSettingsController = McpSettingsController = __decorate([
|
|
142
112
|
(0, decorators_1.RestController)('/mcp'),
|
|
143
113
|
__metadata("design:paramtypes", [mcp_settings_service_1.McpSettingsService,
|
|
144
114
|
backend_common_1.Logger,
|
|
145
115
|
backend_common_1.ModuleRegistry,
|
|
146
116
|
mcp_api_key_service_1.McpServerApiKeyService,
|
|
147
|
-
workflow_finder_service_1.WorkflowFinderService,
|
|
148
117
|
workflow_service_1.WorkflowService,
|
|
149
|
-
|
|
118
|
+
config_1.InstanceSettingsLoaderConfig])
|
|
150
119
|
], McpSettingsController);
|
|
151
120
|
//# sourceMappingURL=mcp.settings.controller.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp.settings.controller.js","sourceRoot":"","sources":["../../../src/modules/mcp/mcp.settings.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,wDAA6D;AAC7D,
|
|
1
|
+
{"version":3,"file":"mcp.settings.controller.js","sourceRoot":"","sources":["../../../src/modules/mcp/mcp.settings.controller.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,37 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Logger } from '@n8n/backend-common';
|
|
2
|
+
import { GlobalConfig } from '@n8n/config';
|
|
3
|
+
import type { User } from '@n8n/db';
|
|
4
|
+
import { SettingsRepository, WorkflowRepository } from '@n8n/db';
|
|
5
|
+
import { type IWorkflowSettings } from 'n8n-workflow';
|
|
6
|
+
import { CollaborationService } from '../../collaboration/collaboration.service';
|
|
2
7
|
import { CacheService } from '../../services/cache/cache.service';
|
|
8
|
+
import { WorkflowFinderService } from '../../workflows/workflow-finder.service';
|
|
9
|
+
import type { UpdateWorkflowsAvailabilityDto } from './dto/update-workflows-availability.dto';
|
|
10
|
+
type BulkSetAvailableInMCPResult = {
|
|
11
|
+
updatedCount: number;
|
|
12
|
+
skippedCount: number;
|
|
13
|
+
failedCount: number;
|
|
14
|
+
changedWorkflows: WorkflowMCPAvailabilityChange[];
|
|
15
|
+
updatedIds?: string[];
|
|
16
|
+
};
|
|
17
|
+
type WorkflowMCPAvailabilityChange = {
|
|
18
|
+
workflowId: string;
|
|
19
|
+
settings: Pick<IWorkflowSettings, 'availableInMCP'>;
|
|
20
|
+
checksum: string;
|
|
21
|
+
};
|
|
3
22
|
export declare class McpSettingsService {
|
|
4
23
|
private readonly settingsRepository;
|
|
5
24
|
private readonly cacheService;
|
|
6
|
-
|
|
25
|
+
private readonly workflowRepository;
|
|
26
|
+
private readonly workflowFinderService;
|
|
27
|
+
private readonly globalConfig;
|
|
28
|
+
private readonly logger;
|
|
29
|
+
private readonly collaborationService;
|
|
30
|
+
constructor(settingsRepository: SettingsRepository, cacheService: CacheService, workflowRepository: WorkflowRepository, workflowFinderService: WorkflowFinderService, globalConfig: GlobalConfig, logger: Logger, collaborationService: CollaborationService);
|
|
7
31
|
getEnabled(): Promise<boolean>;
|
|
8
32
|
setEnabled(enabled: boolean): Promise<void>;
|
|
33
|
+
bulkSetAvailableInMCP(user: User, dto: UpdateWorkflowsAvailabilityDto): Promise<BulkSetAvailableInMCPResult>;
|
|
34
|
+
broadcastWorkflowMCPAvailabilityChanged(changes: WorkflowMCPAvailabilityChange[]): Promise<void>;
|
|
35
|
+
private resolveCandidateIds;
|
|
9
36
|
}
|
|
37
|
+
export {};
|