mcp-creatio 0.6.2 → 0.6.3
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/README.md +233 -164
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +22 -10
- package/dist/cli.js.map +1 -1
- package/dist/config-builder.d.ts +8 -0
- package/dist/config-builder.d.ts.map +1 -1
- package/dist/config-builder.js +147 -43
- package/dist/config-builder.js.map +1 -1
- package/dist/consts.d.ts.map +1 -1
- package/dist/consts.js +2 -1
- package/dist/consts.js.map +1 -1
- package/dist/creatio/auth/auth-manager.d.ts.map +1 -1
- package/dist/creatio/auth/auth-manager.js +5 -2
- package/dist/creatio/auth/auth-manager.js.map +1 -1
- package/dist/creatio/auth/auth.d.ts +4 -31
- package/dist/creatio/auth/auth.d.ts.map +1 -1
- package/dist/creatio/auth/auth.js +20 -26
- package/dist/creatio/auth/auth.js.map +1 -1
- package/dist/creatio/auth/constants.d.ts +14 -0
- package/dist/creatio/auth/constants.d.ts.map +1 -0
- package/dist/creatio/auth/constants.js +20 -0
- package/dist/creatio/auth/constants.js.map +1 -0
- package/dist/creatio/auth/contracts.d.ts +15 -0
- package/dist/creatio/auth/contracts.d.ts.map +1 -0
- package/dist/creatio/auth/contracts.js +3 -0
- package/dist/creatio/auth/contracts.js.map +1 -0
- package/dist/creatio/auth/headers.d.ts +3 -0
- package/dist/creatio/auth/headers.d.ts.map +1 -0
- package/dist/creatio/auth/headers.js +15 -0
- package/dist/creatio/auth/headers.js.map +1 -0
- package/dist/creatio/auth/identity.d.ts +8 -0
- package/dist/creatio/auth/identity.d.ts.map +1 -0
- package/dist/creatio/auth/identity.js +18 -0
- package/dist/creatio/auth/identity.js.map +1 -0
- package/dist/creatio/auth/index.d.ts +4 -3
- package/dist/creatio/auth/index.d.ts.map +1 -1
- package/dist/creatio/auth/index.js +5 -3
- package/dist/creatio/auth/index.js.map +1 -1
- package/dist/creatio/auth/providers/base-oauth2-provider.d.ts +13 -7
- package/dist/creatio/auth/providers/base-oauth2-provider.d.ts.map +1 -1
- package/dist/creatio/auth/providers/base-oauth2-provider.js +29 -19
- package/dist/creatio/auth/providers/base-oauth2-provider.js.map +1 -1
- package/dist/creatio/auth/providers/base-provider.js +1 -1
- package/dist/creatio/auth/providers/base-provider.js.map +1 -1
- package/dist/creatio/auth/providers/broker-provider.d.ts +20 -0
- package/dist/creatio/auth/providers/broker-provider.d.ts.map +1 -0
- package/dist/creatio/auth/providers/broker-provider.js +72 -0
- package/dist/creatio/auth/providers/broker-provider.js.map +1 -0
- package/dist/creatio/auth/providers/creatio-oauth-client.d.ts +27 -0
- package/dist/creatio/auth/providers/creatio-oauth-client.d.ts.map +1 -0
- package/dist/creatio/auth/providers/creatio-oauth-client.js +122 -0
- package/dist/creatio/auth/providers/creatio-oauth-client.js.map +1 -0
- package/dist/creatio/auth/providers/index.d.ts +3 -1
- package/dist/creatio/auth/providers/index.d.ts.map +1 -1
- package/dist/creatio/auth/providers/index.js +3 -1
- package/dist/creatio/auth/providers/index.js.map +1 -1
- package/dist/creatio/auth/providers/oauth2-bearer-provider.d.ts +17 -0
- package/dist/creatio/auth/providers/oauth2-bearer-provider.d.ts.map +1 -0
- package/dist/creatio/auth/providers/oauth2-bearer-provider.js +33 -0
- package/dist/creatio/auth/providers/oauth2-bearer-provider.js.map +1 -0
- package/dist/creatio/auth/providers/oauth2-provider.d.ts +2 -2
- package/dist/creatio/auth/providers/oauth2-provider.d.ts.map +1 -1
- package/dist/creatio/auth/providers/oauth2-provider.js +4 -9
- package/dist/creatio/auth/providers/oauth2-provider.js.map +1 -1
- package/dist/creatio/auth/providers/type.d.ts +20 -1
- package/dist/creatio/auth/providers/type.d.ts.map +1 -1
- package/dist/creatio/auth/providers/type.js +22 -2
- package/dist/creatio/auth/providers/type.js.map +1 -1
- package/dist/creatio/client-config.d.ts +26 -5
- package/dist/creatio/client-config.d.ts.map +1 -1
- package/dist/creatio/engines/admin-operation-engine.d.ts +1 -1
- package/dist/creatio/engines/admin-operation-engine.d.ts.map +1 -1
- package/dist/creatio/engines/admin-operation-engine.js +3 -3
- package/dist/creatio/engines/admin-operation-engine.js.map +1 -1
- package/dist/creatio/engines/configuration-engine.d.ts +1 -1
- package/dist/creatio/engines/configuration-engine.d.ts.map +1 -1
- package/dist/creatio/engines/configuration-engine.js +3 -3
- package/dist/creatio/engines/configuration-engine.js.map +1 -1
- package/dist/creatio/engines/crud-engine.d.ts +1 -1
- package/dist/creatio/engines/crud-engine.d.ts.map +1 -1
- package/dist/creatio/engines/crud-engine.js +4 -4
- package/dist/creatio/engines/crud-engine.js.map +1 -1
- package/dist/creatio/engines/engine-manager.d.ts +1 -2
- package/dist/creatio/engines/engine-manager.d.ts.map +1 -1
- package/dist/creatio/engines/engine-manager.js +4 -10
- package/dist/creatio/engines/engine-manager.js.map +1 -1
- package/dist/creatio/engines/engine.d.ts.map +1 -1
- package/dist/creatio/engines/engine.js +12 -1
- package/dist/creatio/engines/engine.js.map +1 -1
- package/dist/creatio/engines/feature-engine.d.ts +1 -1
- package/dist/creatio/engines/feature-engine.d.ts.map +1 -1
- package/dist/creatio/engines/feature-engine.js +3 -3
- package/dist/creatio/engines/feature-engine.js.map +1 -1
- package/dist/creatio/engines/process-engine.d.ts +1 -1
- package/dist/creatio/engines/process-engine.d.ts.map +1 -1
- package/dist/creatio/engines/process-engine.js +3 -3
- package/dist/creatio/engines/process-engine.js.map +1 -1
- package/dist/creatio/engines/sys-settings-engine.d.ts +1 -1
- package/dist/creatio/engines/sys-settings-engine.d.ts.map +1 -1
- package/dist/creatio/engines/sys-settings-engine.js +3 -3
- package/dist/creatio/engines/sys-settings-engine.js.map +1 -1
- package/dist/creatio/engines/user-engine.d.ts +1 -1
- package/dist/creatio/engines/user-engine.d.ts.map +1 -1
- package/dist/creatio/engines/user-engine.js +3 -3
- package/dist/creatio/engines/user-engine.js.map +1 -1
- package/dist/creatio/services/creatio-service-context.d.ts +1 -1
- package/dist/creatio/services/creatio-service-context.d.ts.map +1 -1
- package/dist/creatio/services/crud-provider-factory.d.ts.map +1 -1
- package/dist/creatio/services/crud-provider-factory.js.map +1 -1
- package/dist/creatio/services/dataservice/data-service-column-values.d.ts.map +1 -1
- package/dist/creatio/services/dataservice/data-service-crud-provider.d.ts +3 -3
- package/dist/creatio/services/dataservice/data-service-crud-provider.d.ts.map +1 -1
- package/dist/creatio/services/dataservice/data-service-crud-provider.js +5 -5
- package/dist/creatio/services/dataservice/data-service-crud-provider.js.map +1 -1
- package/dist/creatio/services/dataservice/data-service-filter-translator.d.ts.map +1 -1
- package/dist/creatio/services/dataservice/data-service-filter-translator.js +7 -2
- package/dist/creatio/services/dataservice/data-service-filter-translator.js.map +1 -1
- package/dist/creatio/services/dataservice/data-service-query-builder.d.ts.map +1 -1
- package/dist/creatio/services/dataservice/data-service-query-builder.js.map +1 -1
- package/dist/creatio/services/dataservice/data-service-schema.d.ts +3 -3
- package/dist/creatio/services/dataservice/data-service-schema.d.ts.map +1 -1
- package/dist/creatio/services/dataservice/data-service-schema.js +19 -17
- package/dist/creatio/services/dataservice/data-service-schema.js.map +1 -1
- package/dist/creatio/services/dataservice/data-service-transport.d.ts +1 -1
- package/dist/creatio/services/dataservice/data-service-transport.d.ts.map +1 -1
- package/dist/creatio/services/dataservice/data-service-transport.js +3 -3
- package/dist/creatio/services/dataservice/data-service-transport.js.map +1 -1
- package/dist/creatio/services/dataservice/data-service-types.d.ts +0 -19
- package/dist/creatio/services/dataservice/data-service-types.d.ts.map +1 -1
- package/dist/creatio/services/dataservice/data-service-value-type.d.ts +2 -1
- package/dist/creatio/services/dataservice/data-service-value-type.d.ts.map +1 -1
- package/dist/creatio/services/dataservice/data-service-value-type.js +20 -16
- package/dist/creatio/services/dataservice/data-service-value-type.js.map +1 -1
- package/dist/creatio/services/http-client.d.ts +13 -0
- package/dist/creatio/services/http-client.d.ts.map +1 -1
- package/dist/creatio/services/http-client.js +26 -2
- package/dist/creatio/services/http-client.js.map +1 -1
- package/dist/creatio/services/identifiers.d.ts +10 -0
- package/dist/creatio/services/identifiers.d.ts.map +1 -0
- package/dist/creatio/services/identifiers.js +20 -0
- package/dist/creatio/services/identifiers.js.map +1 -0
- package/dist/creatio/services/odata/metadata-store.d.ts +6 -2
- package/dist/creatio/services/odata/metadata-store.d.ts.map +1 -1
- package/dist/creatio/services/odata/metadata-store.js +30 -34
- package/dist/creatio/services/odata/metadata-store.js.map +1 -1
- package/dist/creatio/services/odata/odata-crud-provider.d.ts.map +1 -1
- package/dist/creatio/services/odata/odata-crud-provider.js +10 -25
- package/dist/creatio/services/odata/odata-crud-provider.js.map +1 -1
- package/dist/creatio/services/odata/odata-query-translator.d.ts +4 -5
- package/dist/creatio/services/odata/odata-query-translator.d.ts.map +1 -1
- package/dist/creatio/services/odata/odata-query-translator.js +32 -20
- package/dist/creatio/services/odata/odata-query-translator.js.map +1 -1
- package/dist/creatio/services/user-info-provider.d.ts.map +1 -1
- package/dist/creatio/services/user-info-provider.js +2 -2
- package/dist/creatio/services/user-info-provider.js.map +1 -1
- package/dist/index.js +30 -4
- package/dist/index.js.map +1 -1
- package/dist/log.d.ts +1 -1
- package/dist/log.d.ts.map +1 -1
- package/dist/log.js +2 -1
- package/dist/log.js.map +1 -1
- package/dist/server/bearer/base-url-guard.d.ts +20 -0
- package/dist/server/bearer/base-url-guard.d.ts.map +1 -0
- package/dist/server/bearer/base-url-guard.js +55 -0
- package/dist/server/bearer/base-url-guard.js.map +1 -0
- package/dist/server/bearer/bearer-edge.d.ts +42 -0
- package/dist/server/bearer/bearer-edge.d.ts.map +1 -0
- package/dist/server/bearer/bearer-edge.js +122 -0
- package/dist/server/bearer/bearer-edge.js.map +1 -0
- package/dist/server/bearer/bearer-token.d.ts +27 -0
- package/dist/server/bearer/bearer-token.d.ts.map +1 -0
- package/dist/server/bearer/bearer-token.js +50 -0
- package/dist/server/bearer/bearer-token.js.map +1 -0
- package/dist/server/bearer/index.d.ts +3 -0
- package/dist/server/bearer/index.d.ts.map +1 -0
- package/dist/server/bearer/index.js +19 -0
- package/dist/server/bearer/index.js.map +1 -0
- package/dist/server/http/auth-edge.d.ts +26 -0
- package/dist/server/http/auth-edge.d.ts.map +1 -0
- package/dist/server/http/auth-edge.js +75 -0
- package/dist/server/http/auth-edge.js.map +1 -0
- package/dist/server/http/broker-handlers.d.ts +45 -0
- package/dist/server/http/broker-handlers.d.ts.map +1 -0
- package/dist/server/http/broker-handlers.js +224 -0
- package/dist/server/http/broker-handlers.js.map +1 -0
- package/dist/server/http/{httpServer.d.ts → http-server.d.ts} +5 -13
- package/dist/server/http/http-server.d.ts.map +1 -0
- package/dist/server/http/{httpServer.js → http-server.js} +19 -53
- package/dist/server/http/http-server.js.map +1 -0
- package/dist/server/http/index.d.ts +1 -3
- package/dist/server/http/index.d.ts.map +1 -1
- package/dist/server/http/index.js +1 -3
- package/dist/server/http/index.js.map +1 -1
- package/dist/server/http/mcp-handlers.d.ts.map +1 -1
- package/dist/server/http/mcp-handlers.js +16 -3
- package/dist/server/http/mcp-handlers.js.map +1 -1
- package/dist/server/http/middleware.d.ts +3 -4
- package/dist/server/http/middleware.d.ts.map +1 -1
- package/dist/server/http/middleware.js +33 -23
- package/dist/server/http/middleware.js.map +1 -1
- package/dist/server/http/public-origin.d.ts +10 -0
- package/dist/server/http/public-origin.d.ts.map +1 -0
- package/dist/server/http/public-origin.js +19 -0
- package/dist/server/http/public-origin.js.map +1 -0
- package/dist/server/http/rate-limiter.d.ts +1 -1
- package/dist/server/http/rate-limiter.d.ts.map +1 -1
- package/dist/server/http/rate-limiter.js +11 -11
- package/dist/server/http/rate-limiter.js.map +1 -1
- package/dist/server/http-agent.d.ts +9 -0
- package/dist/server/http-agent.d.ts.map +1 -0
- package/dist/server/http-agent.js +35 -0
- package/dist/server/http-agent.js.map +1 -0
- package/dist/server/index.d.ts +2 -0
- package/dist/server/index.d.ts.map +1 -1
- package/dist/server/index.js +2 -0
- package/dist/server/index.js.map +1 -1
- package/dist/server/keepalive.d.ts +26 -0
- package/dist/server/keepalive.d.ts.map +1 -0
- package/dist/server/keepalive.js +64 -0
- package/dist/server/keepalive.js.map +1 -0
- package/dist/server/mcp/creatio-rest.d.ts +6 -0
- package/dist/server/mcp/creatio-rest.d.ts.map +1 -1
- package/dist/server/mcp/creatio-rest.js +21 -3
- package/dist/server/mcp/creatio-rest.js.map +1 -1
- package/dist/server/mcp/crtmcp/crt-mcp-client.d.ts +1 -1
- package/dist/server/mcp/crtmcp/crt-mcp-client.d.ts.map +1 -1
- package/dist/server/mcp/crtmcp/crt-mcp-client.js +16 -13
- package/dist/server/mcp/crtmcp/crt-mcp-client.js.map +1 -1
- package/dist/server/mcp/crtmcp/crt-mcp-tool-preparer.d.ts +2 -2
- package/dist/server/mcp/crtmcp/crt-mcp-tool-preparer.d.ts.map +1 -1
- package/dist/server/mcp/crtmcp/crt-mcp-tool-preparer.js +17 -17
- package/dist/server/mcp/crtmcp/crt-mcp-tool-preparer.js.map +1 -1
- package/dist/server/mcp/dataforge/dataforge-client.d.ts +12 -12
- package/dist/server/mcp/dataforge/dataforge-client.d.ts.map +1 -1
- package/dist/server/mcp/dataforge/dataforge-client.js +40 -47
- package/dist/server/mcp/dataforge/dataforge-client.js.map +1 -1
- package/dist/server/mcp/dataforge/dataforge-tool-preparer.d.ts +2 -2
- package/dist/server/mcp/dataforge/dataforge-tool-preparer.d.ts.map +1 -1
- package/dist/server/mcp/dataforge/dataforge-tool-preparer.js +9 -9
- package/dist/server/mcp/dataforge/dataforge-tool-preparer.js.map +1 -1
- package/dist/server/mcp/filters.d.ts.map +1 -1
- package/dist/server/mcp/filters.js +4 -1
- package/dist/server/mcp/filters.js.map +1 -1
- package/dist/server/mcp/globalsearch/globalsearch-client.d.ts +4 -4
- package/dist/server/mcp/globalsearch/globalsearch-client.d.ts.map +1 -1
- package/dist/server/mcp/globalsearch/globalsearch-client.js +39 -50
- package/dist/server/mcp/globalsearch/globalsearch-client.js.map +1 -1
- package/dist/server/mcp/globalsearch/globalsearch-tool-preparer.d.ts +1 -1
- package/dist/server/mcp/globalsearch/globalsearch-tool-preparer.d.ts.map +1 -1
- package/dist/server/mcp/globalsearch/globalsearch-tool-preparer.js +1 -1
- package/dist/server/mcp/globalsearch/globalsearch-tool-preparer.js.map +1 -1
- package/dist/server/mcp/server.d.ts +35 -8
- package/dist/server/mcp/server.d.ts.map +1 -1
- package/dist/server/mcp/server.js +104 -44
- package/dist/server/mcp/server.js.map +1 -1
- package/dist/server/mcp/tools-data.d.ts +2 -2
- package/dist/server/mcp/tools-data.d.ts.map +1 -1
- package/dist/server/mcp/tools-data.js +1 -1
- package/dist/server/mcp/tools-data.js.map +1 -1
- package/dist/server/oauth/oauth-server.d.ts +41 -10
- package/dist/server/oauth/oauth-server.d.ts.map +1 -1
- package/dist/server/oauth/oauth-server.js +82 -48
- package/dist/server/oauth/oauth-server.js.map +1 -1
- package/dist/server/oauth/storage.d.ts +42 -5
- package/dist/server/oauth/storage.d.ts.map +1 -1
- package/dist/server/oauth/storage.js +81 -18
- package/dist/server/oauth/storage.js.map +1 -1
- package/dist/server/oauth/token-manager.d.ts +21 -4
- package/dist/server/oauth/token-manager.d.ts.map +1 -1
- package/dist/server/oauth/token-manager.js +18 -19
- package/dist/server/oauth/token-manager.js.map +1 -1
- package/dist/server/oauth/types.d.ts +0 -12
- package/dist/server/oauth/types.d.ts.map +1 -1
- package/dist/server/oauth/validators.d.ts.map +1 -1
- package/dist/server/oauth/validators.js +14 -5
- package/dist/server/oauth/validators.js.map +1 -1
- package/dist/sessions/index.d.ts +1 -1
- package/dist/sessions/index.d.ts.map +1 -1
- package/dist/sessions/index.js +1 -1
- package/dist/sessions/index.js.map +1 -1
- package/dist/sessions/redis-token-store.d.ts +22 -0
- package/dist/sessions/redis-token-store.d.ts.map +1 -0
- package/dist/sessions/redis-token-store.js +70 -0
- package/dist/sessions/redis-token-store.js.map +1 -0
- package/dist/sessions/session-context.d.ts +21 -40
- package/dist/sessions/session-context.d.ts.map +1 -1
- package/dist/sessions/session-context.js +25 -105
- package/dist/sessions/session-context.js.map +1 -1
- package/dist/sessions/token-crypto.d.ts +8 -0
- package/dist/sessions/token-crypto.d.ts.map +1 -0
- package/dist/sessions/token-crypto.js +43 -0
- package/dist/sessions/token-crypto.js.map +1 -0
- package/dist/sessions/token-store.d.ts +42 -0
- package/dist/sessions/token-store.d.ts.map +1 -0
- package/dist/sessions/token-store.js +66 -0
- package/dist/sessions/token-store.js.map +1 -0
- package/dist/utils/context.d.ts +12 -0
- package/dist/utils/context.d.ts.map +1 -1
- package/dist/utils/context.js +16 -0
- package/dist/utils/context.js.map +1 -1
- package/dist/utils/env-aliases.d.ts +9 -0
- package/dist/utils/env-aliases.d.ts.map +1 -0
- package/dist/utils/env-aliases.js +61 -0
- package/dist/utils/env-aliases.js.map +1 -0
- package/dist/utils/env.d.ts +5 -0
- package/dist/utils/env.d.ts.map +1 -1
- package/dist/utils/env.js +10 -1
- package/dist/utils/env.js.map +1 -1
- package/package.json +78 -76
- package/dist/creatio/auth/providers/oauth2-code-provider.d.ts +0 -21
- package/dist/creatio/auth/providers/oauth2-code-provider.d.ts.map +0 -1
- package/dist/creatio/auth/providers/oauth2-code-provider.js +0 -251
- package/dist/creatio/auth/providers/oauth2-code-provider.js.map +0 -1
- package/dist/server/http/creatio-oauth-handlers.d.ts +0 -13
- package/dist/server/http/creatio-oauth-handlers.d.ts.map +0 -1
- package/dist/server/http/creatio-oauth-handlers.js +0 -160
- package/dist/server/http/creatio-oauth-handlers.js.map +0 -1
- package/dist/server/http/httpServer.d.ts.map +0 -1
- package/dist/server/http/httpServer.js.map +0 -1
- package/dist/server/http/mcp-oauth-handlers.d.ts +0 -11
- package/dist/server/http/mcp-oauth-handlers.d.ts.map +0 -1
- package/dist/server/http/mcp-oauth-handlers.js +0 -118
- package/dist/server/http/mcp-oauth-handlers.js.map +0 -1
- package/dist/sessions/token-refresh-scheduler.d.ts +0 -16
- package/dist/sessions/token-refresh-scheduler.d.ts.map +0 -1
- package/dist/sessions/token-refresh-scheduler.js +0 -66
- package/dist/sessions/token-refresh-scheduler.js.map +0 -1
package/README.md
CHANGED
|
@@ -4,62 +4,63 @@
|
|
|
4
4
|
[](https://hub.docker.com/r/crackish/mcp-creatio)
|
|
5
5
|
[](LICENSE)
|
|
6
6
|
|
|
7
|
-
Model Context Protocol (MCP) server for Creatio
|
|
7
|
+
Model Context Protocol (MCP) server for [Creatio](https://www.creatio.com/) — connect Claude
|
|
8
|
+
Desktop, ChatGPT, GitHub Copilot, and other AI tools to your Creatio data, schema, and processes.
|
|
8
9
|
|
|
9
|
-
Also discoverable as:
|
|
10
|
+
> Also discoverable as: _Creatio MCP server_ · _MCP server for Creatio CRM_ · _Model Context
|
|
11
|
+
> Protocol for Creatio_.
|
|
10
12
|
|
|
11
|
-
|
|
12
|
-
- MCP server for Creatio CRM
|
|
13
|
-
- Model Context Protocol for Creatio
|
|
13
|
+
---
|
|
14
14
|
|
|
15
|
-
##
|
|
15
|
+
## Contents
|
|
16
16
|
|
|
17
|
-
-
|
|
18
|
-
-
|
|
19
|
-
-
|
|
20
|
-
-
|
|
17
|
+
- [What it does](#what-it-does)
|
|
18
|
+
- [Quick start](#quick-start)
|
|
19
|
+
- [Authentication](#authentication)
|
|
20
|
+
- [Configuration](#configuration)
|
|
21
|
+
- [CRUD backend](#crud-backend)
|
|
22
|
+
- [Tools](#tools)
|
|
23
|
+
- [Docker](#docker)
|
|
21
24
|
|
|
22
|
-
|
|
25
|
+
---
|
|
23
26
|
|
|
24
|
-
|
|
25
|
-
- **Schema discovery**: list entity sets and inspect entity schemas
|
|
26
|
-
- **Business processes**: run Creatio workflows with parameters
|
|
27
|
-
- **System settings**: read, write, and manage system setting metadata
|
|
28
|
-
- **Feature toggles**: manage `Feature` / `AdminUnitFeatureState` and refresh the feature cache. ⚠️ Only DB-backed features are reachable — features defined exclusively in `web.config` or other non-DB providers are invisible to MCP.
|
|
29
|
-
- **System operations**: manage `SysAdminOperation` and per-user/role grants (Creatio blocks these tables for OData modifications, so dedicated tools are provided)
|
|
30
|
-
- **Custom services**: invoke any configuration-package REST service (`/0/rest/<service>/<method>`) when no dedicated tool fits
|
|
31
|
-
- **AI assistant compatibility**: Claude Desktop, ChatGPT Connectors, GitHub Copilot
|
|
32
|
-
- **Three authentication modes**: Legacy login/password, OAuth2 client credentials, OAuth2 authorization code
|
|
33
|
-
- **Built-in OAuth server**: Automatic MCP client authentication
|
|
34
|
-
- **Docker ready**: Multi-arch images available
|
|
27
|
+
## What it does
|
|
35
28
|
|
|
36
|
-
|
|
29
|
+
- **CRUD + schema** — read, create, update, delete records; list entity sets; inspect schemas.
|
|
30
|
+
- **Business processes** — run Creatio workflows with parameters.
|
|
31
|
+
- **System settings** — read, write, and manage system-setting metadata.
|
|
32
|
+
- **Feature toggles** — manage `Feature` / `AdminUnitFeatureState` and refresh the feature cache.
|
|
33
|
+
⚠️ Only DB-backed features are reachable (those defined solely in `web.config` are invisible).
|
|
34
|
+
- **System operations** — manage `SysAdminOperation` and per-user/role grants (OData blocks these
|
|
35
|
+
tables, so dedicated tools are provided).
|
|
36
|
+
- **Custom services** — invoke any configuration-package REST service (`/0/rest/<service>/<method>`)
|
|
37
|
+
when no dedicated tool fits.
|
|
38
|
+
- **Selectable data backend** — Creatio DataService (default) or OData v4 (`CREATIO_MCP_CRUD_BACKEND`).
|
|
39
|
+
- **Optional semantic layers** — DataForge and Global Search tools auto-register when the instance
|
|
40
|
+
supports them.
|
|
37
41
|
|
|
38
|
-
|
|
42
|
+
Works with Claude Desktop, ChatGPT Connectors, GitHub Copilot, and any MCP-compatible client.
|
|
39
43
|
|
|
40
|
-
|
|
44
|
+
---
|
|
41
45
|
|
|
42
|
-
|
|
46
|
+
## Quick start
|
|
43
47
|
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
- Supports Legacy auth and OAuth2 Client Credentials
|
|
47
|
-
- OAuth2 Authorization Code is **not** supported in `stdio` mode
|
|
48
|
+
The server runs in one of two transports. **Pick by how your client connects**, then pick an
|
|
49
|
+
[authentication](#authentication) method.
|
|
48
50
|
|
|
49
|
-
|
|
51
|
+
### stdio (single-user, local)
|
|
52
|
+
|
|
53
|
+
For clients that launch a command directly (VS Code MCP, Claude Desktop). Single Creatio identity
|
|
54
|
+
per process; authenticate with **client credentials** or **legacy** login.
|
|
50
55
|
|
|
51
56
|
```bash
|
|
52
57
|
npx -y mcp-creatio@latest \
|
|
53
58
|
--base-url https://your-creatio.com \
|
|
54
|
-
--login your_login
|
|
55
|
-
--password your_password
|
|
59
|
+
--login your_login --password your_password
|
|
56
60
|
```
|
|
57
61
|
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
VS Code MCP config (command-based):
|
|
61
|
-
|
|
62
|
-
```json
|
|
62
|
+
```jsonc
|
|
63
|
+
// VS Code / Claude Desktop (command-based)
|
|
63
64
|
{
|
|
64
65
|
"creatio": {
|
|
65
66
|
"command": "npx",
|
|
@@ -71,162 +72,197 @@ VS Code MCP config (command-based):
|
|
|
71
72
|
"--login",
|
|
72
73
|
"your_login",
|
|
73
74
|
"--password",
|
|
74
|
-
"your_password"
|
|
75
|
-
]
|
|
76
|
-
}
|
|
75
|
+
"your_password",
|
|
76
|
+
],
|
|
77
|
+
},
|
|
77
78
|
}
|
|
78
79
|
```
|
|
79
80
|
|
|
80
|
-
|
|
81
|
+
> stdio logs are silent by default — enable with `--log-level info` or `CREATIO_MCP_LOG_LEVEL`.
|
|
82
|
+
|
|
83
|
+
### HTTP (multi-user, hosted)
|
|
84
|
+
|
|
85
|
+
For clients that connect by URL, and for multi-user / hosted deployments. This transport serves the
|
|
86
|
+
`broker`, `delegated`, and `gateway` auth modes (see [Authentication](#authentication)).
|
|
81
87
|
|
|
82
88
|
```bash
|
|
83
|
-
npm
|
|
89
|
+
npm start # serves http://localhost:3000/mcp
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
```jsonc
|
|
93
|
+
{ "creatio": { "type": "http", "url": "http://localhost:3000/mcp" } }
|
|
84
94
|
```
|
|
85
95
|
|
|
86
|
-
|
|
96
|
+
---
|
|
97
|
+
|
|
98
|
+
## Authentication
|
|
87
99
|
|
|
88
|
-
|
|
100
|
+
One unified selector — `CREATIO_MCP_AUTH_MODE` — picks how a request proves its Creatio identity.
|
|
101
|
+
When unset it is inferred from the credentials you provide. The HTTP modes are multi-user; stdio is
|
|
102
|
+
single-user.
|
|
89
103
|
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
104
|
+
| Mode | Transport | How identity is established | When to use |
|
|
105
|
+
| ------------------------ | ------------ | ----------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- |
|
|
106
|
+
| **`broker`** | HTTP | The MCP is its own OAuth server: it walks the user through Creatio login and holds their tokens | **Standalone direct clients** (Claude Desktop / ChatGPT) — connect → authorize → work as you |
|
|
107
|
+
| **`delegated`** | HTTP | The client brings a Creatio token; the MCP validates expiry and passes it through | Clients that obtain a Creatio token themselves / behind an external AS |
|
|
108
|
+
| **`gateway`** | HTTP | A trusted Control-Plane injects the token per request | Behind the Creatio.ai Control-Plane (multi-tenant) |
|
|
109
|
+
| **`client_credentials`** | stdio / HTTP | One service account (`client_id` / `secret`) | M2M / single service identity |
|
|
110
|
+
| **`legacy`** | stdio / HTTP | One user (login / password) | Local / legacy instances |
|
|
93
111
|
|
|
94
|
-
|
|
112
|
+
> The MCP issues Creatio tokens of its own only in `broker` mode (where it must, to drive the
|
|
113
|
+
> login). `delegated`/`gateway` pass tokens through; `client_credentials`/`legacy` use a single
|
|
114
|
+
> server-side identity.
|
|
115
|
+
|
|
116
|
+
> **Trust model.** `delegated` and `gateway` are **fully-trusted-environment** modes: the MCP does
|
|
117
|
+
> NOT cryptographically verify the incoming Bearer — Creatio remains the authority and rejects bad
|
|
118
|
+
> tokens on the API call — so the request's `userKey` is an unverified, logging-only identity. Run
|
|
119
|
+
> them only where the caller is trusted (`gateway`: behind the Creatio.ai Control-Plane;
|
|
120
|
+
> `delegated`: a trusted client on a trusted network / your own proxy). For an **untrusted direct
|
|
121
|
+
> external client** that needs the MCP itself to verify identity, use `broker` — there the MCP
|
|
122
|
+
> issues and verifies its own audience-bound (`aud`/`iss`) tokens.
|
|
123
|
+
|
|
124
|
+
### `broker` — the "connect & authorize" UX for direct clients
|
|
125
|
+
|
|
126
|
+
The MCP acts as an OAuth 2.1 authorization server for its clients (dynamic registration, authorize,
|
|
127
|
+
token) and brokers the actual login to Creatio via authorization_code with PKCE. The client only
|
|
128
|
+
ever talks to the MCP, so this works even though Creatio offers no dynamic client registration — and
|
|
129
|
+
the client never needs to reach Creatio's TLS endpoint directly.
|
|
130
|
+
|
|
131
|
+
The tokens the MCP issues to clients are **audience-bound** (`aud` = this deployment's `/mcp`
|
|
132
|
+
resource, `iss` = its origin), so a token minted by one deployment is rejected by another even when
|
|
133
|
+
they share a secret. The MCP also supports the **`refresh_token` grant** (rotating), so a client
|
|
134
|
+
gets a fresh access token without re-running the browser flow every hour — for as long as the MCP
|
|
135
|
+
still holds that user's Creatio tokens.
|
|
95
136
|
|
|
96
137
|
```bash
|
|
97
|
-
|
|
138
|
+
CREATIO_MCP_AUTH_MODE=broker
|
|
139
|
+
CREATIO_CLIENT_ID=your_creatio_oauth_app_client_id # the Creatio "On behalf of a user" app
|
|
140
|
+
CREATIO_MCP_JWT_SECRET=a-long-random-secret-min-32 # signs the tokens the MCP issues to clients
|
|
141
|
+
# CREATIO_CLIENT_SECRET=... # only for a confidential Creatio app (omit for public/PKCE)
|
|
98
142
|
```
|
|
99
143
|
|
|
100
|
-
|
|
144
|
+
> **`CREATIO_MCP_JWT_SECRET`** must be **at least 32 characters** (HS256 security rests entirely on
|
|
145
|
+
> its entropy — a shorter value is rejected at startup). In **production** (`NODE_ENV=production`) it
|
|
146
|
+
> is **required** (the server fails closed if unset). Outside production an unset secret yields a
|
|
147
|
+
> random one so a local run needs no setup — but the tokens the MCP issues are then invalidated on
|
|
148
|
+
> every restart and are not valid across multiple instances, so **set a stable secret for production
|
|
149
|
+
> or any horizontally-scaled deployment.**
|
|
101
150
|
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
"url": "http://localhost:3000/mcp"
|
|
107
|
-
}
|
|
108
|
-
}
|
|
109
|
-
```
|
|
151
|
+
**Persistence / horizontal scaling (broker holds users' Creatio tokens).** By default those tokens
|
|
152
|
+
live in-process — fine for a single instance, but lost on restart and not shared across replicas.
|
|
153
|
+
For production set a **Redis** token store: tokens are encrypted at rest (AES-256-GCM) and survive
|
|
154
|
+
restarts, so the broker becomes stateless and horizontally scalable.
|
|
110
155
|
|
|
111
|
-
|
|
156
|
+
```bash
|
|
157
|
+
CREATIO_MCP_TOKEN_STORE=redis
|
|
158
|
+
CREATIO_MCP_REDIS_URL=redis://your-redis:6379
|
|
159
|
+
# CREATIO_MCP_TOKEN_ENC_KEY=... # optional; encryption key, else derived from CREATIO_MCP_JWT_SECRET
|
|
160
|
+
```
|
|
112
161
|
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
| `CREATIO_PASSWORD` | Password for legacy auth |
|
|
118
|
-
| `CREATIO_CLIENT_ID` | OAuth2 client credentials ID |
|
|
119
|
-
| `CREATIO_CLIENT_SECRET` | OAuth2 client credentials secret |
|
|
120
|
-
| `CREATIO_ID_BASE_URL` | Identity Service URL (if separate from main Creatio instance) |
|
|
121
|
-
| `CREATIO_CODE_CLIENT_ID` | OAuth2 authorization code client ID |
|
|
122
|
-
| `CREATIO_CODE_CLIENT_SECRET` | OAuth2 authorization code client secret |
|
|
123
|
-
| `CREATIO_CODE_REDIRECT_URI` | OAuth2 redirect URI (e.g. `http://localhost:3000/oauth/callback`) |
|
|
124
|
-
| `CREATIO_CODE_SCOPE` | OAuth2 scope (e.g. `offline_access ApplicationAccess_yourappguid`) |
|
|
125
|
-
| `CREATIO_CRUD_BACKEND` | CRUD data API: `dataservice` (default) or `odata` |
|
|
126
|
-
| `READONLY_MODE` | Set `true` to disable create/update/delete operations |
|
|
127
|
-
| `DISABLE_DATAFORGE` | Set `true` to never probe/register DataForge tools (even if available) |
|
|
128
|
-
| `DISABLE_GLOBAL_SEARCH` | Set `true` to never probe/register the Global Search tool |
|
|
129
|
-
| `MCP_TRANSPORT` | Docker only: `http` (default) or `stdio` — selects the run mode |
|
|
130
|
-
| `PORT` | HTTP mode listen port (default `3000`) |
|
|
131
|
-
| `MCP_CREATIO_LOG_LEVEL` | Log verbosity: `silent` (default), `error`, `warn`, `info` |
|
|
132
|
-
|
|
133
|
-
> **Disabling optional capabilities.** DataForge and Global Search are auto-detected at
|
|
134
|
-
> startup and their tools registered only when the environment supports them. Set
|
|
135
|
-
> `DISABLE_DATAFORGE=true` / `DISABLE_GLOBAL_SEARCH=true` to skip the probe **and** the tools
|
|
136
|
-
> entirely — useful when a capability exists on the instance but you don't want to expose it
|
|
137
|
-
> (e.g. to keep the tool surface small / avoid spending tokens on it).
|
|
138
|
-
|
|
139
|
-
### CRUD backend
|
|
162
|
+
**Logout / revocation.** The broker exposes an **RFC 7009** `POST /revoke` endpoint (advertised as
|
|
163
|
+
`revocation_endpoint` in the AS metadata): presenting an issued token revokes the user's Creatio
|
|
164
|
+
token upstream (`/connect/revocation`, best-effort) and purges the server-side Creatio tokens and
|
|
165
|
+
issued refresh tokens. It always answers `200` (no token-validity oracle).
|
|
140
166
|
|
|
141
|
-
|
|
142
|
-
|
|
167
|
+
Register the Creatio app in System Designer → _OAuth 2.0 applications_ → _On behalf of a user_, and
|
|
168
|
+
add the MCP callback (`http://localhost:3000/oauth/callback` for a local run) to its redirect URIs.
|
|
143
169
|
|
|
144
|
-
|
|
145
|
-
- **`odata`** — Creatio OData v4. Also enables the OData-only `read` extras (`filter` raw
|
|
146
|
-
`$filter` string, `expand`).
|
|
170
|
+
### `delegated` (default when nothing else is set)
|
|
147
171
|
|
|
148
|
-
|
|
149
|
-
|
|
172
|
+
Pure resource server: each `/mcp` request must carry a Creatio access token; the MCP advertises the
|
|
173
|
+
authorization server (Creatio Identity) via **RFC 9728** and challenges unauthenticated requests, so
|
|
174
|
+
the client logs in directly against Creatio. Needs no server-side credentials. The token is passed
|
|
175
|
+
through unverified (Creatio is the authority) — a **trusted-environment** mode (see the trust note
|
|
176
|
+
above).
|
|
150
177
|
|
|
151
|
-
|
|
178
|
+
### `gateway`
|
|
152
179
|
|
|
153
|
-
|
|
180
|
+
A trusted fronting service (Creatio.ai Control-Plane) injects the Bearer; the MCP trusts and uses
|
|
181
|
+
it. The optional `X-Creatio-Base-Url` header routes a request to a specific Creatio instance
|
|
182
|
+
(multi-tenant) — honored only in this mode. Because that override decides where the request's Bearer
|
|
183
|
+
is sent, it is validated: set **`CREATIO_MCP_ALLOWED_BASE_URLS`** (comma-separated origins) to
|
|
184
|
+
restrict it to your tenants. When unset, any `http(s)` host is accepted (trusting the gateway) except
|
|
185
|
+
the cloud-metadata link-local address, which is always blocked (SSRF guard).
|
|
154
186
|
|
|
155
|
-
###
|
|
187
|
+
### `client_credentials` / `legacy`
|
|
156
188
|
|
|
157
189
|
```bash
|
|
158
|
-
|
|
190
|
+
CREATIO_CLIENT_ID=your_client_id # client_credentials
|
|
191
|
+
CREATIO_CLIENT_SECRET=your_client_secret
|
|
192
|
+
|
|
193
|
+
CREATIO_LOGIN=YourLogin # legacy
|
|
159
194
|
CREATIO_PASSWORD=YourPassword
|
|
160
195
|
```
|
|
161
196
|
|
|
162
|
-
|
|
197
|
+
> **Precedence:** an explicit `CREATIO_MCP_AUTH_MODE` always wins. When unset, the mode is inferred:
|
|
198
|
+
> legacy (login+password) → client_credentials (id+secret) → delegated. `broker`, `delegated` and
|
|
199
|
+
> `gateway` require HTTP transport (stdio has no incoming web request to authenticate).
|
|
163
200
|
|
|
164
|
-
|
|
201
|
+
---
|
|
165
202
|
|
|
166
|
-
|
|
167
|
-
CREATIO_CLIENT_ID=your_client_id
|
|
168
|
-
CREATIO_CLIENT_SECRET=your_client_secret
|
|
169
|
-
```
|
|
203
|
+
## Configuration
|
|
170
204
|
|
|
171
|
-
|
|
205
|
+
Grouped from essential to optional. **`CREATIO_BASE_URL` is the only always-required value** —
|
|
206
|
+
nothing works without it; the rest depend on the auth method and the features you enable.
|
|
172
207
|
|
|
173
|
-
|
|
208
|
+
### Connection (required)
|
|
174
209
|
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
CREATIO_CODE_REDIRECT_URI=http://localhost:3000/oauth/callback
|
|
179
|
-
CREATIO_CODE_SCOPE="offline_access ApplicationAccess_yourappguid"
|
|
180
|
-
```
|
|
181
|
-
|
|
182
|
-
**Note**: Currently uses in-memory storage for OAuth tokens. Tokens will be lost on server restart.
|
|
210
|
+
| Variable | Description |
|
|
211
|
+
| ------------------ | -------------------------------------------------------------------- |
|
|
212
|
+
| `CREATIO_BASE_URL` | **Required.** Creatio instance URL (e.g. `https://your-creatio.com`) |
|
|
183
213
|
|
|
184
|
-
|
|
214
|
+
### Authentication (pick one method — see [Authentication](#authentication))
|
|
185
215
|
|
|
186
|
-
|
|
216
|
+
| Variable | Mode | Description |
|
|
217
|
+
| ------------------------------------ | ------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
218
|
+
| `CREATIO_MCP_AUTH_MODE` | any | `broker` \| `delegated` \| `gateway` \| `client_credentials` \| `legacy`. Unset ⇒ inferred (legacy → client_credentials → delegated) |
|
|
219
|
+
| `CREATIO_CLIENT_ID` | broker / M2M | Creatio OAuth app client id (the brokered app, or the M2M account) |
|
|
220
|
+
| `CREATIO_CLIENT_SECRET` | broker? / M2M | Required for client_credentials; optional for a confidential broker app (omit for public/PKCE) |
|
|
221
|
+
| `CREATIO_MCP_JWT_SECRET` | broker | Secret signing the tokens the MCP issues to clients. **Min 32 chars; required in production.** Random if unset outside prod (set a stable value for prod / multi-instance) |
|
|
222
|
+
| `CREATIO_MCP_ALLOWED_BASE_URLS` | gateway | _Optional_ — comma-separated allowlist of Creatio origins the `X-Creatio-Base-Url` override may target (SSRF guard). Unset ⇒ any http(s) host except cloud-metadata |
|
|
223
|
+
| `CREATIO_LOGIN` / `CREATIO_PASSWORD` | legacy | Username / password |
|
|
224
|
+
| `CREATIO_ID_BASE_URL` | any | _Optional_ — Identity Service URL; defaults to deriving from `CREATIO_BASE_URL` |
|
|
187
225
|
|
|
188
|
-
|
|
226
|
+
### Data & behavior (optional)
|
|
189
227
|
|
|
190
|
-
|
|
228
|
+
| Variable | Description |
|
|
229
|
+
| ----------------------------------- | ------------------------------------------------- |
|
|
230
|
+
| `CREATIO_MCP_CRUD_BACKEND` | CRUD data API: `dataservice` (default) or `odata` |
|
|
231
|
+
| `CREATIO_MCP_READONLY` | `true` disables create/update/delete operations |
|
|
232
|
+
| `CREATIO_MCP_DISABLE_DATAFORGE` | `true` skips the DataForge probe **and** tools |
|
|
233
|
+
| `CREATIO_MCP_DISABLE_GLOBAL_SEARCH` | `true` skips the Global Search probe **and** tool |
|
|
191
234
|
|
|
192
|
-
|
|
235
|
+
### Transport & runtime (optional)
|
|
193
236
|
|
|
194
|
-
|
|
237
|
+
| Variable | Description |
|
|
238
|
+
| ------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
239
|
+
| `CREATIO_MCP_TRANSPORT` | Docker only: `http` (default) or `stdio` |
|
|
240
|
+
| `CREATIO_MCP_PORT` | HTTP listen port (default `3000`; `PORT` also accepted) |
|
|
241
|
+
| `CREATIO_MCP_LOG_LEVEL` | Log verbosity: `silent` (default), `error`, `warn`, `info` |
|
|
242
|
+
| `CREATIO_MCP_KEEPALIVE_SECONDS` | _Optional_ — proactive session keep-alive interval (seconds) for `legacy` / `client_credentials`, to avoid first-call re-login latency after an idle period. **Defaults to `300` (5 min)**; set `0` to disable. Keep it below the Creatio idle-session timeout |
|
|
243
|
+
| `CREATIO_MCP_PUBLIC_URL` | _Optional_ — the deployment's public origin (e.g. `https://mcp.example.com`). Set it when behind a TLS-terminating proxy/ingress so the broker's issuer/audience, redirect URIs, and discovery metadata use the external URL (not the internal `http://host:port`). Defaults to the request origin |
|
|
195
244
|
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
npm start
|
|
201
|
-
```
|
|
245
|
+
> **Disabling optional capabilities.** DataForge and Global Search are auto-detected at startup and
|
|
246
|
+
> registered only when supported. Set `CREATIO_MCP_DISABLE_DATAFORGE=true` /
|
|
247
|
+
> `CREATIO_MCP_DISABLE_GLOBAL_SEARCH=true` to skip the probe and the tools — useful to keep the tool
|
|
248
|
+
> surface small even when the capability exists.
|
|
202
249
|
|
|
203
|
-
|
|
250
|
+
---
|
|
204
251
|
|
|
205
|
-
|
|
252
|
+
## CRUD backend
|
|
206
253
|
|
|
207
|
-
|
|
208
|
-
|
|
254
|
+
CRUD tools (`read`, `create`, `update`, `delete`, `list-entities`, `describe-entity`) run on a
|
|
255
|
+
selectable data API, chosen once per deployment via `CREATIO_MCP_CRUD_BACKEND`:
|
|
209
256
|
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
-e CREATIO_BASE_URL="https://your-creatio.com" \
|
|
213
|
-
-e CREATIO_LOGIN="YourLogin" \
|
|
214
|
-
-e CREATIO_PASSWORD="YourPassword" \
|
|
215
|
-
crackish/mcp-creatio
|
|
216
|
-
```
|
|
257
|
+
- **`dataservice`** (default) — Creatio's native DataService.
|
|
258
|
+
- **`odata`** — Creatio OData v4. Also enables the OData-only `read` extras (raw `$filter`, `expand`).
|
|
217
259
|
|
|
218
|
-
|
|
260
|
+
Either way you query through the same tool surface: prefer the structured `filters` parameter — it
|
|
261
|
+
works unchanged on both backends.
|
|
219
262
|
|
|
220
|
-
|
|
221
|
-
docker run -i --rm \
|
|
222
|
-
-e MCP_TRANSPORT=stdio \
|
|
223
|
-
-e CREATIO_BASE_URL="https://your-creatio.com" \
|
|
224
|
-
-e CREATIO_LOGIN="YourLogin" \
|
|
225
|
-
-e CREATIO_PASSWORD="YourPassword" \
|
|
226
|
-
crackish/mcp-creatio
|
|
227
|
-
```
|
|
263
|
+
---
|
|
228
264
|
|
|
229
|
-
##
|
|
265
|
+
## Tools
|
|
230
266
|
|
|
231
267
|
| Tool | Description |
|
|
232
268
|
| -------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
@@ -249,22 +285,22 @@ docker run -i --rm \
|
|
|
249
285
|
| `delete-admin-operation-grantee` | Remove specific grant rows by Id. Prefer `set-admin-operation-grantee` to flip allow ↔ deny |
|
|
250
286
|
| `call-configuration-service` | Escape hatch: invoke any configuration-package REST service method by name. Use only when no dedicated tool covers the operation |
|
|
251
287
|
|
|
252
|
-
> **Note**: Previously documented `search`/`fetch` helper tools (for a specific connector workflow) have been removed as they are no longer required.
|
|
253
|
-
|
|
254
288
|
### Querying data with `read`
|
|
255
289
|
|
|
256
290
|
Ask for exactly the data you need — the AI doesn't have to know OData:
|
|
257
291
|
|
|
258
|
-
- **Filter any way** — equals / not-equals, ranges
|
|
259
|
-
|
|
260
|
-
- **
|
|
261
|
-
- **
|
|
262
|
-
- **
|
|
263
|
-
- **Pull in related data** in a single request (e.g. an order together with its account and contact).
|
|
292
|
+
- **Filter any way** — equals / not-equals, ranges, text match (`contains`, `starts/ends with`),
|
|
293
|
+
`AND` / `OR` groups, and "in this list".
|
|
294
|
+
- **Filter by related records naturally** — by name (`Contact/Name = "Andrew Baker"`) or by id.
|
|
295
|
+
- **Sort**, **paginate** (page size + offset), and **count** matches in one call.
|
|
296
|
+
- **Pull in related data** in a single request (e.g. an order with its account and contact).
|
|
264
297
|
|
|
265
298
|
### DataForge tools (registered only when DataForge is enabled)
|
|
266
299
|
|
|
267
|
-
DataForge is Creatio's AI-oriented semantic layer over the data model. These tools are **probed once
|
|
300
|
+
DataForge is Creatio's AI-oriented semantic layer over the data model. These tools are **probed once**
|
|
301
|
+
and registered **only when the environment has DataForge configured** (a non-empty
|
|
302
|
+
`DataForgeServiceUrl` system setting). When DataForge is absent the tools are not exposed, and
|
|
303
|
+
`describe-entity` silently uses OData metadata.
|
|
268
304
|
|
|
269
305
|
| Tool | Description |
|
|
270
306
|
| ------------------------------- | ------------------------------------------------------------------------------------------------- |
|
|
@@ -274,18 +310,51 @@ DataForge is Creatio's AI-oriented semantic layer over the data model. These too
|
|
|
274
310
|
| `dataforge-lookup-values` | Fuzzy/semantic search for lookup values (resolve a phrase to the right lookup record Id) |
|
|
275
311
|
| `dataforge-status` | Report whether DataForge is online and whether the data model / lookups are synced |
|
|
276
312
|
|
|
277
|
-
**Discovery → confirm → act:** use `dataforge-similar-tables` to find the right entity, then
|
|
313
|
+
**Discovery → confirm → act:** use `dataforge-similar-tables` to find the right entity, then
|
|
314
|
+
`describe-entity` for the authoritative field list, then `read`/`create`.
|
|
278
315
|
|
|
279
|
-
**Enabling DataForge**
|
|
316
|
+
**Enabling DataForge** (Creatio side): the `DataForgeServiceUrl` system setting plus IdentityServer
|
|
317
|
+
settings (`IdentityServerUrl`, `IdentityServerClientId`/`Secret`), the `DataForge*` feature toggles,
|
|
318
|
+
and the `CanReadDataStructureColumnDetails` operation granted to the MCP user. Restart the app pool
|
|
319
|
+
(or run `DataStructureTransferFromCreatio` / `LookupsTransferFromCreatio`) to sync the model.
|
|
280
320
|
|
|
281
321
|
### Global Search tool (registered only when Global Search is enabled)
|
|
282
322
|
|
|
283
|
-
Global Search is Creatio's cross-entity, Elasticsearch-backed record search — the engine behind the
|
|
323
|
+
Global Search is Creatio's cross-entity, Elasticsearch-backed record search — the engine behind the
|
|
324
|
+
UI search box. Probed once, registered only when `GlobalSearchUrl` is configured.
|
|
325
|
+
|
|
326
|
+
| Tool | Description |
|
|
327
|
+
| --------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
328
|
+
| `global-search` | Full-text search across all indexed entities. Input: `query`, optional `entities[]`/`limit`/`from`. Returns matched records with `entityName`, `id`, `columnValues`, `total`/`nextFrom` |
|
|
329
|
+
|
|
330
|
+
Differs from `read`: `read` needs an exact entity + filter; `global-search` is fuzzy and
|
|
331
|
+
cross-entity — use it to locate a record when you don't know the entity.
|
|
284
332
|
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
333
|
+
**Enabling Global Search** requires the `GlobalSearchUrl` (+ `GlobalSearchConfigServiceUrl`,
|
|
334
|
+
`GlobalSearchIndexingApiUrl`) system settings and the `GlobalSearch` / `GlobalSearch_V2` feature
|
|
335
|
+
toggles, with the section index built (Elasticsearch reachable).
|
|
288
336
|
|
|
289
|
-
|
|
337
|
+
---
|
|
290
338
|
|
|
291
|
-
|
|
339
|
+
## Docker
|
|
340
|
+
|
|
341
|
+
The image supports both transports, selected by `CREATIO_MCP_TRANSPORT` (default `http`).
|
|
342
|
+
|
|
343
|
+
**HTTP** (remote / hosted / multi-client — defaults to delegated Bearer auth):
|
|
344
|
+
|
|
345
|
+
```bash
|
|
346
|
+
docker run --rm -p 3000:3000 \
|
|
347
|
+
-e CREATIO_BASE_URL="https://your-creatio.com" \
|
|
348
|
+
-e CREATIO_MCP_AUTH_MODE=delegated \
|
|
349
|
+
crackish/mcp-creatio
|
|
350
|
+
```
|
|
351
|
+
|
|
352
|
+
**stdio** (local client that spawns the process — note `-i`; use client-credentials or legacy auth):
|
|
353
|
+
|
|
354
|
+
```bash
|
|
355
|
+
docker run -i --rm \
|
|
356
|
+
-e CREATIO_MCP_TRANSPORT=stdio \
|
|
357
|
+
-e CREATIO_BASE_URL="https://your-creatio.com" \
|
|
358
|
+
-e CREATIO_LOGIN="YourLogin" -e CREATIO_PASSWORD="YourPassword" \
|
|
359
|
+
crackish/mcp-creatio
|
|
360
|
+
```
|
package/dist/cli.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AAUA,KAAK,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AAUA,KAAK,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAOzC,wBAAgB,SAAS,IAAI,IAAI,CAwBhC;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,UAAU,CAoCpD;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAIlE;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,UAAU,GAAG,IAAI,CASlD"}
|
package/dist/cli.js
CHANGED
|
@@ -83,13 +83,16 @@ function applyCliEnv(opts) {
|
|
|
83
83
|
setEnvIfDefined('CREATIO_CLIENT_ID', opts['client-id']);
|
|
84
84
|
setEnvIfDefined('CREATIO_CLIENT_SECRET', opts['client-secret']);
|
|
85
85
|
setEnvIfDefined('CREATIO_ID_BASE_URL', opts['id-base-url']);
|
|
86
|
-
setEnvIfDefined('
|
|
87
|
-
setEnvIfDefined('
|
|
86
|
+
setEnvIfDefined('CREATIO_MCP_READONLY', opts.readonly);
|
|
87
|
+
setEnvIfDefined('CREATIO_MCP_LOG_LEVEL', opts['log-level']);
|
|
88
88
|
}
|
|
89
89
|
async function startStdio(server) {
|
|
90
|
-
const mcp =
|
|
90
|
+
const mcp = server.createSessionServer();
|
|
91
91
|
const transport = new stdio_js_1.StdioServerTransport();
|
|
92
92
|
await mcp.connect(transport);
|
|
93
|
+
// stdio uses a single-user provider (legacy/client_credentials) that carries its own
|
|
94
|
+
// credentials, so the probe needs no request context here.
|
|
95
|
+
server.ensureCapabilitiesProbed();
|
|
93
96
|
log_1.default.info('stdio.server.start');
|
|
94
97
|
}
|
|
95
98
|
let shuttingDown = false;
|
|
@@ -100,7 +103,8 @@ async function shutdown(signal, state) {
|
|
|
100
103
|
shuttingDown = true;
|
|
101
104
|
log_1.default.appStop({ reason: signal || 'shutdown' });
|
|
102
105
|
try {
|
|
103
|
-
|
|
106
|
+
state.keepAlive?.stop();
|
|
107
|
+
await state.server?.stopAll();
|
|
104
108
|
}
|
|
105
109
|
catch (err) {
|
|
106
110
|
log_1.default.error('shutdown.error', { error: String(err) });
|
|
@@ -113,20 +117,28 @@ async function main() {
|
|
|
113
117
|
return;
|
|
114
118
|
}
|
|
115
119
|
log_1.default.useStderrOnlyLogs();
|
|
120
|
+
(0, server_1.installHttpAgent)();
|
|
116
121
|
applyCliEnv(opts);
|
|
117
122
|
const cfg = (0, config_builder_1.getCreatioClientConfig)();
|
|
118
|
-
|
|
119
|
-
|
|
123
|
+
// stdio is a single-process, single-user transport. The multi-user HTTP auth modes
|
|
124
|
+
// (delegated/gateway/broker) have no incoming web request to authenticate here.
|
|
125
|
+
if (cfg.auth.kind === creatio_1.AuthProviderType.OAuth2Bearer ||
|
|
126
|
+
cfg.auth.kind === creatio_1.AuthProviderType.Broker) {
|
|
127
|
+
throw new Error(`auth_mode_requires_http_server: CREATIO_MCP_AUTH_MODE=${cfg.auth.kind === creatio_1.AuthProviderType.Broker ? 'broker' : 'delegated/gateway'} needs the HTTP /mcp server — use "npm start". stdio supports client-credentials or legacy auth.`);
|
|
120
128
|
}
|
|
121
129
|
const provider = new creatio_1.CreatioServiceContext(cfg);
|
|
122
|
-
const readonlyMode = (0, utils_1.envBool)('
|
|
130
|
+
const readonlyMode = (0, utils_1.envBool)('CREATIO_MCP_READONLY', false);
|
|
123
131
|
const engines = new creatio_1.CreatioEngineManager(provider, { readonly: readonlyMode });
|
|
124
132
|
const server = new server_1.Server(engines, {
|
|
125
133
|
readonlyMode,
|
|
126
|
-
disableDataForge: (0, utils_1.envBool)('
|
|
127
|
-
disableGlobalSearch: (0, utils_1.envBool)('
|
|
134
|
+
disableDataForge: (0, utils_1.envBool)('CREATIO_MCP_DISABLE_DATAFORGE', false),
|
|
135
|
+
disableGlobalSearch: (0, utils_1.envBool)('CREATIO_MCP_DISABLE_GLOBAL_SEARCH', false),
|
|
128
136
|
});
|
|
129
|
-
|
|
137
|
+
// Proactive keep-alive applies only to the single-session modes (legacy / client_credentials),
|
|
138
|
+
// which is exactly what stdio runs; it is opt-in via CREATIO_MCP_KEEPALIVE_SECONDS.
|
|
139
|
+
const keepAlive = new server_1.SessionKeepAlive((0, server_1.keepAliveIntervalMs)(), () => engines.user.getCurrentUserInfo());
|
|
140
|
+
keepAlive.start();
|
|
141
|
+
const state = { server, keepAlive };
|
|
130
142
|
process.on('SIGINT', () => {
|
|
131
143
|
void shutdown('SIGINT', state).finally(() => process.exit(0));
|
|
132
144
|
});
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";;;;;;
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
package/dist/config-builder.d.ts
CHANGED
|
@@ -1,3 +1,11 @@
|
|
|
1
1
|
import { CreatioClientConfig } from './creatio';
|
|
2
|
+
import { TokenStoreConfig } from './sessions';
|
|
3
|
+
/**
|
|
4
|
+
* Broker token-store selection. `memory` (default) keeps tokens in-process (lost on restart, single
|
|
5
|
+
* instance); `redis` makes the broker stateless + restart-durable + multi-instance. The at-rest
|
|
6
|
+
* encryption key derives from `CREATIO_MCP_TOKEN_ENC_KEY` when set, else the (mandatory) broker
|
|
7
|
+
* `CREATIO_MCP_JWT_SECRET`.
|
|
8
|
+
*/
|
|
9
|
+
export declare function getTokenStoreConfig(): TokenStoreConfig;
|
|
2
10
|
export declare function getCreatioClientConfig(): CreatioClientConfig;
|
|
3
11
|
//# sourceMappingURL=config-builder.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config-builder.d.ts","sourceRoot":"","sources":["../src/config-builder.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"config-builder.d.ts","sourceRoot":"","sources":["../src/config-builder.ts"],"names":[],"mappings":"AAEA,OAAO,EAMN,mBAAmB,EAInB,MAAM,WAAW,CAAC;AAEnB,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAyK9C;;;;;GAKG;AACH,wBAAgB,mBAAmB,IAAI,gBAAgB,CAUtD;AAED,wBAAgB,sBAAsB,IAAI,mBAAmB,CAM5D"}
|