Skip to main content
Glama
CallRemind MCP Server

CallRemind MCP Server

Official
by callremind

CallRemind MCP Server

Model Context Protocol (MCP) server for CallRemind's AI voice calling. Let any AI agent (Claude, ChatGPT, Cursor, Claude Code, Codex, opencode…) place automated voice calls, schedule reminders, and manage your agents, leads, voice clones, webhooks, and CEMAS emergency notifications — in English / Bahasa Malaysia.

There are two ways to use it:

Path

Who it's for

Hosted endpoint — https://mcp.callremind.my/mcp

No setup. Add the remote URL to your client.

npm package / self-host — run it yourself

Full control; run stdio locally or HTTP/SSE.


Table of contents


Related MCP server: mcp-openapi

Hosted endpoint (hosting our server)

No install needed — add the remote MCP server to any client. Sign in with your CallRemind account (email one-time code, Google, or GitHub).

https://mcp.callremind.my/mcp

Connect

  • Claude (desktop/app): Settings → Connectors → Add custom connector → paste the URL → sign in.

  • ChatGPT: Settings → Apps & Connectors → Advanced → Developer mode → add MCP connector → same URL.

  • Cursor: add https://mcp.callremind.my/mcp as a remote MCP server → the client walks you through OAuth.

  • Any remote MCP client: add the URL above (Streamable HTTP transport).

Claude Code plugin

One-command install from our marketplace (adds the MCP server + a usage skill):

/plugin marketplace add callremind/callremind-claude-marketplace
/plugin install callremind@callremind

You can also install the plugin from the community marketplace: /plugin marketplace add anthropics/claude-plugins-community then callremind@claude-community.

Auth

  • New accounts are created automatically and get RM2 free credit.

  • OAuth consent + /.well-known/oauth-* discovery are served by the endpoint.

  • Live setup/onboarding: https://mcp.callremind.my/connect


Self-host (npm package)

A. npm install + run

npm install -g callremind-mcp

# stdio (local clients)
CALLREMIND_API_KEY=your_key callremind-mcp

# HTTP/SSE (remote clients)
CALLREMIND_API_KEY=your_key CALLREMIND_MCP_PORT=8921 callremind-mcp index-sse.js

B. From source

git clone git@github.com:callremind/callremind-mcp.git
cd callremind-mcp
npm install
cp .env.example .env      # set CALLREMIND_API_URL + CALLREMIND_API_KEY

npm start                  # stdio
npm run start:sse          # HTTP/SSE on http://0.0.0.0:8921/mcp

C. Docker

docker build -t callremind-mcp .

# stdio
docker run --rm -e CALLREMIND_API_KEY=your_key callremind-mcp

# HTTP/SSE
docker run --rm -p 8921:8921 -e CALLREMIND_API_KEY=your_key callremind-mcp node index-sse.js

Configuration / Settings

Env var

Default

Description

CALLREMIND_API_URL

https://api.callremind.my/v1

CallRemind REST API base

CALLREMIND_API_KEY

(none)

Your x-api-key (required)

CALLREMIND_MCP_PORT

8921

HTTP/SSE port (index-sse.js only)

CALLREMIND_MCP_HOST

0.0.0.0

HTTP/SSE bind host

CALLREMIND_MCP_ENDPOINT

/mcp

HTTP/SSE MCP endpoint path

The hosted endpoint (mcp.callremind.my/mcp) manages these on our side — you only need CALLREMIND_API_KEY when self-hosting.


Client setup (self-host)

Claude Desktop

Edit claude_desktop_config.json (Claude Desktop → Settings → Developer → Edit Config):

{
  "mcpServers": {
    "callremind": {
      "command": "npx",
      "args": ["-y", "callremind-mcp"],
      "env": { "CALLREMIND_API_KEY": "your_key" }
    }
  }
}

Claude Code

