BitrixMCP: a deterministic Bitrix24 server
BitrixMCP
A Python MCP server for Bitrix24 with no internal LLM: a static method catalog, a read-or-write access policy, and per-user OAuth for confirmed writes
- 0 ★ on the repository
- Last commit
Broad access
Why this level
- In read,write mode with dry_run off, it can create and update deals, tasks and activities
- OAuth mode stores decryptable employee access tokens on the server
A similar tool with a larger community: bitrix-mcp, 1 ★ on the repository
Install
- Works in
- Services
Manual install
uv sync && uv run python main.pyBefore running, copy .env.example to .env and set BITRIX_WEBHOOK_URL.
Access and checks
How we reviewBroad accessThe tool can change data, run commands or handle secrets.
- In read,write mode with dry_run off, it can create and update deals, tasks and activities
- OAuth mode stores decryptable employee access tokens on the server
This is third-party code. Review the repository files before installing.
What it does
The server gives the client model tools to search and describe Bitrix24 methods from a built-in static catalog rather than by hitting the network, plus a bitrix_call fallback for any allowed method. Reading CRM, tasks, activities, employees and telephony goes through an inbound webhook. Writes work in two ways: through the webhook under a BITRIX_ALLOWED_ACCESS policy, or through per-user OAuth when the server is deployed as a shared service for multiple people, for example in LibreChat. In OAuth mode, webhook writes are blocked and changes are only allowed for the record's owner unless an admin is explicitly configured. Every curated write tool defaults to dry_run enabled.
Who it is for. For teams that need a shared Bitrix24 MCP server for multiple employees with separate read and write access and explicit change confirmation.
Good fit when
- You need a team MCP server, not a single-user one, with per-user OAuth identity
- You want to restrict the agent to read-only access via BITRIX_ALLOWED_ACCESS
- You want a static Bitrix24 method catalog instead of hitting the network for API descriptions
Not a fit when
- You want a simple personal server without an OAuth app and token encryption
- You cannot register a local Bitrix24 app for OAuth-based writes
Example request
Show my open Bitrix24 deals and list which CRM methods are actually available through this webhookMCP
- Transport
- stdio, http
- Authentication
- API key
Environment variables
BITRIX_WEBHOOK_URLrequired, secret- The Bitrix24 portal inbound webhook URL
BITRIX_ALLOWED_ACCESS- Access policy: read, or read,write, or read,write,destructive
MCP_BEARER_TOKENsecret- A shared bearer token for public deployments, required when OAuth is enabled
BITRIX_OAUTH_CLIENT_IDsecret- The Bitrix24 local app client ID for per-user OAuth
BITRIX_OAUTH_CLIENT_SECRETsecret- The Bitrix24 local app client secret for per-user OAuth
BITRIX_TOKEN_ENCRYPTION_KEYsecret- A Fernet key for encrypting OAuth tokens in SQLite
Limitations
The project is young with no stars, and the README explicitly lists recent breaking changes to the tools. A full OAuth setup requires registering a local Bitrix24 app, a Fernet encryption key, and handling a special X-Bitrix-User-Email header from the client. The method catalog is built from an external b24-rest-docs repository, so its freshness depends on that source. No license is specified in the repository.
How to disable. Stop the docker compose stack or the python main.py process and remove the server from your MCP client configuration.
FAQ
Can the server change CRM data right away?
Curated write tools default to dry_run=true, and write access overall is controlled by the BITRIX_ALLOWED_ACCESS variable.
Is OAuth mandatory?
No, the normal mode works with a single inbound webhook. OAuth is only needed for writes attributed to specific employees in a shared deployment.
Discussion
No questions or reviews yet.
Related
All Bitrix24 toolsA read and write MCP server for the Bitrix24 REST API: CRM, tasks, scrum, calendar, disk, messaging and portal events
A read-only MCP server that reads Bitrix24 deals, contacts and companies with SELECT queries against the database, bypassing the REST API
Bitrix24 MCP Server (qwito)
Bitrix24 MCP Server
A TypeScript MCP server with 45-plus tools for Bitrix24 CRM: contacts, deals, leads, companies, tasks and activity analytics
Bitrix24 MCP server with real calls
MCP Server for Bitrix24
A Bitrix24 MCP server with 43 tools and about 870 actions that executes real REST API calls instead of just serving documentation
Bitrix24 MCP Server (gunnit)
Bitrix24 MCP Server
A TypeScript MCP server for Bitrix24 CRM: contacts, companies, leads, deals, tasks and sales rep performance reports
Bitrix24 MCP server with sales analytics
Bitrix24 MCP Server
Bitrix24 MCP server in TypeScript with a broad set of CRM tools plus a dedicated group for monitoring manager activity and performance
README in short
The README describes a deterministic server with no internal LLM: the client model finds methods itself via bitrix_search_methods and bitrix_describe_method or calls bitrix_call directly. It separately covers curated tools for CRM, tasks, activities, employees and telephony, the BITRIX_ALLOWED_ACCESS access policy, a per-user OAuth scheme with Fernet token encryption, and a list of recent breaking changes from the previous version.