MCP server for OMICall and OMICRM APIs.
OMICall MCP Server
MCP server for OMICall / OMICRM APIs.
80+ tools across 9 groups: Auth, Call Center, Ticket, Multi-Channel (Zalo, Facebook, Telegram, LiveTalk), Agent, Notifications, Webhook, Auto Call, and AI.
Quick Start
npx omicall-mcp
Setup per Platform
Claude Code
Global (all projects):
# 1. Add MCP server
claude mcp add OMICall-mcp --scope user \
-e OMICALL_USERNAME=admin@company.com \
-e OMICALL_PASSWORD=your-password \
-e OMICALL_DOMAIN=your-company \
-- npx omicall-mcp
# 2. Auto-approve all tools (no permission prompts)
claude permissions allow "mcp__OMICall-mcp__*"
Persist permissions — add to ~/.claude/settings.json:
{
"permissions": {
"allow": [
"mcp__OMICall-mcp__*"
]
}
}
Per-project — add to .mcp.json:
{
"mcpServers": {
"omicall": {
"command": "npx",
"args": ["omicall-mcp"],
"env": {
"OMICALL_USERNAME": "admin@company.com",
"OMICALL_PASSWORD": "your-password",
"OMICALL_DOMAIN": "your-company"
}
}
}
}
Claude Desktop
Add to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):
{
"mcpServers": {
"omicall": {
"command": "npx",
"args": ["omicall-mcp"],
"env": {
"OMICALL_USERNAME": "admin@company.com",
"OMICALL_PASSWORD": "your-password",
"OMICALL_DOMAIN": "your-company"
}
}
}
}
Cursor
Settings > MCP Servers > Add:
{
"omicall": {
"command": "npx",
"args": ["omicall-mcp"],
"env": {
"OMICALL_USERNAME": "admin@company.com",
"OMICALL_PASSWORD": "your-password",
"OMICALL_DOMAIN": "your-company"
}
}
}
Windsurf
Add to ~/.codeium/windsurf/mcp_config.json:
{
"mcpServers": {
"omicall": {
"command": "npx",
"args": ["omicall-mcp"],
"env": {
"OMICALL_USERNAME": "admin@company.com",
"OMICALL_PASSWORD": "your-password",
"OMICALL_DOMAIN": "your-company"
}
}
}
}
VS Code (Copilot / Cline)
Add to .vscode/mcp.json:
{
"servers": {
"omicall": {
"command": "npx",
"args": ["omicall-mcp"],
"env": {
"OMICALL_USERNAME": "admin@company.com",
"OMICALL_PASSWORD": "your-password",
"OMICALL_DOMAIN": "your-company"
}
}
}
}
Tools (80+)
Auth
| Tool | Description |
|---|---|
login_omicall_mcp |
Authenticate (auto pre_auth → tenant select → login) |
select_tenant |
Select tenant if multiple |
logout |
Logout and clear tokens |
get_balance |
Account balance |
get_service_package |
Enabled modules & usage limits |
Call Center `switchboard`
| Tool | Description |
|---|---|
search_calls |
Search call history with filters |
get_call_detail |
Call details by transaction ID |
update_call |
Add tags/notes |
evaluate_call / list_eval_criteria |
Call evaluation |
click_to_call |
Initiate outbound call |
list_extensions / get_extension / update_extension / update_extension_status |
PBX extensions |
list_hotlines / get_hotline / update_hotline |
Hotline management |
list_groups / create_group / update_group / delete_group |
Ring groups |
add_group_members / remove_group_members |
Group members |
list_ivr / create_ivr / update_ivr / delete_ivr |
IVR menus |
list_scripts / create_script / update_script / delete_script |
Call scripts |
list_audio / generate_tts_audio / delete_audio |
Audio files |
Ticket `ticket`
| Tool | Description |
|---|---|
search_tickets |
Search with date range, keyword |
get_ticket / create_ticket / update_ticket / delete_ticket |
CRUD |
update_ticket_status |
Status change |
| `create_ti |
Tools (6)
login_omicall_mcpAuthenticate with OMICall services.search_callsSearch call history with filters.get_call_detailGet call details by transaction ID.click_to_callInitiate outbound call.search_ticketsSearch tickets with date range and keyword.create_ticketCreate a new support ticket.Environment Variables
OMICALL_USERNAMErequiredThe username for OMICall authenticationOMICALL_PASSWORDrequiredThe password for OMICall authenticationOMICALL_DOMAINrequiredThe company domain for OMICallConfiguration
{"mcpServers": {"omicall": {"command": "npx", "args": ["omicall-mcp"], "env": {"OMICALL_USERNAME": "admin@company.com", "OMICALL_PASSWORD": "your-password", "OMICALL_DOMAIN": "your-company"}}}}