claude mcp add callremind -- npx -y callremind-mcp
claude mcp add callremind -e CALLREMIND_API_KEY=your_key -- npx -y callremind-mcp

Codex (OpenAI CLI)

codex mcp add callremind -- npx -y callremind-mcp
CALLREMIND_API_KEY=your_key codex

ChatGPT (remote)

Use the hosted endpoint: https://mcp.callremind.my/mcp. ChatGPT discovers OAuth via /.well-known/oauth-protected-resource and signs you in.

opencode

opencode.json:

{
  "mcp": {
    "callremind": {
      "type": "local",
      "command": ["npx", "-y", "callremind-mcp"],
      "environment": { "CALLREMIND_API_KEY": "your_key" },
      "enabled": true
    }
  }
}

Cursor

Cursor → Settings → MCP → Add server:

{
  "mcpServers": {
    "callremind": {
      "command": "npx",
      "args": ["-y", "callremind-mcp"],
      "env": { "CALLREMIND_API_KEY": "your_key" }
    }
  }
}

Generic HTTP/SSE

Transport: Streamable HTTP
URL:       http://<host>:8921/mcp

Tools

Tool

Endpoint

Purpose

quickCall

POST /v1/calls/quick-call

One-way call, only phone + message (Kokoro)

quickCallWithEdge

POST /v1/calls/quick-call-with-edge

One-way call using Edge TTS (explicit backup; Kokoro is the MCP default)

makeInstantKokoroCall

POST /v1/calls/instant-kokoro-call

Immediate one-way call (Kokoro)

getCemasConfig / saveCemasConfig

/v1/cemas

CEMAS config + voice prefs

listEdgeVoices / previewEdgeVoice

/v1/tts/edge-*

Edge TTS voices / preview

listVoices / kokoroPreview

/v1/tts/voices, /v1/tts/kokoro

All voices / Kokoro preview

listTtsProviders

/v1/tts/providers

List TTS providers

generateTts

/v1/tts/generate

Synthesize audio (openai/elevenlabs/minimax/qwen/kokoro/edge)

validateTextSafety

/v1/validate-text-safety

Profanity check (EN/MS/中文/Tamil)

getProviderInfo

/v1/provider/numbers

Your DIDs / provider

listVoiceClones / createVoiceClone

/v1/voice-clones

Manage voice clones

listAgents / createAgent / updateAgent

/v1/agents

Manage AI agents

listLeads / createLead

/v1/contacts

Manage contacts/leads

listScheduledCalls / createScheduledCall

/v1/scheduled-calls

Schedule calls

listCallLogs / getReports

/v1/call-logs, /v1/reports

History / analytics

getProfile / updateProfile

/v1/profile

Profile management

listWebhookConfigurations / upsertWebhookConfiguration

/v1/webhooks/...

Webhooks

getSkillGuide

/v1/auth/skill

Onboarding guide

createNewUser / validateNewUser / loginUser / logoutUser / requestOtp / validateOtp

/v1/auth/...

Account & sign-in helpers


Testing

npm test   # node test-api.js  (hits /v1/profile with your key)

  • Repo: https://github.com/callremind/callremind-mcp

  • npm: https://www.npmjs.com/package/callremind-mcp

  • REST API: https://api.callremind.my/v1

  • Hosted MCP: https://mcp.callremind.my/mcp

  • Connect/onboarding: https://mcp.callremind.my/connect

Available Tools

36 tools
createAgentC

Create an AI agent. Required: name, voice, agent_start_message.

Inputs: name (required), goal, voice, owner_email, +1 more.

createLeadB

Add a contact / lead. Extra columns go into extra_metadata_fields.

Inputs: name (required), phone (required), tag, goal, +3 more.

createNewUserA

Request an account-activation code by email. Does NOT create the account; emails the user an OTP + code ref (call validateNewUser to finish).

Inputs: email (required), name, phone.

createScheduledCallB

Schedule an outbound call. Set status LIVE to activate for the scheduler.

Inputs: phone (required), datetime (required), goal, name, +2 more.

createVoiceCloneA

Upload training audio URLs and trigger voice cloning. Returns the clone record with training_status.

Inputs: voice_clone_training_urls (required), provider, transcript, owner_email, +1 more.

generateTtsB

Synthesize TTS audio directly (POST /v1/tts/generate). Provider: openai | elevenlabs | minimax | qwen_flash | qwen_plus | kokoro | edge. Returns a playable audio file URL.

Inputs: text (required), style, voice, format, +2 more.

getCemasConfigA

Get the authenticated user's CEMAS config: namespace, destination phone(s), active flag, and Edge TTS voice/prosody preferences.

Inputs: owner_email.

getProfileA

Fetch the authenticated user's profile (name, email, balance, preferences).

Inputs: no named parameters.

getProviderInfoA

Get the user's available DID / caller-ID numbers and current SIP/VoIP provider.

Inputs: no named parameters.

getReportsC

Get aggregate call reports / analytics.

Inputs: owner_email.

getSkillGuideA

Return the CallRemind MCP onboarding guide (skill.md): the journey from signing up to making quick calls, scheduling, agents, and webhooks.

Inputs: no named parameters.

kokoroPreviewA

Generate a short voice clip using the Kokoro TTS engine and return the audio (raw or WAV depending on the call). Use to pick a voice.

Inputs: text (required), speed, voice.

listAgentsC

List AI agents for the authenticated user.

Inputs: limit, offset, owner_email.

listCallLogsC

List past outbound call records.

Inputs: limit, offset, owner_email.

listEdgeVoicesA

List Microsoft Edge TTS voices available for CEMAS / instant calls. Filter by language (en, ms, zh...), gender, or substring.

Inputs: q, lang, gender.

listLeadsC

List the authenticated user's contacts / leads.

Inputs: limit, offset, owner_email.

listScheduledCallsC

List planned outbound reminder calls.

Inputs: limit, offset, owner_email.

listTtsProvidersA

List available TTS providers and their static voices (OpenAI, ElevenLabs, MiniMax, Qwen, Kokoro, Edge).

Inputs: no named parameters.

listVoiceClonesA

List all voice clones owned by the authenticated user.

Inputs: owner_email.

listVoicesA

List available TTS voices across providers. Returns { edge: [...], kokoro: [...] }. Use a voice id from either provider.

Inputs: no named parameters.

listWebhookConfigurationsA

List webhook configurations for an agent (on_call_start / on_call_end). Secrets are redacted.

Inputs: agent_id (required), owner_email.

loginUserA

Sign in with email + password and get the app API key + session. Use logoutUser to sign out.

Inputs: email (required), password (required).

logoutUserA

Sign out the current session (stateless). Clears the caller's stored key.

Inputs: no named parameters.

makeInstantCallA

Trigger an immediate outbound AI voice call via /v1/calls/instant. Use an existing agent (agent_id), a template (message), or a fully custom prompt/voice.

Inputs: phone (required), voice, message, agent_id, +6 more.

makeInstantKokoroCallA

Place an immediate one-way outbound call always voiced by Kokoro TTS via /v1/calls/instant-kokoro-call. Pre-generates and plays a per-recipient Kokoro clip.

Inputs: phone (required), message (required), voice, from_number.

previewEdgeVoiceA

Synthesize a short preview clip with an Edge TTS voice. Returns MP3 bytes (base64 in the response).

Inputs: text (required), voice (required), rate, pitch, +1 more.

quickCallC

Place an immediate one-way outbound call voiced by Kokoro TTS (pre-generated). Only a phone + message are needed. Mirrors the MCP quickCall tool.

Inputs: phone (required), message (required), voice, from_number.

quickCallWithEdgeA

Place an immediate one-way outbound call voiced by Edge TTS (pre-generated). Backup of quickCall that always uses Edge TTS.

Inputs: phone (required), message (required), voice, from_number.

requestOtpA

Request a fresh email one-time sign-in code for the account (POST /auth/connect-request). Sends a 6-digit code to the account email; use validateOtp next. Example: requestOtp({}) -> sends a 6-digit code to your email.

Inputs: email.

saveCemasConfigA

Save the user's CEMAS destination phone(s), active flag, and voice prefs. voice_provider selects Edge TTS (default) or Kokoro.

Inputs: destination_phone_number (required), edge_rate, is_active, edge_pitch, +4 more.

updateAgentC

Update fields on an existing AI agent.

Inputs: id (required), goal, name, voice, +2 more.

updateProfileC

Update profile fields. max_talk_time_ms is the max call duration in milliseconds (90000 = 90s).

Inputs: name, max_talk_time_ms, profile_image_url, default_sip_number.

upsertWebhookConfigurationC

Create or update a webhook configuration for an agent + event.

Inputs: agent_id (required), event_name (required), webhook_url (required), is_enabled, +2 more.

validateNewUserA

Validate the emailed OTP + code ref and fully create the account. Optionally set a password so the user can log in. Returns the new API key.

Inputs: otp (required), ref (required), password.

validateOtpA

Validate an email one-time code for the signed-in account and return the account's API key (POST /auth/connect-verify). Use after requestOtp. Example: validateOtp({ "otp": "123456" }) -> { email, api_key }

Inputs: otp (required), email.

validateTextSafetyA

Check a message for profanity / swear words (English, Bahasa Malaysia, Mandarin, Tamil) before it is spoken (POST /v1/validate-text-safety). Returns { safe, found, languages }.

Inputs: text (required).

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    B3/5.0

    Scored across 36 tools

    Disambiguation2/5

    Multiple call-initiation tools—makeInstantCall, quickCall, quickCallWithEdge, and makeInstantKokoroCall—overlap heavily, with quickCall and makeInstantKokoroCall appearing nearly identical. Voice-discovery tools also overlap: listVoices, listEdgeVoices, and listTtsProviders all serve similar discovery purposes.

    Naming Consistency3/5

    Most tools follow a camelCase action+Resource pattern like listAgents, createAgent, and updateAgent, but there are notable exceptions such as quickCall, quickCallWithEdge, and kokoroPreview. The mix of action-first, object-first, and descriptor-based names makes the convention somewhat inconsistent but still readable.

    Tool Count2/5

    With 36 tools, the server exceeds the 25+ threshold and feels heavy for what is ultimately a focused reminder-call platform. The breadth is understandable given auth, TTS, calls, agents, leads, scheduling, analytics, and webhooks, but many tools could be consolidated.

    Completeness3/5

    Core workflows are covered: auth, profile, contacts, agents, scheduling, call logs, reports, TTS, voice clones, and webhooks. However, many resources have create/list but no update/delete—leads, scheduled calls, voice clones, and webhook configurations lack full lifecycle operations—and there is no cancel-scheduled-call or single-call detail tool.

    Maintenance

    ActivityMaintained
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      A
      quality
      C
      maintenance
      Enables AI agents to schedule and manage reminders across platforms like email, Slack, Discord, and webhooks. It provides tools to create, list, update, and cancel notifications to automate task reminders and agent wake-ups.
      4
      10 npm
      1
      MIT
    • A
      license
      Not graded
      quality
      C
      maintenance
      Enables AI agents to discover, search, and call any REST API described by an OpenAPI or Swagger document. Supports multiple API endpoints with authentication and parameter handling.
      27 npm
      MIT
    • A
      license
      A
      quality
      B
      maintenance
      Build AI voice agents that answer and place real phone calls over your own carrier, on any voice engine (Gemini Live, Sarvam, OpenAI, ElevenLabs and more) with one API key. Create agents, connect SIP trunks and numbers, run call campaigns, and read transcripts and costs from Claude Code, Codex, Cursor or any MCP client.
      56
      MIT