mcp-bitrix24
mcp-bitrix24
Documentation
mcp-bitrix24
MCP server for Bitrix24 Tasks, Workgroups, and Users. Implements MCP/JSON-RPC over STDIO.
Features
- Tasks: create, update, close, reopen, list
- Workgroups: create, list
- Users: list, current user, available fields
- Task fields: available fields + validation for `create_task.fields`
Requirements
- Node.js >= 18
- Bitrix24 webhook URL
Install / Build
npm install
npm run buildRun via npm:
npx mcp-bitrix24Configuration
Set the Bitrix24 webhook URL via environment variable:
BITRIX24_WEBHOOK_URL=https:///rest///Example Codex MCP config:
[mcp_servers.bitrix24]
command = "npx"
args = ["-y", "mcp-bitrix24"]
[mcp_servers.bitrix24.env]
BITRIX24_WEBHOOK_URL = "https:///rest///"Tools
Tasks
- `create_task`
- Input: `title` (string, required), `description?` (string), `responsible_id?` (number), `group_id?` (number), `fields?` (object)
- Output: `{ task_id: number }`
- Note: if `fields` is provided, keys are validated against `get_task_fields`.
- `update_task`
- Input: `task_id` (number, required) + at least one of: `title?`, `description?`, `responsible_id?`, `group_id?`
- Output: `{ task_id: number }`
- `close_task`
- Input: `task_id` (number, required)
- Output: `{ task_id: number }`
- `reopen_task`
- Input: `task_id` (number, required)
- Output: `{ task_id: number }`
- `list_tasks`
- Input: `responsible_id?` (number), `group_id?` (number), `start?` (number), `limit?` (number)
- Output: `{ tasks: [{ id, title, status }] }`
- `get_task_fields`
- Input: `{}`
- Output: `{ fields: { [field: string]: object } }`
- `list_task_history`
- Input: `task_id` (number, required), `filter?` (object), `order?` (object)
- Output: `{ list: [ { id, createdDate, field, value, user } ] }`
Workgroups
- `create_group`
- Input: `name` (string, required), `description?` (string)
- Output: `{ group_id: number }`
- `list_groups`
- Input: `limit?` (number)
- Output: `{ groups: [{ id, name }] }`
Users
- `list_users`
- Input:
- `filter?` (object)
- `sort?` (string)
- `order?` ("ASC" | "DESC")
- `admin_mode?` (boolean)
- `start?` (number)
- `limit?` (number)
- Output: `{ users: [{ id, name, last_name, email?, active }] }`
- Note: `filter` supports Bitrix24 `user.get` filters (including prefixes like `>=`, `%`, `@`, etc.).
- Input:
`start` controls paging (Bitrix returns 50 records per page); `limit` is a local slice after the API response.
- `get_user_fields`
- Input: `{}`
- Output: `{ fields: { [field: string]: string } }`
- `get_current_user`
- Input: `{}`
- Output: `{ user: { id, name, last_name, email?, active } }`
Architecture
Clean architecture layers:
- `mcp/` — protocol, transport, server
- `adapters/` — MCP tools mapping to domain
- `domain/` — entities, services, ports
- `infrastructure/` — Bitrix24 REST client
Development Notes
- Input validation uses `zod`.
- Transport: STDIO only.
- Build: `tsc` (`npm run build`).
Contributing
See `CONTRIBUTING.md` for guidelines.
Frequently asked questions
What is mcp-bitrix24?
mcp-bitrix24 is mcp-bitrix24
How do I install mcp-bitrix24?
Open the GitHub repository and follow its README. Most MCP servers are added to your client's MCP config, then called by your agent.
Is mcp-bitrix24 open source?
Yes — it is hosted on GitHub at https://github.com/stemirkhan/mcp-bitrix24 and has 4 stars.
Related MCP tools
Model Context Protocol Servers
The Open-Source Multimodal AI Agent Stack: Connecting Cutting-Edge AI Models and Agent Infra
A MCP for Claude Desktop / Claude Code / Windsurf / Cursor to build n8n workflows for you
MCP server to provide Figma layout information to AI coding agents like Cursor
The world's best AI personal assistant for email. Open source app to help you reach inbox zero fast.
Instant is the best backend for AI-coded apps. You get auth, permissions, storage, presence, and streams — everything you need to ship apps your users will love.
Run your own MCP server? See who uses it and what to fix.
Measure it with TrackMCP