Better Call Claude

Provides bi-directional Claude Code communication via voice calls, SMS, and WhatsApp with cross-channel context and secure webhooks.
  • typescript

0

GitHub Stars

typescript

Language

4 months ago

First Indexed

2 months ago

Catalog Refreshed

Documentation & install

Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.

Installation

Add the following to your MCP client configuration file.

Configuration

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

You can run and interact with Better Call Claude as a bi-directional MCP server that connects Claude Code to phone, SMS, and WhatsApp channels. This server lets you start tasks over voice or messages, receive status updates, and continue conversations across channels with secure transport and automated webhooks.

How to use

You will run the MCP server locally and connect Claude Code to it. Use your phone provider to receive inbound calls, SMS, and WhatsApp messages, and let Claude respond through the same channels. Start tasks from your Claude Code IDE and let Claude call you back when it needs input or reports progress. Use voice commands during calls to control the flow, and switch to text channels to continue the conversation.

How to install

Prerequisites: you need Node.js or Bun installed, plus access to a phone provider (Telnyx or Twilio) and an OpenAI API key for speech processing.

  1. Install the MCP server runtime and start the server locally.
# Quick start with Bun (recommended)
bunx better-call-claude

# Or install globally with Bun
bun install -g better-call-claude
better-call-claude

Configuration and starting the MCP server

Configure the MCP server as shown in the sample settings to connect to Claude Code and your providers.

{
  "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-..."
      }
    }
  }
}

Add to Claude Code

Place the MCP server configuration in your Claude Code settings so it can discover and communicate with the Better Call Claude MCP server.

{
  "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-..."
      }
    }
  }
}

Environment variables

Define the required environment variables to enable phone, messaging, and OpenAI integrations.

Usage notes

Tailscale Funnel provides a secure, public URL for webhooks. The server guides you through the initial setup on first run and keeps your environment ready for inbound and outbound communications across voice, SMS, and WhatsApp.

Tools and capabilities

The MCP server exposes a set of tools to manage calls and messages programmatically. You can receive inbound calls and messages, initiate and continue calls, send SMS or WhatsApp messages, and manage conversations across channels.

Security considerations

All webhook endpoints are hardened with signed requests and secure transport through Tailscale Funnel. Environment variables should never be hardcoded; use runtime configuration instead.

Troubleshooting

If you encounter issues with voice, SMS, or WhatsApp, verify your provider configuration, webhook URLs, and the Funnel status. Check the MCP server is running and that the Tail net tunnel is active. Review the environment variable values and ensure your provider accounts have sufficient balance and correct numbers.

Development

Clone the repository, install dependencies, and run in development mode. Use the MCP inspector to test interactions and flows.

Notes

This server uses Bun as the runtime, a lightweight web framework, and OpenAI Whisper for speech processing, with Tailscale Funnel handling public webhook URLs.

Available tools

receive_inbound_call

Accept and process an incoming call from the user.

initiate_call

Start a phone call to the user.

continue_call

Continue an active call with follow-up messages.

speak_to_user

Speak without waiting for a response for acknowledgments.

end_call

End an active call.

get_call_status

Check the status of current or recent calls.

receive_inbound_message

Check for incoming SMS or WhatsApp messages.

send_sms

Send an SMS message to the user.

send_whatsapp

Send a WhatsApp message to the user.

reply_to_conversation

Reply to an existing conversation across voice, SMS, or WhatsApp.

get_conversation_history

Get the full message history for any conversation.

Built by
VeilStrat
AI signals for GTM teams
© 2026 VeilStrat. All rights reserved.All systems operational
Better Call Claude MCP Server - sns45/better-call-claude | VeilStrat