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
- 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
- CRUD operations:
read,create,update,deleteCreatio records - Schema discovery:
list-entities,describe-entity - Business processes:
execute-processto run Creatio workflows - System settings:
create-sys-setting,update-sys-setting-definition,query-sys-settings, andset-sys-settings-valueto create, adjust metadata, inspect, or assign values - 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
This project supports two runtime modes:
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
stdiomode
Run directly from npm:
npx -y mcp-creatio \
--base-url https://your-creatio.com \
--login your_login \
--password your_passwordstdio 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",
"--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_passwordUse 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 startThen connect using URL:
{
"creatio": {
"type": "http",
"url": "http://localhost:3000/mcp"
}
}| 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 |
Choose one of three ways to authenticate with Creatio:
CREATIO_LOGIN=YourLogin
CREATIO_PASSWORD=YourPasswordFor server-to-server authentication. Setup guide →
CREATIO_CLIENT_ID=your_client_id
CREATIO_CLIENT_SECRET=your_client_secretFor 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
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.
export CREATIO_BASE_URL="https://your-creatio.com"
export CREATIO_LOGIN="YourLogin"
export CREATIO_PASSWORD="YourPassword"
npm startdocker run --rm -p 3000:3000 \
-e CREATIO_BASE_URL="https://your-creatio.com" \
-e CREATIO_LOGIN="YourLogin" \
-e CREATIO_PASSWORD="YourPassword" \
crackish/mcp-creatio| Tool | Description |
|---|---|
get-current-user-info |
Fetches the Creatio contact details for the authenticated MCP user |
list-entities |
List all available entity sets |
describe-entity |
Get schema for entity (fields, types, keys) |
read |
Query records with optional filters |
create |
Create new record |
update |
Update existing record |
delete |
Delete record |
execute-process |
Run Creatio business processes |
query-sys-settings |
Retrieve the current values and metadata for one or more sys settings |
set-sys-settings-value |
Update one or more sys settings via PostSysSettingsValues |
create-sys-setting |
Create a new sys setting record and optional initial value assignment |
update-sys-setting-definition |
Modify sys setting metadata (name, value type, cache flags, lookup reference) via UpdateSysSettingRequest. Creatio requires Code, Name, and valueTypeName to be included on every update, even if the values are unchanged. |
Note: Previously documented
search/fetchhelper tools (for a specific connector workflow) have been removed as they are no longer required.