Bitrix24 Tasks, CRM & Lists MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| POSTGRES_DB | No | PostgreSQL database name (alternative to DATABASE_URL for HTTP transport). | |
| DATABASE_URL | No | PostgreSQL connection string, used for multi-account HTTP transport. | |
| MCP_HTTP_PORT | No | HTTP server port for remote transport. | 3000 |
| MCP_TRANSPORT | No | Transport mode: stdio (default) or http; http requires PostgreSQL. | stdio |
| POSTGRES_USER | No | PostgreSQL user (alternative to DATABASE_URL). | |
| MCP_PUBLIC_URL | No | External HTTPS address of the server, used as OAuth issuer. | |
| MCP_AUTH_USERNAME | No | One-time bootstrap username for the initial admin account in HTTP mode. | |
| MCP_EXTRA_MODULES | No | Comma-separated npm packages and/or file paths to additional modules outside the repository. | |
| POSTGRES_PASSWORD | No | PostgreSQL password (alternative to DATABASE_URL). | |
| BITRIX_WEBHOOK_BASE | Yes | Secret Bitrix24 webhook URL, e.g. https://portal.example.ru/rest/123/token. | |
| MCP_ENABLED_MODULES | No | Comma-separated IDs of built-in modules to enable (tasks, crm, lists). Empty disables all; unset enables all. | |
| BITRIX_REPO_GROUP_MAP | No | JSON object mapping repository names to Bitrix24 project IDs, e.g. {"owner/repo":172}. | |
| MCP_TOKEN_TTL_SECONDS | No | Access token lifetime in seconds for HTTP transport. | |
| MCP_AUTH_PASSWORD_HASH | No | One-time bootstrap password hash for the initial admin account in HTTP mode. | |
| BITRIX_DEFAULT_GROUP_ID | No | Default project/group ID used by task tools when not specified explicitly. | |
| BITRIX_DEFAULT_DEAL_CATEGORY | No | Default CRM deal funnel name. | |
| MCP_REFRESH_TOKEN_TTL_SECONDS | No | Refresh token lifetime in seconds for HTTP transport. |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| bitrix_list_tasksB | Список задач Bitrix24. Указывайте project (название) и stages (колонки канбана). ID не нужны. |
| bitrix_get_taskB | Получить полную информацию о задаче Bitrix24 по ID. |
| bitrix_get_task_historyC | Получить историю изменений задачи Bitrix24. |
| bitrix_add_task_messageC | Отправить сообщение в чат задачи Bitrix24. Требует confirm=true. |
| bitrix_send_direct_messageA | Отправить личное сообщение пользователю Bitrix24 или в существующий чат/диалог по dialogId (не сообщение в чат задачи — для этого используйте bitrix_add_task_message). Требует confirm=true. Требует, чтобы у входящего вебхука была включена область доступа "im" — если это не так, инструмент вернёт понятную ошибку с инструкцией, а не сырую ошибку Bitrix. |
| bitrix_find_free_slotA | Найти общий свободный слот в календаре для нескольких участников (read-only, ничего не создаёт). Возвращает до maxCandidates слотов в формате "DD.MM.YYYY HH:MM:SS" — тот же формат принимает bitrix_schedule_meeting в полях from/to. Требует область доступа "calendar" у вебхука. |
| bitrix_schedule_meetingA | Создать полноценную встречу в календаре Bitrix24 с приглашением участников (они получат уведомление, и встреча покажется как занятость в их календаре). from/to — в формате "DD.MM.YYYY HH:MM:SS", как в ответе bitrix_find_free_slot. Организатором становится владелец вебхука. Требует confirm=true и область доступа "calendar" у вебхука. |
| bitrix_get_timesheet_summaryA | Сводка учёта рабочего времени по задачам (read-only): суммарные часы по пользователям и, внутри каждого пользователя, по задачам, за период dateFrom..dateTo. Можно ограничить конкретными пользователями и/или проектом. Требует область доступа "tasks" (уже есть) — timeman.status-часть сводки (только при заданных userIds) требует ещё и "timeman". |
| bitrix_get_worktime_reportA | Сводка учёта РАБОЧЕГО ДНЯ (read-only, модуль timeman.api.worktimerecord — тот же, что стоит за виджетом "День завершён HH:MM:SS" в карточке профиля): часы, простой (idle) и количество отработанных дней по пользователям за период dateFrom..dateTo. Не путать с bitrix_get_timesheet_summary — та сводка про время, списанное на задачи (task.elapseditem), эта — про фактическое открытие/закрытие рабочего дня. Область охвата — departmentId (сотрудники отдела) и/или явный userIds; нужен хотя бы один из них. Требует область доступа "timeman". |
| bitrix_update_taskA | Безопасно изменить ограниченный набор полей задачи (TITLE, DESCRIPTION, DEADLINE, PRIORITY). Требует confirm=true. |
| bitrix_list_project_stagesB | Список колонок канбана проекта по названию. ID не нужны. |
| bitrix_move_task_stageA | Переместить задачу в колонку канбана по названию. Требует confirm=true. |
| bitrix_list_task_messagesC | Получить сообщения и комментарии задачи Bitrix24. |
| bitrix_start_taskA | Перевести задачу в статус «Выполняется» (tasks.task.start). Требует confirm=true. |
| bitrix_complete_taskB | Завершить задачу (tasks.task.complete). Требует confirm=true. |
| bitrix_list_projectsA | Список доступных проектов Bitrix24 по названию. |
| bitrix_create_projectA | Создать новый проект (воркгруппу) Bitrix24 — тот же раздел, что .../tasks/projects/. Требует confirm=true. |
| bitrix_create_project_stageB | Создать новую колонку канбана (доску) в проекте. Требует confirm=true. |
| bitrix_list_project_membersA | Список участников проекта (воркгруппы) Bitrix24 — ID, роль, имя. |
| bitrix_add_project_membersA | Добавить участников в уже существующий проект (воркгруппу) Bitrix24 — без похода в интерфейс. Требует confirm=true. |
| bitrix_remove_project_membersB | Удалить участников из проекта (воркгруппы) Bitrix24. Требует confirm=true. |
| bitrix_update_project_member_roleA | Изменить роль существующего участника проекта (воркгруппы) Bitrix24. Требует confirm=true. |
| bitrix_create_taskA | Создать новую задачу, в проекте или свободную (без привязки к проекту, если projectId не указан). responsibleId обязателен — Bitrix24 отклоняет задачу без исполнителя, с проектом или без. Требует confirm=true. |
| bitrix_get_task_checklistA | Получить чек-лист задачи Bitrix24 как критерии приёмки. |
| bitrix_attach_task_resultC | Зафиксировать результат работы по задаче (tasks.task.result.add). Требует confirm=true. |
| bitrix_list_deal_categoriesB | Список воронок сделок Bitrix24 CRM. |
| bitrix_list_deal_stagesB | Список стадий воронки сделок по названию category. ID не нужны. |
| bitrix_list_dealsB | Список сделок Bitrix24. Указывайте category (воронка) и stages (стадии) по названию. |
| bitrix_get_dealA | Получить полную информацию о сделке Bitrix24 по ID. |
| bitrix_create_dealB | Создать сделку в Bitrix24 CRM. Требует confirm=true. |
| bitrix_update_dealA | Изменить ограниченный набор полей сделки (TITLE, COMMENTS, OPPORTUNITY, CURRENCY_ID). Требует confirm=true. |
| bitrix_move_deal_stageA | Переместить сделку в стадию воронки по названию. Требует confirm=true. |
| bitrix_add_deal_commentA | Добавить комментарий в timeline сделки. Требует confirm=true. |
| bitrix_list_deal_commentsC | Список комментариев timeline сделки Bitrix24. |
| bitrix_list_contactsC | Список контактов Bitrix24 CRM с поиском по имени. |
| bitrix_get_contactA | Получить полную информацию о контакте Bitrix24 по ID. |
| bitrix_list_usersC | Поиск и список сотрудников Bitrix24 по имени, фамилии или email. |
| bitrix_get_userB | Получить полную информацию о пользователе Bitrix24 по ID. |
| bitrix_find_contactA | Найти контакт по телефону и/или email (crm.duplicate.findbycomm). |
| bitrix_create_contactA | Создать контакт в Bitrix24 CRM. Требует confirm=true. |
| bitrix_update_contactB | Изменить ограниченный набор полей контакта (NAME, LAST_NAME, PHONE, EMAIL, COMMENTS). Требует confirm=true. |
| bitrix_list_activitiesB | Список дел (активностей) по сделке или контакту. |
| bitrix_create_activityA | Создать дело (звонок, встречу или задачу) в CRM. Требует confirm=true. Укажите dealId или contactId. |
| bitrix_lists_search_lettersA | Найти письма в реестре Bitrix «Списки» (входящие/исходящие) по проекту, теме или номеру письма. projectQuery ищет подстрокой в «Реестре проектов» и ограничивает выборку найденными проектами; letterNumber ищет по подстроке «№<номер>» в названии письма (устойчиво к тому, что поле номера менялось со временем); query — свободный текстовый поиск по теме письма. Каждый результат содержит files — ссылки на вложения (propertyCode + attachedObjectId), которые передаются в bitrix_lists_get_letter_file для скачивания. Не поддерживает часть устаревших файловых полей исходящих писем (CFile-based, не Disk) — см. NEXT_AGENT_PROMPT.md. |
| bitrix_lists_get_letter_fileA | Скачать содержимое одного вложения письма из реестра «Списки» по attachedObjectId, полученному из bitrix_lists_search_letters. Возвращает содержимое файла в base64. |
| bitrix_test_connectionA | Проверить соединение с Bitrix24 через входящий вебхук и доступность REST API задач и CRM. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 46 tools
Most tools are clearly separated by resource and action (tasks, deals, contacts, users, projects, calendar, Lists). The main boundary risks are bitrix_create_activity overlapping semantically with bitrix_schedule_meeting and bitrix_create_task, but the descriptions clarify the module context well.
The bitrix_ prefix with snake_case verb_noun naming is consistent throughout, e.g. bitrix_list_tasks, bitrix_get_task, bitrix_create_deal. Minor deviations like bitrix_lists_search_letters and bitrix_find_contact are still readable and do not break the overall pattern.
With 46 tools, the server exceeds the 25+ threshold and feels heavy even though it covers three domains. The large surface creates selection overhead and could be better scoped or split into separate servers.
Core create/read/update flows exist for tasks, deals, contacts, and projects, plus useful extras like calendar scheduling and time reports. However, there are no delete or archive tools for any entity, activities lack update/delete, and meetings cannot be updated or cancelled.