Bitrix24 MCP via Keycloak and Vault

Bitrix MCP: Keycloak identity and Vault credentials

A Streamable HTTP MCP server for Bitrix24 that checks a Keycloak token on every request and keeps portal credentials in Vault, never in the model

  • 0 ★ on the repository
  • Last commit
MCP server

Broad access

Why this level

  • Tools can read and change Bitrix24 data as the user
  • The service is exposed to the internet on ports 80 and 443
  • It needs Vault and Keycloak secrets with access to portal keys
All reasons and checks
Russian stack

i1i1i1i1i1i11/mcp-bitrix

Install

Services

Manual install

Text for your agent

Set up a Keycloak realm and Vault with an AppRole per the i1i1i1i1i1i11/mcp-bitrix README, set PUBLIC_HOST, VAULT_ROLE_ID and VAULT_SECRET_ID in the VPS .env, configure the redirect URL in the Bitrix local app, and connect the server to OpenWebUI as a Streamable HTTP MCP.

Access and checks

How we review

Broad accessThe tool can change data, run commands or handle secrets.

  • Tools can read and change Bitrix24 data as the user
  • The service is exposed to the internet on ports 80 and 443
  • It needs Vault and Keycloak secrets with access to portal keys

This is third-party code. Review the repository files before installing.

What it does

The server runs a Streamable HTTP MCP for Bitrix24 access from OpenWebUI and refuses Bitrix tokens from the client, tool arguments, or the model itself. Every request must carry a Keycloak access token, which the server verifies for signature, issuer, audience, and expiry via JWKS, using the verified subject as the sole user identity. Bitrix access and refresh tokens live in Vault KV v2 and are fetched via AppRole; local SQLite holds only one-time OAuth state and task-form data. The audit log records request ID, verified subject, external Bitrix user ID, called tool, and status, never secrets.

Who it is for. For teams that already run Keycloak and Vault and need auditable, identity-checked LLM access to Bitrix24 without ever handing portal tokens to the model.

Good fit when

  • You already run Keycloak SSO and Vault and want an MCP on top
  • You need per-call identity checks instead of one shared webhook for everyone
  • Portal tokens must never enter the model's context

Not a fit when

  • You have no Keycloak or Vault infrastructure and do not plan to stand one up for this
  • You want a simple inbound-webhook server without a separate identity service

Example request

Show my open Bitrix24 tasks for this week

MCP

Transport
http
Authentication
OAuth

Environment variables

PUBLIC_HOST required
The VPS public IP or host, without protocol or path
VAULT_ROLE_ID required, secret
AppRole ID for Vault access
VAULT_SECRET_ID required, secret
AppRole secret for Vault access

Limitations

It needs your own Keycloak realm, a Vault instance with AppRole configured at /v1/mcp/data/config/bitrix, and a public VPS with ports 80 and 443 open. The issuer, audience, and portal values in the README are for one specific deployment and must be replaced with your own. There is no license file, a single maintainer, no stars or releases, and the README cuts off mid-explanation of the OAuth callback.

How to disable. Stop the service on the VPS, remove it from OpenWebUI's integration settings, and revoke the AppRole in Vault.

FAQ

Can the model see the Bitrix token?

No. Tokens live in Vault and are fetched by the server right before a REST call; they are never returned to the model.

What if I do not have Vault?

This server will not fit: Vault-backed token storage is part of the architecture, not an option.

Discussion

No questions or reviews yet.

Russian stack

A company-wide Bitrix24 MCP server where every employee signs in through their own OAuth, so every agent action is attributed to the actual user

MCP serverExtended access

Bitrix24 MCP Server (lstkhN)

Bitrix24 MCP Server

Russian stack

A module for on-premise Bitrix24: an agent safely reads CRM, the MySQL schema, code and business processes over SSH stdio or HTTP with a Bearer token

MCP serverExtended access
Russian stack

A Bitrix24 MCP server with 43 tools and about 870 actions that executes real REST API calls instead of just serving documentation

MCP serverBroad access3Repository stars
Russian stack

An HTTP wrapper around bit2beat/bitrix24-mcp's tools: its own JSON-RPC handler, request authentication, and redaction of Bitrix24 secrets in errors

MCP serverExtended access
Official

Bitrix24's official MCP server template on Nuxt: ready tools for tasks and users, three deployment options

MCP serverBroad access6Repository stars

Bitrix24 MCP by Bit2Beat

Bitrix24 MCP Server

Russian stack

Bitrix24 MCP server over an inbound webhook: CRM, tasks, disk, calendar, chat, business processes and config migration between portals

MCP serverBroad access6Repository stars

README in short

The README lays out the security model as a diagram: OpenWebUI sends a Keycloak token, the server verifies it and fetches Bitrix keys from Vault via AppRole. It then covers VPS port requirements, the Keycloak issuer and audience values, a Vault config example for the Bitrix local app, and the exact redirect URL to set in that app. The text cuts off while explaining that the OAuth state is server-generated and tied to the session.

README badge

Report a problem