mcp-creatio

mcp
Security Audit
Fail
Health Warn
  • License — License: MIT
  • Description — Repository has a description
  • Active repo — Last push 0 days ago
  • Low visibility — Only 6 GitHub stars
Code Fail
  • rimraf — Recursive directory removal in package.json
  • process.env — Environment variable access in src/cli.ts
Permissions Pass
  • Permissions — No dangerous permissions requested

No AI report is available for this listing yet.

SUMMARY

MCP server for Creatio CRM. Connect ChatGPT, Claude, and GitHub Copilot to Creatio via Model Context Protocol (MCP) and OData v4.

README.md

MCP Creatio Server

npm version
Docker pulls
License

Model Context Protocol (MCP) server for Creatio (https://www.creatio.com/) to connect Claude Desktop, ChatGPT, GitHub Copilot, and other AI tools to Creatio data.

Also discoverable as:

  • Creatio MCP server
  • MCP server for Creatio CRM
  • Model Context Protocol for Creatio

Overview

  • Exposes Creatio data as MCP tools for MCP-compatible clients (Claude Desktop, ChatGPT Connectors, GitHub Copilot)
  • Supports reading, creating, updating, deleting records and inspecting schema
  • Execute Creatio business processes with parameters
  • Uses Creatio OData v4 API under the hood

Features

  • CRUD operations: read, create, update, delete Creatio records
  • Schema discovery: list entity sets and inspect entity schemas
  • Business processes: run Creatio workflows with parameters
  • System settings: read, write, and manage system setting metadata
  • 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.
  • System operations: manage SysAdminOperation and per-user/role grants (Creatio blocks these tables for OData modifications, so dedicated tools are provided)
  • Custom services: invoke any configuration-package REST service (/0/rest/<service>/<method>) when no dedicated tool fits
  • AI assistant compatibility: Claude Desktop, ChatGPT Connectors, GitHub Copilot
  • Three authentication modes: Legacy login/password, OAuth2 client credentials, OAuth2 authorization code
  • Built-in OAuth server: Automatic MCP client authentication
  • Docker ready: Multi-arch images available

Run Modes

This project supports two runtime modes:

1. CLI Mode (stdio)

Use this mode for MCP clients that launch a command directly (VS Code MCP, Claude Desktop, etc.).

  • No HTTP endpoint needed
  • Easiest local setup
  • Supports Legacy auth and OAuth2 Client Credentials
  • OAuth2 Authorization Code is not supported in stdio mode

Run directly from npm:

npx -y mcp-creatio@latest \
  --base-url https://your-creatio.com \
  --login your_login \
  --password your_password

stdio logs are disabled by default. To enable them, set MCP_CREATIO_LOG_LEVEL or pass --log-level info.

VS Code MCP config (command-based):

{
  "creatio": {
    "command": "npx",
    "args": [
      "-y",
      "mcp-creatio@latest",
      "--base-url",
      "https://your-creatio.com",
      "--login",
      "your_login",
      "--password",
      "your_password"
    ]
  }
}

Local repo command (without publishing):

npm run start:stdio -- --base-url https://your-creatio.com --login your_login --password your_password

2. Server Mode (http)

Use this mode when your client connects by URL (for example http://localhost:3000/mcp).

  • Exposes HTTP endpoint: /mcp
  • Required for OAuth2 Authorization Code flow
  • Works well with Docker and remote deployments

Start server:

npm start

Then connect using URL:

{
  "creatio": {
    "type": "http",
    "url": "http://localhost:3000/mcp"
  }
}

Configuration

Variable Description
CREATIO_BASE_URL Required. Creatio instance URL (e.g. https://your-creatio.com)
CREATIO_LOGIN Username for legacy auth
CREATIO_PASSWORD Password for legacy auth
CREATIO_CLIENT_ID OAuth2 client credentials ID
CREATIO_CLIENT_SECRET OAuth2 client credentials secret
CREATIO_ID_BASE_URL Identity Service URL (if separate from main Creatio instance)
CREATIO_CODE_CLIENT_ID OAuth2 authorization code client ID
CREATIO_CODE_CLIENT_SECRET OAuth2 authorization code client secret
CREATIO_CODE_REDIRECT_URI OAuth2 redirect URI (e.g. http://localhost:3000/oauth/callback)
CREATIO_CODE_SCOPE OAuth2 scope (e.g. offline_access ApplicationAccess_yourappguid)
READONLY_MODE Set true to disable create/update/delete operations
MCP_CREATIO_LOG_LEVEL Log verbosity: silent (default), error, warn, info

Authentication Modes

Choose one of three ways to authenticate with Creatio:

1. Legacy (Username/Password)

CREATIO_LOGIN=YourLogin
CREATIO_PASSWORD=YourPassword

2. OAuth2 Client Credentials

For server-to-server authentication. Setup guide →

CREATIO_CLIENT_ID=your_client_id
CREATIO_CLIENT_SECRET=your_client_secret

3. OAuth2 Authorization Code

For user-delegated access with web authorization. Setup guide →

CREATIO_CODE_CLIENT_ID=your_client_id
CREATIO_CODE_CLIENT_SECRET=your_client_secret
CREATIO_CODE_REDIRECT_URI=http://localhost:3000/oauth/callback
CREATIO_CODE_SCOPE="offline_access ApplicationAccess_yourappguid"

Note: Currently uses in-memory storage for OAuth tokens. Tokens will be lost on server restart.

Important: OAuth2 Authorization Code requires Server Mode (http).

Priority: Authorization Code > Client Credentials > Legacy

MCP Client Authentication (HTTP Mode)

The server includes OAuth 2.1 Authorization Server for MCP clients (Claude Desktop, etc.). No additional setup required - clients authenticate automatically through standard OAuth flow.

Examples

Node.js (Legacy Auth)

export CREATIO_BASE_URL="https://your-creatio.com"
export CREATIO_LOGIN="YourLogin"
export CREATIO_PASSWORD="YourPassword"
npm start

Docker (Legacy Auth)

docker run --rm -p 3000:3000 \
  -e CREATIO_BASE_URL="https://your-creatio.com" \
  -e CREATIO_LOGIN="YourLogin" \
  -e CREATIO_PASSWORD="YourPassword" \
  crackish/mcp-creatio

Available Tools

Tool Description
get-current-user-info Fetch the Creatio contact details for the authenticated MCP user
list-entities List all available entity sets
describe-entity Get schema for an entity (fields, types, keys)
read Query records with optional filters, select, expand, ordering
create Create a new record
update Update an existing record
delete Delete a record
execute-process Run a Creatio business process
query-sys-settings Read current values and metadata for one or more system settings
set-sys-settings-value Update one or more system setting values
create-sys-setting Create a new system setting (with optional initial value)
update-sys-setting-definition Modify system setting metadata (name, value type, cache flags, lookup reference)
refresh-feature-cache Invalidate the in-memory feature-toggle cache. Call after editing Feature / AdminUnitFeatureState rows
upsert-admin-operation Create or update a SysAdminOperation (system operation / permission). Required because OData modifications are blocked for this entity
delete-admin-operation Delete one or more SysAdminOperation rows (related grantee rows are cleaned up automatically)
set-admin-operation-grantee Grant or revoke a system operation for users/roles. Repeated calls update the existing row instead of duplicating
delete-admin-operation-grantee Remove specific grant rows by Id. Prefer set-admin-operation-grantee to flip allow ↔ deny
call-configuration-service Escape hatch: invoke any configuration-package REST service method by name. Use only when no dedicated tool covers the operation

Note: Previously documented search/fetch helper tools (for a specific connector workflow) have been removed as they are no longer required.

Reviews (0)

No results found