NestDaddy

Pbx Mcp

io.github.ictinnovations/pbx-mcp · v0.1.4

Inspect and control Asterisk (AMI) and FreeSWITCH (ESL) PBX servers from your AI assistant.

Connect Runs on your machine

Terminal
claude mcp add pbx-mcp -e ASTERISK_AMI_HOST=<ASTERISK_AMI_HOST> -e ASTERISK_AMI_PORT=<ASTERISK_AMI_PORT> -e ASTERISK_AMI_USERNAME=<ASTERISK_AMI_USERNAME> -e ASTERISK_AMI_PASSWORD=<ASTERISK_AMI_PASSWORD> -e ASTERISK_AMI_TLS=<ASTERISK_AMI_TLS> -e FREESWITCH_ESL_HOST=<FREESWITCH_ESL_HOST> -e FREESWITCH_ESL_PORT=<FREESWITCH_ESL_PORT> -e FREESWITCH_ESL_PASSWORD=<FREESWITCH_ESL_PASSWORD> -e PBX_MCP_ALLOW_WRITE=<PBX_MCP_ALLOW_WRITE> -e PBX_MCP_TIMEOUT_MS=<PBX_MCP_TIMEOUT_MS> -- npx -y [email protected]
claude_desktop_config.json
{
  "mcpServers": {
    "pbx-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "[email protected]"
      ],
      "env": {
        "ASTERISK_AMI_HOST": "<ASTERISK_AMI_HOST>",
        "ASTERISK_AMI_PORT": "<ASTERISK_AMI_PORT>",
        "ASTERISK_AMI_USERNAME": "<ASTERISK_AMI_USERNAME>",
        "ASTERISK_AMI_PASSWORD": "<ASTERISK_AMI_PASSWORD>",
        "ASTERISK_AMI_TLS": "<ASTERISK_AMI_TLS>",
        "FREESWITCH_ESL_HOST": "<FREESWITCH_ESL_HOST>",
        "FREESWITCH_ESL_PORT": "<FREESWITCH_ESL_PORT>",
        "FREESWITCH_ESL_PASSWORD": "<FREESWITCH_ESL_PASSWORD>",
        "PBX_MCP_ALLOW_WRITE": "<PBX_MCP_ALLOW_WRITE>",
        "PBX_MCP_TIMEOUT_MS": "<PBX_MCP_TIMEOUT_MS>"
      }
    }
  }
}
~/.cursor/mcp.json
{
  "mcpServers": {
    "pbx-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "[email protected]"
      ],
      "env": {
        "ASTERISK_AMI_HOST": "<ASTERISK_AMI_HOST>",
        "ASTERISK_AMI_PORT": "<ASTERISK_AMI_PORT>",
        "ASTERISK_AMI_USERNAME": "<ASTERISK_AMI_USERNAME>",
        "ASTERISK_AMI_PASSWORD": "<ASTERISK_AMI_PASSWORD>",
        "ASTERISK_AMI_TLS": "<ASTERISK_AMI_TLS>",
        "FREESWITCH_ESL_HOST": "<FREESWITCH_ESL_HOST>",
        "FREESWITCH_ESL_PORT": "<FREESWITCH_ESL_PORT>",
        "FREESWITCH_ESL_PASSWORD": "<FREESWITCH_ESL_PASSWORD>",
        "PBX_MCP_ALLOW_WRITE": "<PBX_MCP_ALLOW_WRITE>",
        "PBX_MCP_TIMEOUT_MS": "<PBX_MCP_TIMEOUT_MS>"
      }
    }
  }
}
.vscode/mcp.json
{
  "servers": {
    "pbx-mcp": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "[email protected]"
      ],
      "env": {
        "ASTERISK_AMI_HOST": "<ASTERISK_AMI_HOST>",
        "ASTERISK_AMI_PORT": "<ASTERISK_AMI_PORT>",
        "ASTERISK_AMI_USERNAME": "<ASTERISK_AMI_USERNAME>",
        "ASTERISK_AMI_PASSWORD": "<ASTERISK_AMI_PASSWORD>",
        "ASTERISK_AMI_TLS": "<ASTERISK_AMI_TLS>",
        "FREESWITCH_ESL_HOST": "<FREESWITCH_ESL_HOST>",
        "FREESWITCH_ESL_PORT": "<FREESWITCH_ESL_PORT>",
        "FREESWITCH_ESL_PASSWORD": "<FREESWITCH_ESL_PASSWORD>",
        "PBX_MCP_ALLOW_WRITE": "<PBX_MCP_ALLOW_WRITE>",
        "PBX_MCP_TIMEOUT_MS": "<PBX_MCP_TIMEOUT_MS>"
      }
    }
  }
}

Replace the values in angle brackets with your own. Keys stay on your machine; we never see them.

Tools

This server runs locally, so its tools are listed by your MCP client once it starts.

Environment variables

NameDescription
ASTERISK_AMI_HOST
Optional
Hostname or IP of the Asterisk server. Set this to enable the Asterisk tools.
ASTERISK_AMI_PORT
Optional
Asterisk Manager Interface port. Defaults to 5038.
ASTERISK_AMI_USERNAME
Optional
AMI username from manager.conf.
ASTERISK_AMI_PASSWORD
Optional, secret
AMI secret from manager.conf.
ASTERISK_AMI_TLS
Optional
Connect to AMI over TLS. Set true if tlsenable=yes in manager.conf.
FREESWITCH_ESL_HOST
Optional
Hostname or IP of the FreeSWITCH server. Set this to enable the FreeSWITCH tools.
FREESWITCH_ESL_PORT
Optional
FreeSWITCH inbound event socket port. Defaults to 8021.
FREESWITCH_ESL_PASSWORD
Optional, secret
Event socket password from event_socket.conf.xml. Defaults to ClueCon, which you should change.
PBX_MCP_ALLOW_WRITE
Optional
Unlocks call control. When false the server is read-only and the originate and hangup tools are not registered at all. Placing a call on a live trunk costs real money, so leave this off unless you mean it.
PBX_MCP_TIMEOUT_MS
Optional
Per command timeout in milliseconds. Defaults to 10000.

Details

Package[email protected] (NPM, stdio)
First published26 Oct 2026
Last updated26 Oct 2026
Registry nameio.github.ictinnovations/pbx-mcp

More other servers See all

Listing data from the official MCP registry. Status and tools from NestDaddy's daily check. Browse all MCP servers.