Skip to main content
The OpenCX MCP server lets you manage your customer support platform directly from AI tools like Claude Desktop, Cursor, and VS Code. Your AI assistant can create contacts, manage chat sessions, train your AI agent, and more — all through natural language.

Quick Start

1

Get your API key

Go to your OpenCX Dashboard and navigate to Settings > API Keys > Create API Key. Copy the generated key.
2

Add to your AI tool

Add the following configuration to your AI tool’s MCP settings.
{
  "mcpServers": {
    "opencx": {
      "command": "npx",
      "args": ["-y", "@opencx/mcp"],
      "env": {
        "OPENCX_API_KEY": "your-api-key-here"
      }
    }
  }
}
3

Start using it

Ask your AI assistant something like:
  • “List my recent chat sessions”
  • “Create a new contact with email hello@example.com
  • “Show me customer insights from this week”
  • “Search my knowledge base for refund policy”
  • “Create a training scenario for password reset questions”
  • “Show me the handoff analytics for the last 7 days”

Available Tools

The MCP server exposes the following tools organized by domain:

Contacts

ToolDescription
list_contactsList contacts with cursor pagination
create_contactCreate a new contact (email, phone, name, custom data)
update_contactUpdate contact fields
delete_contactDelete a contact by ID

Chat Sessions

ToolDescription
list_sessionsList sessions with filters (status, channel, date range)
get_sessionGet session details by ID
create_sessionCreate a new chat session for a contact
update_sessionUpdate session status (resolve, close, reopen)
send_messageSend a message in a session (as contact or agent)
get_session_historyGet message history for a session

AI Training

ToolDescription
list_training_scenariosList all custom training scenarios
get_training_scenarioGet a single scenario by ID
create_training_scenarioCreate a scenario (supports type, draft, channels, segments)
update_training_scenarioUpdate an existing scenario
delete_training_scenarioDelete a scenario
toggle_training_draftPublish or unpublish a scenario
move_training_to_directoryMove a scenario into a directory
search_training_knowledgeSemantic search across training and knowledge base

Training Directories

ToolDescription
list_training_directoriesList all directories
get_training_directory_treeGet full directory tree with items
create_training_directoryCreate a new directory
update_training_directoryRename a directory
delete_training_directoryDelete a directory and its contents

AI Actions

ToolDescription
list_actionsList all actions the AI agent can call
get_actionGet an action with its full OpenAPI payload spec
create_actionCreate a new action with typed parameters and request body
update_actionUpdate an existing action
delete_actionDelete a single action
list_action_tagsList all unique tags across actions

Website Crawling

ToolDescription
list_datasourcesList website datasources
create_datasourceCreate a new website datasource to crawl
get_datasourceGet datasource details
start_crawlTrigger a crawl for a datasource
get_crawl_statusGet status of a crawl job
list_crawled_pagesList pages from a crawl

Customer Insights

ToolDescription
list_insightsList customer insights with pagination
get_insightGet a specific insight
resolve_insightMark an insight as resolved
assign_insightAssign an insight to a team
list_insight_categoriesList insight categories

Teams

ToolDescription
list_teamsList all teams
get_teamGet team details
create_teamCreate a new team
update_teamUpdate a team
delete_teamDelete a team
list_team_membersList users in a team
add_team_memberAdd a user to a team
remove_team_memberRemove a user from a team

Email

ToolDescription
send_emailSend AI-generated emails to contacts
list_email_domainsList configured email domains
add_email_domainAdd a custom sending domain
verify_email_domainVerify a domain’s DNS records

AI Phone Agents

ToolDescription
list_voicesList available voices (ID, name, accent, gender, preview)
list_phone_agentsList all phone agents with full details
get_phone_agentGet a phone agent’s complete configuration
create_phone_agentCreate an agent (LiveKit default, voice selection, instructions)
update_phone_agentUpdate agent voice, language, instructions, etc.
delete_phone_agentDelete a phone agent and release its number
make_outbound_callCall a contact or phone number via an AI agent

Outbound Sequences

ToolDescription
create_sequenceCreate an outbound sequence
get_sequenceGet sequence details
update_sequenceUpdate a sequence
start_sequenceStart a sequence
cancel_sequenceCancel a running sequence
add_contacts_to_sequenceEnroll contacts in a sequence

Tags

ToolDescription
list_tagsList all tags in your organization
list_tags_in_useList tags actually applied to sessions
upsert_tagCreate or update a tag
delete_tagRemove a tag
get_auto_tagging_statusCheck if AI auto-tagging is enabled
set_auto_taggingEnable or disable AI auto-tagging

Office Hours

ToolDescription
list_office_hoursList all office hours schedules
get_office_hoursGet a schedule with all its shifts
create_office_hoursCreate a schedule with timezone and shifts
update_office_hoursUpdate a schedule (replaces all shifts)
delete_office_hoursDelete a schedule and its shifts

Organization

ToolDescription
get_organizationGet organization info
update_organizationUpdate organization name

CSAT

ToolDescription
list_csat_scoresList customer satisfaction scores
get_csat_scoreGet a specific CSAT score
get_session_csatGet CSAT score for a session

Handoff Analytics

ToolDescription
get_handoff_analyticsGet AI-to-human handoff analytics (reasons, sentiment, trends)

WhatsApp

ToolDescription
send_whatsapp_templateSend a WhatsApp template message

Configuration

Environment VariableRequiredDefaultDescription
OPENCX_API_KEYYesYour OpenCX API key
OPENCX_BASE_URLNohttps://api.open.cxAPI base URL (for self-hosted instances)

Requirements

  • Node.js 18 or later
  • An OpenCX account with an API key