ictpbx-mcp — MCP-сервер для Claude Code: состояние АТС без правок
Даёт ассистенту read-only доступ к вашей IP-АТС ICTPBX: список добавочных, DID-номеров, транков, арендаторов и живая статистика.
claude mcp add --env ICTPBX_BASE_URL=<ICTPBX_BASE_URL> --env ICTPBX_USERNAME=<ICTPBX_USERNAME> --env ICTPBX_PASSWORD=<ICTPBX_PASSWORD> --env ICTPBX_TIMEOUT_MS=<ICTPBX_TIMEOUT_MS> --env ICTPBX_TLS_INSECURE=<ICTPBX_TLS_INSECURE> --transport stdio ictpbx-mcp -- npx -y ictpbx-mcpЧто делает ictpbx-mcp
Сервер работает поверх REST API фреймворка ICTCore. Он авторизуется по email и паролю, получает JWT через POST /authenticate при первом обращении и сам обновляет токен дальше. Пять инструментов отдают данные в чат: статистика по добавочным, устройствам, очередям, IVR и шлюзам, а также списки номеров, транков и организаций на АТС. Изменить конфигурацию или позвонить через него нельзя, поэтому случайная команда агенту не тронет настройки.
Нужен Node.js 18 или новее. Для подключения понадобятся адрес REST-базы ICTCore (обычно с /api на конце), email аккаунта и его пароль. Таймаут запроса задаётся в ICTPBX_TIMEOUT_MS, по умолчанию 30000 мс. Флаг ICTPBX_TLS_INSECURE отключает проверку сертификата — так стоит подключаться только к тестовому серверу с самоподписанным сертификатом, на боевой АТС это дыра.
Подключение стандартное для stdio: npx -y ictpbx-mcp запускает сервер, переменные окружения прописываются в конфиге клиента. Скрипты и локальные файлы не нужны, весь код ставится из npm при первом запуске.
Какие задачи решает
- посмотреть, сколько на АТС добавочных и устройств
- выгрузить список DID-номеров с их состоянием
- найти арендаторов, заведённых на IP-PBX
- проверить, какие SIP-транки настроены у провайдеров
- свести в чате статистику по очередям и IVR
Примеры запросов агенту
- Покажи статистику по нашей ICTPBX: сколько добавочных, очередей и конференций.
- Выведи все DID-номера с признаком активности и арендатором.
- Какие SIP-провайдеры подключены к АТС? Список с названиями.
Как установить ictpbx-mcp
Командой платформы
claude mcp add --env ICTPBX_BASE_URL=<ICTPBX_BASE_URL> --env ICTPBX_USERNAME=<ICTPBX_USERNAME> --env ICTPBX_PASSWORD=<ICTPBX_PASSWORD> --env ICTPBX_TIMEOUT_MS=<ICTPBX_TIMEOUT_MS> --env ICTPBX_TLS_INSECURE=<ICTPBX_TLS_INSECURE> --transport stdio ictpbx-mcp -- npx -y ictpbx-mcpВместо <…> подставьте свои значения
Командой платформы
codex mcp add ictpbx-mcp --env ICTPBX_BASE_URL=<ICTPBX_BASE_URL> --env ICTPBX_USERNAME=<ICTPBX_USERNAME> --env ICTPBX_PASSWORD=<ICTPBX_PASSWORD> --env ICTPBX_TIMEOUT_MS=<ICTPBX_TIMEOUT_MS> --env ICTPBX_TLS_INSECURE=<ICTPBX_TLS_INSECURE> -- npx -y ictpbx-mcpВместо <…> подставьте свои значения
Файл настроек
{
"mcpServers": {
"ictpbx-mcp": {
"command": "npx",
"args": [
"-y",
"ictpbx-mcp"
],
"env": {
"ICTPBX_BASE_URL": "<ICTPBX_BASE_URL>",
"ICTPBX_USERNAME": "<ICTPBX_USERNAME>",
"ICTPBX_PASSWORD": "<ICTPBX_PASSWORD>",
"ICTPBX_TIMEOUT_MS": "<ICTPBX_TIMEOUT_MS>",
"ICTPBX_TLS_INSECURE": "<ICTPBX_TLS_INSECURE>"
}
}
}
}Вместо <…> подставьте свои значения
Файл настроек
{
"servers": {
"ictpbx-mcp": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"ictpbx-mcp"
],
"env": {
"ICTPBX_BASE_URL": "<ICTPBX_BASE_URL>",
"ICTPBX_USERNAME": "<ICTPBX_USERNAME>",
"ICTPBX_PASSWORD": "<ICTPBX_PASSWORD>",
"ICTPBX_TIMEOUT_MS": "<ICTPBX_TIMEOUT_MS>",
"ICTPBX_TLS_INSECURE": "<ICTPBX_TLS_INSECURE>"
}
}
}
}Вместо <…> подставьте свои значения
Командой платформы
gemini mcp add -e ICTPBX_BASE_URL=<ICTPBX_BASE_URL> -e ICTPBX_USERNAME=<ICTPBX_USERNAME> -e ICTPBX_PASSWORD=<ICTPBX_PASSWORD> -e ICTPBX_TIMEOUT_MS=<ICTPBX_TIMEOUT_MS> -e ICTPBX_TLS_INSECURE=<ICTPBX_TLS_INSECURE> ictpbx-mcp npx -y ictpbx-mcpВместо <…> подставьте свои значения
По шагам, с командами для каждой платформы: Как подключить MCP-сервер: Claude Code, Codex, Cursor, VS Code, Gemini CLI и другие
Вопросы о ictpbx-mcp
Как установить ictpbx-mcp в Claude Code?
Одной командой: `claude mcp add ictpbx-mcp -e ICTPBX_BASE_URL=<ICTPBX_BASE_URL> -e ICTPBX_USERNAME=<ICTPBX_USERNAME> -e ICTPBX_PASSWORD=<ICTPBX_PASSWORD> -- npx -y ictpbx-mcp. Вместо плейсхолдеров подставьте адрес REST-базы, email и пароль аккаунта ICTCore. Есть вариант с таймаутом и TLS-флагом: claude mcp add --env ICTPBX_BASE_URL=<ICTPBX_BASE_URL> --env ICTPBX_USERNAME=<ICTPBX_USERNAME> --env ICTPBX_PASSWORD=<ICTPBX_PASSWORD> --env ICTPBX_TIMEOUT_MS=<ICTPBX_TIMEOUT_MS> --env ICTPBX_TLS_INSECURE=<ICTPBX_TLS_INSECURE> --transport stdio ictpbx-mcp -- npx -y ictpbx-mcp`.
Что делает ictpbx-mcp?
Читает состояние вашей ICTPBX через ICTCore REST API и отдаёт его ассистенту пятью инструментами: статистика, добавочные, DID-номера, SIP-транки и арендаторы. Конфигурацию он не меняет и звонки не совершает.
Что нужно для работы сервера?
Node.js 18 или новее, адрес REST-базы ICTCore с /api на конце, email и пароль API-аккаунта. Аутентификация идёт по email, токен сервер получает через POST /authenticate сам.