# gerkensm/callcenter.js-mcp [Health: Active]

**Category:** 💬 Communication  
**Repository:** https://github.com/gerkensm/callcenter.js-mcp  
**GitHub Stars:** 24  
**Views:** 3  
**Installs:** 0  
**Upvotes:** 0  
**Directory Page:** https://allmcps.com/mcp/gerkensm-callcenter-js-mcp

## Description
An MCP server to make phone calls using VoIP/SIP and OpenAI's Realtime API and observe the transcript.

## Claude Desktop Quick Installation
Install path detected from listing signals. Uses `npx` (confidence: high):

```json
"mcpServers": {
  "callcenter-js-mcp": {
    "command": "npx",
    "args": ["-y","--"],
    "env": {
      "SIP_USERNAME": "",
      "SIP_PASSWORD": "",
      "SIP_SERVER_IP": "",
      "OPENAI_API_KEY": ""
    }
  }
}
```

**Requires environment variables:** `SIP_USERNAME`, `SIP_PASSWORD`, `SIP_SERVER_IP`, `OPENAI_API_KEY` — the values above are empty placeholders; fill in real credentials before running (see the repository for what each one is for).

## Documentation

## What gerkensm/callcenter.js-mcp MCP server does

gerkensm/callcenter.js-mcp MCP server lets an MCP client request an outbound phone call through a VoIP/SIP connection. The caller supplies a destination number and a natural-language brief describing the task. The README demonstrates a `simple_call` operation that can call a business, conduct a conversation, and return the call status, duration, call ID, and transcript.

The voice agent is backed by OpenAI's Realtime Voice API. The project also uses an o3-mini model to turn the call brief into structured instructions. Calls can use automatic language detection and an automatic voice-selection mode based on the context of the brief. The README describes support for the `gpt-realtime` model and OpenAI Realtime voices.

## How it works

The MCP client sends a call request to the server. The server passes the task to its voice-agent layer, establishes a SIP call through the configured VoIP system, and bridges call audio to OpenAI's realtime service. Audio support includes G.722 wideband at 16 kHz and G.711 as a fallback. A prebuilt WebAssembly G.722 codec is included for `npx` use, while a native addon can be built for higher performance.

The project is also available as a command-line tool and TypeScript API, according to the README. Optional recordings can be written as stereo WAV files with separate caller and AI channels. These interfaces are alternatives to the MCP integration for applications that need direct programmatic or command-line control.

## Setup and configuration

Running gerkensm/callcenter.js-mcp requires Node.js 20 or newer. The documented MCP setup provides `SIP_USERNAME`, `SIP_PASSWORD`, `SIP_SERVER_IP`, and `OPENAI_API_KEY`. The README also shows optional settings such as `SIP_PROVIDER`, `OPENAI_VOICE`, and a user name passed through the call request or environment configuration.

The quick-start examples run the project directly from GitHub with `npx`. A `.env` file can supply the configuration instead of shell exports. Provider profiles and expanded SIP options are described, including Fritz!Box, Asterisk, STUN/TURN, session timers, and transport fallback. However, only Fritz!Box is explicitly identified as tested; other provider configurations are described as experimental.

## Tools and capabilities

The documented MCP example exposes:

- `simple_call` for placing a call with a phone number, brief, and caller name
- Conversation handling through OpenAI's realtime voice service
- Returned call metadata and a timestamped human/assistant transcript
- G.722 and G.711 audio codec support
- Optional stereo WAV call recording

The README does not provide a complete MCP tool inventory in the supplied material, so additional tool names should not be assumed from the project description.

## Limitations and notes

gerkensm/callcenter.js-mcp can call arbitrary numbers, and the README explicitly warns that it has no guard rails. It is presented as a weekend side project and is not recommended there for professional use. Test calls should therefore use controlled numbers and credentials.

The implementation depends on both an operational SIP/VoIP system and an OpenAI API key. Network behavior, codec compatibility, provider settings, and telephony rules may vary outside the tested Fritz!Box setup. The supplied material does not state a software license, so licensing should be confirmed in the repository before redistribution or commercial use.

_Full upstream README: https://allmcps.com/mcp/gerkensm-callcenter-js-mcp/readme_

