📇 ☁️ - Make phone calls using VoIP/SIP and OpenAI's Realtime API, and observe the transcript
CallCenter.js MCP + CLI
以下摘录自该仓库的 README(片段) · 在 GitHub 读完整 README →
**An MCP Server, CLI tool, and API that makes phone calls on your behalf using VoIP.**
Just tell Claude what you want to accomplish, and it will call and handle the conversation for you. This is essentially an MCP Server that bridges between OpenAI's Real-Time Voice API and your VoIP connection to call people on your behalf.
> **⚠️ Vibe-coded side project!** Please do not use this in any kind of professional context. This is a side project coded in a weekend. There are no guard rails. Your MCP client can call *any* number with this, even if you don't ask it to. In fact, it has done so during testing - it called a random number during the night "for testing" and played back scary low-pitched noises - then claimed it called MY number. So YMMV, no warranties. See disclaimer below.
📞 Example: Order Pizza with Claude
**You:** "Can you call Tony's Pizza and order a large pepperoni pizza for delivery to 123 Main St? My name is John and my number is 555-0123."
**Claude automatically calls the restaurant:**
**Pizza ordered successfully!** 🍕
📚 Quick Context for the Uninitiated
**VoIP (Voice over IP)** is how you make phone calls over the internet instead of traditional phone lines. **SIP (Session Initiation Protocol)** is the language these systems speak to connect calls. Think of it as HTTP but for phone calls.
**Fritz!Box** is a popular German router/modem that happens to have a built-in phone system (PBX). If you have one, you already have everything you need to make VoIP calls - this tool just connects to it. Outside Germany, you might know similar devices from other brands, or use dedicated VoIP services like Asterisk, 3CX, or cloud providers.
**MCP (Model Context Protocol)** is Anthropic's standard for connecting AI assistants like Claude to external tools and services. It's what lets MCP clients actually *do* things instead of just talking about them.
🚀 What This Enables
- 🔌 **MCP Server** - Use directly in Claude Code or any MCP client (most popular usage)
- 🖥️ **CLI Tool** - Command-line interface for direct phone calls
- 📚 **TypeScript API** - Programmatic library for building voice applications
Built as a bridge between OpenAI's Real-Time Voice API and VoIP networks, with multiple codec support (G.722, G.711), and expanded SIP protocol support for broad VoIP compatibility. Compatible with the latest gpt-realtime model released August 28, 2025.
🏗️ System Architecture
> **⚠️ Vibe-coded project!** Developed and tested on Fritz!Box (a German router with built-in VoIP) only. Other provider configs are research-based but untested. YMMV, no warranties. See disclaimer below.
🔌 MCP Client Integration (Most Popular!)
**Perfect for when your coding agent needs to call library authors to complain about their documentation!** 😄
Quick Setup
**Then just ask your MCP Client to make calls:**
> "Can you call the pizza place and order a large pepperoni? My number is 555-0123."
Your MCP Client will automatically handle the entire conversation using the AI Voice Agent! 🤖📞
✨ Key Features
- 🎙️ **Multiple Codec Support**: G.722 wideband (16kHz) + G.711 fallback for broad compatibility
- 🧩 **Compiler-Free WASM Codec**: Ships with a prebuilt G.722 WebAssembly module so npx users get wideband audio without installing build tools (native addon still available for max performance)
- 🤖 **AI-Powered Conversations**: Uses OpenAI's Real-Time Voice API with the latest gpt-realtime model (released August 28, 2025) for actual calls, with o3-mini model for instruction generation
- 🌍 **Automatic Language Detection**: Intelligently detects conversation language from call briefs and configures transcription accordingly
- 🎭 **Auto Voice Selection**: New 'auto' mode where o3-mini selects optimal voice based on call context (formality, industry, goals)
- 🔊 **Voice Characteristics**: Full support for all 10 OpenAI Realtime API voices with gender and personality awareness
- 🌐 **Expanded SIP Support**: Configurations for common SIP providers (Fritz!Box tested, others experimental)
- 🔧 **Smart Configuration**: Auto-detects provider requirements and optimizes settings
- 📞 **Enterprise-Ready**: Supports advanced SIP features (STUN/TURN, session timers, transport fallback)
- 🔄 **Robust Connection Management**: Automatic reconnection with intelligent error handling