io.github.ictinnovations/ictcontact-mcp

Official registry Other

Monitor ICTContact / ICTDialer outbound campaigns, and start and stop them when writes are on.

Install

Add this to your client's MCP configuration (Claude Desktop: claude_desktop_config.json; Cursor: .cursor/mcp.json; VS Code and others use the same "mcpServers" shape).

NPM package ictcontact-mcp
Claude Code
claude mcp add ictcontact-mcp -e 'ICTCONTACT_BASE_URL=<ICTCONTACT_BASE_URL>' -e 'ICTCONTACT_USERNAME=<ICTCONTACT_USERNAME>' -e 'ICTCONTACT_PASSWORD=<your ictcontact_password>' -e 'ICTCONTACT_MCP_ALLOW_WRITE=false' -e 'ICTCONTACT_TIMEOUT_MS=30000' -e 'ICTCONTACT_TLS_INSECURE=false' -- npx -y ictcontact-mcp@0.1.1
JSON configuration (Claude Desktop, Cursor, VS Code)
{
    "mcpServers": {
        "ictcontact-mcp": {
            "command": "npx",
            "args": [
                "-y",
                "ictcontact-mcp@0.1.1"
            ],
            "env": {
                "ICTCONTACT_BASE_URL": "<ICTCONTACT_BASE_URL>",
                "ICTCONTACT_USERNAME": "<ICTCONTACT_USERNAME>",
                "ICTCONTACT_PASSWORD": "<your ictcontact_password>",
                "ICTCONTACT_MCP_ALLOW_WRITE": "false",
                "ICTCONTACT_TIMEOUT_MS": "30000",
                "ICTCONTACT_TLS_INSECURE": "false"
            }
        }
    }
}

Environment variables

  • ICTCONTACT_BASE_URL required Base URL of your ICTContact / ICTDialer server, without the /rest suffix, e.g. https://your-ictcontact.
  • ICTCONTACT_USERNAME required API account username.
  • ICTCONTACT_PASSWORD required secret Password for the account.
  • ICTCONTACT_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.
  • ICTCONTACT_TIMEOUT_MS Per request timeout in milliseconds. Defaults to 30000.
  • ICTCONTACT_TLS_INSECURE Skip TLS certificate verification. Only for a self-signed test server.

Documentation

From the project's README on GitHub, refreshed weekly. Links open on GitHub.

Contents
  1. ictcontact-mcp
  2. Install
  3. Configure
  4. Tools
  5. Safety
  6. How it connects
  7. About

ictcontact-mcp

A Model Context Protocol server for ICTContact and its hosted edition ICTDialer.com — the same contact-center engine from ICT Innovations.

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 ictcontact-mcp      # no install
npm install -g ictcontact-mcp

Requires Node.js 18 or newer.

Configure

VariableRequiredDefault
ICTCONTACT_BASE_URLyesServer base URL, without the /rest suffix, e.g. https://your-ictcontact
ICTCONTACT_USERNAMEyesAPI account username
ICTCONTACT_PASSWORDyesPassword for that account
ICTCONTACT_MCP_ALLOW_WRITEnofalseUnlock start/stop campaign (see Safety)
ICTCONTACT_TIMEOUT_MSno30000Per-request timeout
ICTCONTACT_TLS_INSECUREnofalseSkip TLS verification — self-signed test servers only
Claude Desktop example
{
  "mcpServers": {
    "ictcontact": {
      "command": "npx",
      "args": ["-y", "ictcontact-mcp"],
      "env": {
        "ICTCONTACT_BASE_URL": "https://your-ictcontact",
        "ICTCONTACT_USERNAME": "admin",
        "ICTCONTACT_PASSWORD": "your-password"
      }
    }
  }
}

Tools

Read tools are always available:

ToolWhat it does
ictcontact_list_campaignsList campaigns (id and name)
ictcontact_campaign_statusLive status of a campaign (running, stopped)
ictcontact_campaign_summaryTotals: answered, failed, human vs machine
ictcontact_campaign_resultPer-call results (contact, response, AMD, DNC)

Write tools appear only when ICTCONTACT_MCP_ALLOW_WRITE=true:

ToolWhat it does
ictcontact_start_campaignLaunch a campaign — begins live outbound calling
ictcontact_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 ictcontact_start_campaign and ictcontact_stop_campaign are not registered at all unless you set ICTCONTACT_MCP_ALLOW_WRITE=true.

How it connects

ICTContact and ICTDialer expose 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 ICTContact, ICTDialer, ICTBroadcast, ICTFax and ICTPBX. Learn more at ictcontact.com and ictdialer.com.

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

Frequently asked questions

What is io.github.ictinnovations/ictcontact-mcp?

Monitor ICTContact / ICTDialer outbound campaigns, and start and stop them when writes are on.

How do I install io.github.ictinnovations/ictcontact-mcp?

It runs on your machine. In Claude Code: claude mcp add ictcontact-mcp -e 'ICTCONTACT_BASE_URL=<ICTCONTACT_BASE_URL>' -e 'ICTCONTACT_USERNAME=<ICTCONTACT_USERNAME>' -e 'ICTCONTACT_PASSWORD=<your ictcontact_password>' -e 'ICTCONTACT_MCP_ALLOW_WRITE=false' -e 'ICTCONTACT_TIMEOUT_MS=30000' -e 'ICTCONTACT_TLS_INSECURE=false' -- npx -y ictcontact-mcp@0.1.1. For other clients, paste the JSON configuration from this page into their MCP settings.

Does io.github.ictinnovations/ictcontact-mcp need an API key?

Yes. It expects ICTCONTACT_BASE_URL, ICTCONTACT_USERNAME, ICTCONTACT_PASSWORD, which you set in its configuration.

Is io.github.ictinnovations/ictcontact-mcp open source?

Yes. Its code is on GitHub under the MIT license.

Who maintains io.github.ictinnovations/ictcontact-mcp?

It is published by ictinnovations. AI.tn lists it but does not maintain or endorse it.

From the official MCP Registry. Listing is not an endorsement: review a server's code and permissions before giving it access to your data.