mcp-bitrix24
MCP server for Bitrix24 Tasks, Workgroups, and Users. Implements MCP/JSON-RPC over STDIO.
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 build
Run via npm:
npx mcp-bitrix24
Configuration
Set the Bitrix24 webhook URL via environment variable:
BITRIX24_WEBHOOK_URL=https://<your-domain>/rest/<user_id>/<webhook>/
Example Codex MCP config:
[mcp_servers.bitrix24] command = "npx" args = ["-y", "mcp-bitrix24"]
[mcp_servers.bitrix24.env] BITRIX24_WEBHOOK_URL = "https:///rest/<user_id>//"
Tools
Tasks
create_task- Input:
title(string, required),description?(string),responsible_id?(number),group_id?(number),fields?(object) - Output:
{ task_id: number } - Note: if
fieldsis provided, keys are validated againstget_task_fields.
- Input:
update_task- Input:
task_id(number, required) + at least one of:title?,description?,responsible_id?,group_id? - Output:
{ task_id: number }
- Input:
close_task- Input:
task_id(number, required) - Output:
{ task_id: number }
- Input:
reopen_task- Input:
task_id(number, required) - Output:
{ task_id: number }
- Input:
list_tasks- Input:
responsible_id?(number),group_id?(number),start?(number),limit?(number) - Output:
{ tasks: [{ id, title, status }] }
- Input:
get_task_fields- Input:
{} - Output:
{ fields: { [field: string]: object } }
- Input:
list_task_history- Input:
task_id(number, required),filter?(object),order?(object) - Output:
{ list: [ { id, createdDate, field, value, user } ] }
- Input:
Workgroups
create_group- Input:
name(string, required),description?(string) - Output:
{ group_id: number }
- Input:
list_groups- Input:
limit?(number) - Output:
{ groups: [{ id, name }] }
- Input:
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:
filtersupports Bitrix24user.getfilters (including prefixes like>=,%,@, etc.).startcontrols paging (Bitrix returns 50 records per page);limitis a local slice after the API response.
- Input:
get_user_fields- Input:
{} - Output:
{ fields: { [field: string]: string } }
- Input:
get_current_user- Input:
{} - Output:
{ user: { id, name, last_name, email?, active } }
- Input:
Architecture
Clean architecture layers:
mcp/— protocol, transport, serveradapters/— MCP tools mapping to domaindomain/— entities, services, portsinfrastructure/— Bitrix24 REST client
Development Notes
- Input validation uses
zod. - Transport: STDIO only.
- Build:
tsc(npm run build).
Contributing
See CONTRIBUTING.md for guidelines.
Serveurs connexes
MCP Notification Server
Sends periodic notifications every 10 seconds.
VOICEROID Daemon
A text-to-speech server for VOICEROID2 via the voiceroid_daemon.
Mac Messages MCP
A Python bridge for interacting with the macOS Messages app.
CData Google Contacts
A read-only MCP server for Google Contacts, powered by the CData JDBC Driver.
Microsoft Teams MCP
Interact with Microsoft Teams to read, create, and reply to messages, and mention members.
Platfone - Receive SMS & Virtual Numbers MCP
Virtual phone number platform for AI agents — rent numbers across 200+ countries, receive SMS, and manage the full activation lifecycle
Hacker News MCP Server
Integrate real-time Hacker News data and discussions into your applications and workflows.
RetellAI
Interact with RetellAI's voice services to create conversational voice AI.
better-telegram-mcp
Production-grade MCP server for Telegram with dual-mode Bot API + MTProto, 6 composite tools
Slack MCP Server
An MCP server for interacting with Slack workspaces using user tokens, without requiring bots or special permissions.