The full upstream README, mirrored here for reference. Install config, tool schemas, adoption signals, and an original overview live on the Ictpbx MCP listing page.
A Model Context Protocol server for ICTPBX, the multi-tenant, white-label IP-PBX built on the ICTCore framework by ICT Innovations.
It lets an AI assistant read your PBX state — extensions, DID numbers, SIP trunk providers, tenants and live statistics — over the ICTCore REST API. It is read-only: it never places a call or changes configuration.
Requires Node.js 18 or newer.
| Variable | Required | Default | |
|---|---|---|---|
ICTPBX_BASE_URL | yes | ICTCore REST base, normally ending in /api, e.g. https://your-ictpbx/api | |
ICTPBX_USERNAME | yes | API account email (ICTCore logs in by email) | |
ICTPBX_PASSWORD | yes | Password for that account | |
ICTPBX_TIMEOUT_MS | no | 30000 | Per-request timeout |
ICTPBX_TLS_INSECURE | no | false | Skip TLS verification — self-signed test servers only |
| Tool | What it does |
|---|---|
ictpbx_pbx_statistics | Counts of extensions, devices, ring groups, queues, IVRs, voicemails, conferences, gateways |
ictpbx_list_extensions | SIP extensions with username, name, tenant |
ictpbx_list_dids | DID (inbound) numbers, active state and tenant |
ictpbx_list_providers | SIP trunk providers (upstream carriers) |
ictpbx_list_tenants | Tenants (customer organizations) on the PBX |
ICTPBX runs on ICTCore, which authenticates with a JWT from POST /authenticate
(login by email) and reads it back from the Authorization: Bearer header. The
server fetches the token on first use and refreshes it automatically.
Built by Tahir Almas at ICT Innovations — the team behind ICTPBX, ICTContact, ICTDialer, ICTFax and the ICTCore framework these products share. Learn more at ictpbx.com.
MIT licensed. Issues and PRs welcome at github.com/ictinnovations/ictpbx-mcp.