PluginBench
MCP Server
Active
MIT

io.github.ictinnovations/ictdialer-mcp MCP Server

io.github.ictinnovations/ictdialer-mcp

Monitor and control ICTDialer outbound auto-dialer campaigns from Claude or Cursor.

What is the io.github.ictinnovations/ictdialer-mcp MCP server?

The ictdialer-mcp server is a Model Context Protocol integration for ICTDialer, the cloud auto-dialer and predictive-dialer platform from ICT Innovations. It allows AI assistants to monitor outbound campaigns, check their status, and review call results, with optional write access to start and stop campaigns.

This server connects Claude or Cursor to your ICTDialer instance, letting you monitor live outbound calling campaigns, view per-call results, and control campaign execution. Read access is always enabled; write operations (starting/stopping campaigns) require explicit opt-in via environment variable to prevent accidental costly calls.

How to install io.github.ictinnovations/ictdialer-mcp

Copy-paste configuration for popular MCP clients.

transport: stdio
Config generated by PluginBench — verify against the source before use.
Environment / auth
  • ICTDIALER_BASE_URL
    required

    Base URL of your ICTDialer server, without the /rest suffix, e.g. https://your-ictdialer.

  • ICTDIALER_USERNAME
    required

    API account username.

  • ICTDIALER_PASSWORD
    required
    secret

    Password for the account.

  • ICTDIALER_MCP_ALLOW_WRITE

    Unlocks starting and stopping campaigns, which begins live outbound calling and can cost money. When false those tools are not registered at all. Leave off unless you mean it.

  • ICTDIALER_TIMEOUT_MS

    Per request timeout in milliseconds. Defaults to 30000.

  • ICTDIALER_TLS_INSECURE

    Skip TLS certificate verification. Only for a self-signed test server.

~/Library/Application Support/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "ictdialer-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "ictdialer-mcp"
      ],
      "env": {
        "ICTDIALER_BASE_URL": "<YOUR_ICTDIALER_BASE_URL>",
        "ICTDIALER_USERNAME": "<YOUR_ICTDIALER_USERNAME>",
        "ICTDIALER_PASSWORD": "<YOUR_ICTDIALER_PASSWORD>",
        "ICTDIALER_MCP_ALLOW_WRITE": "<YOUR_ICTDIALER_MCP_ALLOW_WRITE>",
        "ICTDIALER_TIMEOUT_MS": "<YOUR_ICTDIALER_TIMEOUT_MS>",
        "ICTDIALER_TLS_INSECURE": "<YOUR_ICTDIALER_TLS_INSECURE>"
      }
    }
  }
}

Tools & capabilities

Tools this server exposes to the agent.

  • ictdialer_list_campaigns — List all campaigns with their IDs and names
  • ictdialer_campaign_status — Check the live status of a campaign (running or stopped)
  • ictdialer_campaign_summary — Get campaign totals including answered calls, failed calls, and human vs machine detection results
  • ictdialer_campaign_result — Retrieve per-call results including contact info, response, AMD detection, and DNC status
  • ictdialer_start_campaign — Launch a campaign to begin live outbound calling (write access only)
  • ictdialer_stop_campaign — Stop a running campaign (write access only)

Use cases

  • Monitor active outbound calling campaigns and view real-time call statistics
  • Review detailed per-call results including answered/failed calls and answering machine detection
  • Check campaign status and summary metrics to assess campaign performance
  • Start and stop campaigns programmatically when needed (with write access enabled)
  • Integrate ICTDialer campaign management into AI-assisted workflows

io.github.ictinnovations/ictdialer-mcp MCP server FAQ

What is the ictdialer-mcp server?

It's an MCP server that connects Claude or Cursor to ICTDialer, a cloud auto-dialer platform. You can monitor campaigns, view call results, and optionally control campaign execution.

Is it free to use?

The server itself is MIT licensed and free. You need an active ICTDialer account to connect; ICTDialer is a paid service.

How do I install it in Claude Desktop?

Add the server to your Claude Desktop config with the npx command and set the required environment variables: ICTDIALER_BASE_URL, ICTDIALER_USERNAME, and ICTDIALER_PASSWORD.

