dSIPRouter MCP Server

dSIPRouter MCP Server

Enables AI assistants to manage dSIPRouter operations such as endpoint groups, carrier groups, inbound mappings, and call data retrieval through natural language.

Category
Visit Server

README

dSIPRouter MCP Server

This repository contains the dSIPRouter MCP Server, which provides an interface to interact with dSIPRouter from conversational AI chatbots such as Claude and ChatGPT.

Overview

The MCP (Model Context Protocol) server allows AI assistants to perform various operations on dSIPRouter, including managing endpoint groups, carrier groups, inbound mappings, and retrieving call data.

Example Questions

Here are some example questions you can ask the AI assistant when using this MCP server:

  • List the endpoint groups of dSIPRouter

  • List the carrier groups of dSIPRouter

  • Create a CSV file with all of the calls that happened yesterday

  • List all inbound numbers

    Here's a screenshoot from Claude when asking to "list all inbound numbers"

    alt text

Requirements

Setup for Claude Desktop

Using Python on Host Machine

Validate that the MCP Server is Working

  1. Install dependencies:

    pip install -r requirements.txt
    
  2. Set environment variables:

    • DSIP_BASE_URL: The base URL of your dSIPRouter instance
    • DSIP_TOKEN: Your dSIPRouter API token
    • DSIP_VERIFY_SSL: Whether to verify SSL certificates (default: true)
    • DSIPMCP_CERT: File location of the certificate
    • DSIPMCP_KEY: File location of the key
    • DSIPMCP_CA: File location of the CA
    • DSIPMCP_PORT: Define the port being used. The default is 443
  3. Run the server:

    python main.py --http
    

    Note: You will not see any output if it's running successfully

  4. Stop the Server:

    Hit Ctrl-C twice to kill the server

  5. Configure the MCP Server for one or more conversation AI chatbots per the sections below.

Configure Claude

Running the MCP Server on your local system

On MacOS
  1. Open Claude Configuration File:
nano ~/Library/Application\ Support/Claude/claude_desktop_config.json
  1. Add the following:
{
  "mcpServers": {
    "dsiprouter": {
      "command": "python",
      "args": ["/full/path/to/main.py"],
      "env": {
        "DSIP_BASE_URL": "https://your-dsiprouter-server:5000",
        "DSIP_TOKEN": "your-dsiprouter-api-token",
        "DSIP_VERIFY_SSL": "true"
      }
    }
  }
}
  1. Save the file

  2. Start Claude

Using Python using Virtual Environment (venv)

Validate that the MCP Server is Working

  1. Install dependencies:

    python -m venv .venv
    source ./.venv/bin/activate
    pip install -r requirements.txt
    
  2. Set environment variables:

    • DSIP_BASE_URL: The base URL of your dSIPRouter instance
    • DSIP_TOKEN: Your dSIPRouter API token
    • DSIP_VERIFY_SSL: Whether to verify SSL certificates (default: true)

    For example,

    export DSIP_BASE_URL=https://your url:5000
    export DSIP_TOKEN=your token
    export DSIP_VERIFY_SSL=true
    
  3. Run the server:

    python main.py
    

    Note: You will not see any output if it's running successfully

  4. Stop the Server:

    Hit Ctrl-C twice to kill the server

  5. Configure the MCP Server for one or more conversation AI chatbots per the sections below.

Configure Claude

On MacOS
  1. Open Claude Configuration File:
nano ~/Library/Application\ Support/Claude/claude_desktop_config.json
  1. Add the following:
{
  "mcpServers": {
    "dsiprouter": {
      "command": "<your path>/dsiprouter-mcp-server/.venv/bin/python3",
      "args": ["<your path>/code/dsiprouter-mcp-server/main.py"],
      "env": {
        "DSIP_BASE_URL": "https://your-dsiprouter-server:5000",
        "DSIP_TOKEN": "your-dsiprouter-api-token",
        "DSIP_VERIFY_SSL": "true"
      }
    }
  }
}
  1. Save the file

  2. Start Claude

Setup for ChatGPT

Using Python on Host Machine

Start the MCP Server in HTTP Mode

  1. Install dependencies:

    pip install -r requirements.txt
    
  2. Set environment variables:

    • DSIPMCP_CERT: File location of the certificate
    • DSIPMCP_KEY: File location of the key
    • DSIPMCP_CA: File location of the CA. Not required
    • DSIPMCP_PORT: Define the port being used. The default is 443
    • DSIP_BASE_URL: The base URL of your dSIPRouter instance
    • DSIP_TOKEN: Your dSIPRouter API token
    • DSIP_VERIFY_SSL: Whether to verify SSL certificates (default: true)

For example:

DSIPMCP_CERT=/etc/letsencrypt/live/demo-mcp.dsiprouter.net/fullchain.pem
DSIPMCP_KEY=/etc/letsencrypt/live/demo-mcp.dsiprouter.net/privkey.pem
DSIP_BASE_URL=https://demo.dsiprouter.net:5000
DSIP_TOKEN=<dsiprouter token>
  1. Run the server:
    python main.py --http
    

If you are running this on a machine without external ip address then set the DSIPMCP_PORT=8000 and restart the MCP Server.

  1. Expose the local server using ngrok

Open up another terminal, download ngrok, register with ngrok and start ngrok

ngrok http 8000

Setting up ChatGPT to use the dSIPRouter MCP Server

  1. Login to ChatGPT
  2. Click Settings, then Apps
  3. Enable Developer Mode
  4. Click Create App
  5. Enter in the basic info and for the MCP Server URL enter the ngrok external ip address and add /mcp to the end of it. Note, select No-Authentication. The screen should look like this

alt text

  1. Click Create
  2. Start a new chat and ask it a question like "list all carrier groups in dsiprouter". You will get a response like this

alt text

Other Info

dSIPRouter API Token

The dSIPRouter API Token is displayed after the initial install of dSIPRouter. Their is no way to obtain your token if you didn't store it. You can reset your dSIPRouter API Token by running this command on your dSIPRouter Server.

dsiprouter setcredentials -ac YOUR_TOKEN

No valid dSIPRouter SSL Cert

If you don't have a valid SSL certificate then set DSIP_VERIFY_SSL as false

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured