Prototype · Preview: every server in the official registry, synced every 30 minutes. Reviews and accounts come in a later step.
PopNx MCPMCP servers for people who use AI · explained in plain words

Better Call Claude

by sns45version 3.1.3i★ –iRuns on your computer
Registry nameio.github.sns45/better-call-claude

Install

Overview

Description from the maker (original English)

Voice Calls, SMS, and WhatsApp for Claude Code with cross-channel context sharing.

PopNx MCP’s three pillars

These three are never merged into one score: opinions, measurements and popularity are different things.

What you can do with it

We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.

  • Connection: Runs on your computer
  • Transport: stdio
  • Category: Chat & email
  • You need to fill in: BETTERCALLCLAUDE_PHONE_PROVIDER, BETTERCALLCLAUDE_PHONE_NUMBER, BETTERCALLCLAUDE_PHONE_ACCOUNT_SID, BETTERCALLCLAUDE_PHONE_AUTH_TOKEN, BETTERCALLCLAUDE_USER_PHONE_NUMBER, BETTERCALLCLAUDE_OPENAI_API_KEY

Install

Pick the AI app you use, then copy the settings.

Before you install

  • Basic checks: 1 of 1 passed
  • Runs on your computer with your user’s permissions (files, network, apps).
  • You fill in yourself: BETTERCALLCLAUDE_PHONE_PROVIDER, BETTERCALLCLAUDE_PHONE_NUMBER, BETTERCALLCLAUDE_PHONE_ACCOUNT_SID, BETTERCALLCLAUDE_PHONE_AUTH_TOKEN, BETTERCALLCLAUDE_USER_PHONE_NUMBER, BETTERCALLCLAUDE_OPENAI_API_KEY, BETTERCALLCLAUDE_WHATSAPP_NUMBER, BETTERCALLCLAUDE_PORT, TAILSCALE_HOSTNAME, BETTERCALLCLAUDE_WHATSAPP_PROVIDER, BETTERCALLCLAUDE_BAILEYS_AUTH_DIR, BETTERCALLCLAUDE_WHATSAPP_CHAT_HISTORY_SIZE

Values marked secret are keys to your account. Never share them or paste them into a chat.

You need

  • npmNode.js installed (for the npx command)

Which app do you use?

Pick your app above. We remember it, so next time the button says “Install in …”.

Open Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json

{
  "mcpServers": {
    "better-call-claude": {
      "command": "npx",
      "args": [
        "-y",
        "better-call-claude"
      ],
      "env": {
        "BETTERCALLCLAUDE_PHONE_PROVIDER": "your-value",
        "BETTERCALLCLAUDE_PHONE_NUMBER": "your-value",
        "BETTERCALLCLAUDE_PHONE_ACCOUNT_SID": "your-value",
        "BETTERCALLCLAUDE_PHONE_AUTH_TOKEN": "your-value",
        "BETTERCALLCLAUDE_USER_PHONE_NUMBER": "your-value",
        "BETTERCALLCLAUDE_OPENAI_API_KEY": "your-value",
        "BETTERCALLCLAUDE_WHATSAPP_NUMBER": "your-value",
        "BETTERCALLCLAUDE_PORT": "your-value",
        "TAILSCALE_HOSTNAME": "your-value",
        "BETTERCALLCLAUDE_WHATSAPP_PROVIDER": "your-value",
        "BETTERCALLCLAUDE_BAILEYS_AUTH_DIR": "your-value",
        "BETTERCALLCLAUDE_WHATSAPP_CHAT_HISTORY_SIZE": "your-value"
      }
    }
  }
}

Run this in your terminal

claude mcp add better-call-claude --env BETTERCALLCLAUDE_PHONE_PROVIDER=your-value --env BETTERCALLCLAUDE_PHONE_NUMBER=your-value --env BETTERCALLCLAUDE_PHONE_ACCOUNT_SID=your-value --env BETTERCALLCLAUDE_PHONE_AUTH_TOKEN=your-value --env BETTERCALLCLAUDE_USER_PHONE_NUMBER=your-value --env BETTERCALLCLAUDE_OPENAI_API_KEY=your-value --env BETTERCALLCLAUDE_WHATSAPP_NUMBER=your-value --env BETTERCALLCLAUDE_PORT=your-value --env TAILSCALE_HOSTNAME=your-value --env BETTERCALLCLAUDE_WHATSAPP_PROVIDER=your-value --env BETTERCALLCLAUDE_BAILEYS_AUTH_DIR=your-value --env BETTERCALLCLAUDE_WHATSAPP_CHAT_HISTORY_SIZE=your-value -- npx -y better-call-claude

Fill in the empty values before running it.

Open in Cursor

Or copy the settings yourself

Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json

{
  "mcpServers": {
    "better-call-claude": {
      "command": "npx",
      "args": [
        "-y",
        "better-call-claude"
      ],
      "env": {
        "BETTERCALLCLAUDE_PHONE_PROVIDER": "your-value",
        "BETTERCALLCLAUDE_PHONE_NUMBER": "your-value",
        "BETTERCALLCLAUDE_PHONE_ACCOUNT_SID": "your-value",
        "BETTERCALLCLAUDE_PHONE_AUTH_TOKEN": "your-value",
        "BETTERCALLCLAUDE_USER_PHONE_NUMBER": "your-value",
        "BETTERCALLCLAUDE_OPENAI_API_KEY": "your-value",
        "BETTERCALLCLAUDE_WHATSAPP_NUMBER": "your-value",
        "BETTERCALLCLAUDE_PORT": "your-value",
        "TAILSCALE_HOSTNAME": "your-value",
        "BETTERCALLCLAUDE_WHATSAPP_PROVIDER": "your-value",
        "BETTERCALLCLAUDE_BAILEYS_AUTH_DIR": "your-value",
        "BETTERCALLCLAUDE_WHATSAPP_CHAT_HISTORY_SIZE": "your-value"
      }
    }
  }
}

Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.

Open in VS Code

Or copy the settings yourself

Paste into .vscode/mcp.json in your project

{
  "servers": {
    "better-call-claude": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "better-call-claude"
      ],
      "env": {
        "BETTERCALLCLAUDE_PHONE_PROVIDER": "your-value",
        "BETTERCALLCLAUDE_PHONE_NUMBER": "your-value",
        "BETTERCALLCLAUDE_PHONE_ACCOUNT_SID": "your-value",
        "BETTERCALLCLAUDE_PHONE_AUTH_TOKEN": "your-value",
        "BETTERCALLCLAUDE_USER_PHONE_NUMBER": "your-value",
        "BETTERCALLCLAUDE_OPENAI_API_KEY": "your-value",
        "BETTERCALLCLAUDE_WHATSAPP_NUMBER": "your-value",
        "BETTERCALLCLAUDE_PORT": "your-value",
        "TAILSCALE_HOSTNAME": "your-value",
        "BETTERCALLCLAUDE_WHATSAPP_PROVIDER": "your-value",
        "BETTERCALLCLAUDE_BAILEYS_AUTH_DIR": "your-value",
        "BETTERCALLCLAUDE_WHATSAPP_CHAT_HISTORY_SIZE": "your-value"
      }
    }
  }
}

Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.

This one runs on your computer, and ChatGPT can only connect to servers on the internet. Pick another app.

Your choice stays on this device in a cookie; no account needed.

Values you fill in

  • BETTERCALLCLAUDE_PHONE_PROVIDER required env
    Phone provider: 'twilio' or 'telnyx'
  • BETTERCALLCLAUDE_PHONE_NUMBER required env
    Your phone number in E.164 format
  • BETTERCALLCLAUDE_PHONE_ACCOUNT_SID secret required env
    Twilio Account SID or Telnyx API Key
  • BETTERCALLCLAUDE_PHONE_AUTH_TOKEN secret required env
    Twilio Auth Token or Telnyx API Secret
  • BETTERCALLCLAUDE_USER_PHONE_NUMBER required env
    Your personal phone number in E.164 format (for outbound calls/SMS)
  • BETTERCALLCLAUDE_OPENAI_API_KEY secret required env
    OpenAI API key for speech-to-text (Whisper) and text-to-speech
  • BETTERCALLCLAUDE_WHATSAPP_NUMBER env
    WhatsApp number if different from phone number (e.g., Twilio Sandbox)
  • BETTERCALLCLAUDE_PORT env
    Local HTTP server port
  • TAILSCALE_HOSTNAME env
    Override Tailscale hostname for webhook URL
  • BETTERCALLCLAUDE_WHATSAPP_PROVIDER env
    WhatsApp provider: set to 'baileys' for free WhatsApp via WebSocket (no Twilio needed)
  • BETTERCALLCLAUDE_BAILEYS_AUTH_DIR env
    Path to Baileys auth state directory (default: data/baileys-auth)
  • BETTERCALLCLAUDE_WHATSAPP_CHAT_HISTORY_SIZE env
    Max WhatsApp chat history messages to retain (default: 50)

These settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.

What it can do

Runs on your computer; the tool list appears in your AI app after you install it.

Basic checksi

We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 8, 2026

  • ✓ Pass

    Maker matches the repo

    The registry name was verified with the GitHub account sns45, which owns the repo

  • … Not checked yet

    Still maintained

    We have not read this repo from GitHub yet

  • … Not checked yet

    Has a licence

    We have not read this repo from GitHub yet

  • – Not applicable

    Endpoint responds

    This one runs on your computer; there is no internet endpoint

  • – Not applicable

    Sign-in with OAuth

    Runs on your computer and uses local settings instead

  • … Not checked yet

    No hidden instructions in tool descriptions

    Runs on your computer; we can only read tool lists from internet endpoints

Compared with others in Chat & emaili

  • More stars than 0% of the other 1861 servers in this category
  • Published to the registry more recently than 19% of the other 1861 servers in this category
  • Basic checks equal to or better than 100% of the other 1861 servers in this category

Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.

Common questions

Is Better Call Claude safe?

It passed 1 of 1 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.

What keys or codes does it need?

You need to fill in: BETTERCALLCLAUDE_PHONE_PROVIDER, BETTERCALLCLAUDE_PHONE_NUMBER, BETTERCALLCLAUDE_PHONE_ACCOUNT_SID, BETTERCALLCLAUDE_PHONE_AUTH_TOKEN, BETTERCALLCLAUDE_USER_PHONE_NUMBER, BETTERCALLCLAUDE_OPENAI_API_KEY

Does it run on my computer or in the cloud?

It runs on your computer. Your AI app starts it when needed, and data does not pass through the maker’s servers (unless it calls an online service itself).

Is it still maintained?

The GitHub repo last changed –, and the latest version (3.1.3) reached the registry 4 months ago.

Which apps can use it?

Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. You also need Node.js on your computer.

What can I use instead?

In the same category: Vexa, emailmd, MCP WhatsApp Cloud

Alternatives

Servers in the same category from other makers, sorted by stars.

Reading a card:↓ Downloads per weeki★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi

Vexa

Meeting bot and transcripts for Google Meet, Teams and Zoom. Live or after, speakers labelled.

by Vexa-aiWidely used★ 2.9KUpdated 2 months ago

Runs in the cloud✓ vexa.ai

emailmd

Render markdown into email-safe HTML, lint drafts for deliverability problems, and preview emails.

by anypostWidely used↓ 5.3K/wk★ 1.4KUpdated 33 days ago

Computer or cloud✓ emailmd.dev

MCP WhatsApp Cloud

MCP server for WhatsApp Cloud API (Meta) — messages, media, and templates via Graph API

by codesparEarly↓ 63/wk★ 277Updated 5 months ago

Runs on your computer

README from the maker

Open the README

Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.

Better Call Claude

Bi-directional communication for Claude Code via Voice Calls, SMS, and WhatsApp.

Call Claude from your phone to start tasks, and receive callbacks when Claude needs input or wants to share status.

📞 "Hey Claude, refactor the auth module and call me when you're done or need a decision."

*[20 minutes later, phone rings]*

🤖 "I've finished the refactor but found a security issue. Should I fix it now or create a ticket?"

💬 *Or via SMS/WhatsApp:*

You: "Claude, how's the deployment going?"

Claude: "Deployment complete. 3 services updated, all health checks passing."

Features

  • 📱 Inbound calls - Call Claude Code from your phone to start tasks
  • 📲 Outbound calls - Claude calls you when done, stuck, or needs decisions
  • 💬 SMS messaging - Send and receive text messages with Claude
  • 📱 WhatsApp - Full WhatsApp Business integration
  • 🔄 Cross-channel context - Start on voice, continue on WhatsApp seamlessly
  • 🔗 Persistent sessions - Claude stays alive listening for WhatsApp messages
  • 🔒 Secure transport - Tailscale Funnel with guided auto-setup
  • 🗣️ Natural conversations - Multi-turn interactions across all channels
  • 🔧 Tool composable - Claude can use other tools while communicating
  • ⚡ Auto-webhook updates - Twilio webhooks auto-update when URL changes
  • 🆓 Free WhatsApp via Baileys - Personal WhatsApp with zero API costs, no business verification
  • ⌚ Works anywhere - Phone, smartwatch, or any device

### ⚠️ Testing Status

| Channel | Provider | Status |

|---------|----------|--------|

| Voice | Twilio | ✅ Tested & Working |

| WhatsApp | Twilio Sandbox | ✅ Tested & Working |

| SMS | Twilio | ⏳ Pending A2P 10DLC verification |

| Voice | Telnyx | 🔬 Not yet tested |

| SMS | Telnyx | 🔬 Not yet tested |

| WhatsApp | Telnyx | 🔬 Not yet tested |

| WhatsApp | Baileys (free) | 🔬 New - testing welcome |

*Contributions welcome for testing other provider/channel combinations!*


Quick Start

1. Choose Your Setup
SetupWhat You GetCostAccounts Needed
Baileys onlyWhatsApp messagingFreeNone
Twilio/TelnyxVoice + SMS + WhatsApp~$1/mo + usageTwilio/Telnyx + OpenAI
HybridVoice + SMS (Twilio) + WhatsApp (Baileys)~$1/mo + voice usageTwilio/Telnyx + OpenAI

Just want WhatsApp? Skip to Option C: Baileys — no accounts, no API keys, completely free.

2. Set Up Phone Provider

Option A: Telnyx (Recommended - 50% cheaper)

  1. Create account at portal.telnyx.com and verify identity
  2. Buy a phone number (~$1/month)
  3. Create a Voice API application:
  • Set webhook URL to your tunnel URL + /webhook/telnyx/inbound
  • Set API version to v2
  1. Enable SMS on your phone number:
  • Go to Messaging and create a Messaging Profile
  • Assign your phone number to the profile
  • Set SMS webhook URL to your tunnel URL + /webhook/telnyx/sms
  1. Enable WhatsApp (optional):
  • Go to WhatsApp in portal
  • Complete WhatsApp Business verification
  • Set webhook URL to your tunnel URL + /webhook/telnyx/whatsapp
  1. Verify your phone number for outbound calls
  2. Get your Connection ID (or Messaging Profile ID) and API Key

Option B: Twilio

  1. Create account at twilio.com/console
  2. Buy a phone number
  3. Configure webhooks for your number:
  • Voice webhook: your tunnel URL + /webhook/twilio/inbound
  • SMS webhook: your tunnel URL + /webhook/twilio/sms
  1. Enable WhatsApp (optional):
  • Go to WhatsApp Senders
  • Complete WhatsApp Business setup
  • Set webhook URL to your tunnel URL + /webhook/twilio/whatsapp
  1. Get your Account SID and Auth Token

Option C: Baileys (Free WhatsApp — no API provider needed)

Baileys connects directly to WhatsApp's Web protocol via WebSocket. It uses your personal WhatsApp account — no business verification, no API costs, no Twilio/Telnyx required.

How it works: Same as WhatsApp Web — you link a device by scanning a QR code.

Step 1: Clone and install

git clone https://github.com/sns45/better-call-claude

cd better-call-claude bun install

Step 2: Pair your WhatsApp

bun run baileys:pair
  1. A QR code will appear in your terminal
  2. Open WhatsApp on your phone > Settings > Linked Devices > Link a Device
  3. Scan the QR code
  4. Wait for "Paired successfully!" message

Your session is saved in data/baileys-auth/ — you won't need to scan again.

Step 3: Add to Claude Code (~/.claude.json or ~/.claude/settings.json):

{

"mcpServers": { "better-call-claude": { "command": "bun", "args": ["run", "/path/to/better-call-claude/src/index.ts"], "env": { "BETTERCALLCLAUDE_WHATSAPP_PROVIDER": "baileys", "BETTERCALLCLAUDE_USER_PHONE_NUMBER": "+1234567890" } } } }

That's it! No Tailscale, no Twilio, no OpenAI keys needed.

Step 4: Restart Claude Code and test

Send a WhatsApp message to yourself (or have someone message you) — Baileys receives it and spawns a Claude task. Or ask Claude to send you a WhatsApp:

"Send me a WhatsApp saying hello"

Option D: Hybrid (Twilio/Telnyx voice + Baileys WhatsApp)

Get the best of both worlds: Twilio/Telnyx handles voice calls and SMS, Baileys handles WhatsApp for free.

  1. Set up Twilio or Telnyx (Options A/B above)
  2. Run bun run baileys:pair to pair your WhatsApp
  3. Add to your MCP config:
{

"env": { "BETTERCALLCLAUDE_PHONE_PROVIDER": "twilio", "BETTERCALLCLAUDE_WHATSAPP_PROVIDER": "baileys", "BETTERCALLCLAUDE_PHONE_ACCOUNT_SID": "your-account-sid", "BETTERCALLCLAUDE_PHONE_AUTH_TOKEN": "your-auth-token", "BETTERCALLCLAUDE_PHONE_NUMBER": "+15551234567", "BETTERCALLCLAUDE_USER_PHONE_NUMBER": "+15559876543", "BETTERCALLCLAUDE_OPENAI_API_KEY": "sk-..." } }

Voice calls and SMS go through Twilio. WhatsApp goes through Baileys (free).

3. Set Up Tailscale Funnel (for webhooks)

Skip this step if you're using Baileys-only mode (Option C). Baileys doesn't need webhooks.

Tailscale Funnel provides free, stable public URLs for receiving webhooks from your phone provider.

Why Tailscale? Free unlimited tunnels, stable URLs (no random subdomains), enterprise-grade security.

Path: Better Call Claude uses /bcc path (e.g., https://your-hostname.ts.net/bcc) to avoid conflicts with other services.

First-time setup (automated):

When you first start the MCP server, it will guide you through setup:

  1. Install Tailscale (if not installed):
   # macOS

brew install tailscale

Linux

curl -fsSL https://tailscale.com/install.sh | sh

  1. Authenticate - The server will auto-run tailscale up and open your browser
  1. Enable Funnel - Visit the URL shown in the terminal to enable Funnel on your tailnet (one-time admin step)

That's it! The server handles the rest automatically.

4. Install Better Call Claude
# Quick start with bunx (recommended)

bunx better-call-claude

Or install globally

bun install -g better-call-claude better-call-claude

5. Add to Claude Code

Add to ~/.claude/settings.json:

{

"mcpServers": { "better-call-claude": { "command": "bunx", "args": ["better-call-claude"], "env": { "BETTERCALLCLAUDE_PHONE_PROVIDER": "telnyx", "BETTERCALLCLAUDE_PHONE_ACCOUNT_SID": "your-connection-id", "BETTERCALLCLAUDE_PHONE_AUTH_TOKEN": "your-api-key", "BETTERCALLCLAUDE_PHONE_NUMBER": "+15551234567", "BETTERCALLCLAUDE_USER_PHONE_NUMBER": "+15559876543", "BETTERCALLCLAUDE_OPENAI_API_KEY": "sk-..." } } } }

Note: Tailscale setup is automatic on first run. The server will guide you through installation and authentication if needed.

Restart Claude Code. Done!


Environment Variables

Required Variables
VariableDescription
BETTERCALLCLAUDE_PHONE_PROVIDERtelnyx or twilio
BETTERCALLCLAUDE_PHONE_ACCOUNT_SIDProvider account/connection ID
BETTERCALLCLAUDE_PHONE_AUTH_TOKENProvider API key/auth token
BETTERCALLCLAUDE_PHONE_NUMBERYour Telnyx/Twilio phone number (E.164)
BETTERCALLCLAUDE_WHATSAPP_NUMBERWhatsApp number if different (e.g., Twilio Sandbox)
BETTERCALLCLAUDE_USER_PHONE_NUMBERYour personal phone number
BETTERCALLCLAUDE_OPENAI_API_KEYOpenAI API key for TTS/STT
Baileys (Free WhatsApp)
VariableDefaultDescription
BETTERCALLCLAUDE_WHATSAPP_PROVIDER*(unset)*Set to baileys to enable free WhatsApp
BETTERCALLCLAUDE_BAILEYS_AUTH_DIRdata/baileys-authSession credential directory

Baileys-only mode: When WHATSAPP_PROVIDER=baileys and no Twilio/Telnyx credentials are set, only USER_PHONE_NUMBER is required. No Tailscale, no OpenAI key needed.

Tailscale (Optional)
VariableDefaultDescription
TAILSCALE_HOSTNAMEauto-detectedOverride Tailscale hostname
Optional Variables
VariableDefaultDescription
BETTERCALLCLAUDE_TTS_VOICEonyxOpenAI voice (alloy, echo, fable, onyx, nova, shimmer)
BETTERCALLCLAUDE_PORT3333Local HTTP server port
BETTERCALLCLAUDE_TRANSCRIPT_TIMEOUT_MS180000Speech timeout (3 min)
BETTERCALLCLAUDE_STT_SILENCE_DURATION_MS800End-of-speech detection

Usage

Voice Calls
You → Claude (Inbound Calls)

Call your Telnyx/Twilio phone number from your personal phone:

📱 "Hey Claude, I need you to write unit tests for the payment module. Call me when you're done."

Claude will acknowledge and start working. When done, it calls you back.

Claude → You (Outbound Calls)

Claude can initiate calls when it needs your input:

🤖 "I found 3 different approaches for the caching layer. Want me to explain them so you can choose?"

Voice Commands During Calls
  • "Hang up" or "Goodbye" - End the call
  • "Hold on" - Claude waits for you to continue
  • "Go ahead" - Claude continues with the task
  • "Cancel that" - Abort current action

SMS Messaging
You → Claude (Inbound SMS)

Text your Telnyx/Twilio number:

💬 "Hey Claude, what's the status of the deployment?"

Claude will respond via SMS:

🤖 "Deployment is 80% complete. Running integration tests now. ETA: 5 minutes."

Claude → You (Outbound SMS)

Claude can send you text updates:

🤖 "Build failed on line 42 of auth.ts. Reply with 'fix' to auto-fix or 'skip' to continue."


WhatsApp
You → Claude (Inbound WhatsApp)

Send a WhatsApp message to your business number:

💬 "Show me the error logs from the last hour"

Claude responds in WhatsApp:

🤖 "Found 3 errors:\n1. Co

Only the beginning is shown; read the rest in the repo

Ask PopNx