What authentication is required?

You need valid ICTDialer API credentials (username and password) and the base URL of your ICTDialer instance. Credentials are passed with each API request.

Can I start campaigns automatically?

Yes, but only if you explicitly set ICTDIALER_MCP_ALLOW_WRITE=true in the environment. By default, the server is read-only to prevent accidental costly calls.

What Node.js version is required?

Node.js 18 or newer is required to run the server.

README (reference)

Source of truth, from the repository.

ictdialer-mcp

A Model Context Protocol server for ICTDialer — the cloud auto-dialer and predictive-dialer platform from ICT Innovations. ICTDialer.com is the hosted edition of ICTContact and runs the same engine, so this server speaks that API.

It lets an AI assistant monitor outbound campaigns — list them, check status, read summaries and per-call results — and, only when you turn writes on, start and stop them.

Install

npx -y ictdialer-mcp      # no install
npm install -g ictdialer-mcp

Requires Node.js 18 or newer.

Configure

VariableRequiredDefault
ICTDIALER_BASE_URLyesServer base URL, without the /rest suffix, e.g. https://your-ictdialer
ICTDIALER_USERNAMEyesAPI account username
ICTDIALER_PASSWORDyesPassword for that account
ICTDIALER_MCP_ALLOW_WRITEnofalseUnlock start/stop campaign (see Safety)
ICTDIALER_TIMEOUT_MSno30000Per-request timeout
ICTDIALER_TLS_INSECUREnofalseSkip TLS verification — self-signed test servers only

Claude Desktop example

{
  "mcpServers": {
    "ictdialer": {
      "command": "npx",
      "args": ["-y", "ictdialer-mcp"],
      "env": {
        "ICTDIALER_BASE_URL": "https://your-ictdialer",
        "ICTDIALER_USERNAME": "admin",
        "ICTDIALER_PASSWORD": "your-password"
      }
    }
  }
}

Tools

Read tools are always available:

ToolWhat it does
ictdialer_list_campaignsList campaigns (id and name)
ictdialer_campaign_statusLive status of a campaign (running, stopped)
ictdialer_campaign_summaryTotals: answered, failed, human vs machine
ictdialer_campaign_resultPer-call results (contact, response, AMD, DNC)

Write tools appear only when ICTDIALER_MCP_ALLOW_WRITE=true:

ToolWhat it does
ictdialer_start_campaignLaunch a campaign — begins live outbound calling
ictdialer_stop_campaignStop a running campaign

Safety

The server is read-only by default. Starting a campaign begins live outbound calling and can cost real money, so ictdialer_start_campaign and ictdialer_stop_campaign are not registered at all unless you set ICTDIALER_MCP_ALLOW_WRITE=true.

How it connects

ICTDialer exposes a form-encoded RPC API at {base}/rest/<Method>. Each call carries the account username and password; the server sends those for you. There is no separate token to provision.

About

Built by Tahir Almas at ICT Innovations — the team behind ICTDialer, ICTContact, ICTBroadcast, ICTFax and ICTPBX. Learn more at ictdialer.com.

MIT licensed. Issues and PRs welcome at github.com/ictinnovations/ictdialer-mcp.

Related MCP servers

Read exams, gradebooks and item analysis; parse papers with AI and publish exams on ICTExam.

16
TypeScript
MIT
View repository →

List, track, and send faxes via ICTFax and ICTCore REST API.

18
TypeScript
MIT
View repository →

Read ICTPBX PBX state—extensions, DIDs, SIP trunks, tenants, and live statistics via MCP.

16
TypeScript
MIT
View repository →

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

3
TypeScript
MIT
View repository →
TBT-Bank MCP logo

T-Bank mobile banking API for Claude, Cursor, and other MCP agents—accounts, cards, transfers, tickets, travel, grocery.

32
Python
MIT
View repository →
ICIcyn Date logo

Icyn Date

Active

Date context for agents: Chinese lunar calendar, solar terms, holidays for 12 regions. Offline.

0
TypeScript
MIT
View repository →