Connect your AI app

There are two ways to connect. Use our hosted server from any AI app, or run the server on your own computer so your VoIP.ms credentials never leave it. Either way you sign in here, choose exactly what your assistant can access, and keep the same plan and daily cap.

Paste one URL into your AI app and sign in when it opens a browser. We hold your VoIP.ms API credentials, encrypted, so it works from web and mobile apps too.

Your MCP server URL

https://voipms-mcp.ecliptical.io/mcp
Your VoIP.ms credentials
Encrypted on our server. You enter them once, in the dashboard.
Works with
Any MCP app, including web and mobile: Claude, ChatGPT on the web, Cursor, VS Code, and more.
VoIP.ms allowed IP
Add our hostname, once.
Runs on and updates
Anything with a browser. Updates are automatic.

Want your VoIP.ms credentials to stay on your own computer? instead. Sign-in, scopes, plan, and daily cap are the same either way, and you can use both.

Install a small program on your Mac, PC, or Linux desktop and point a desktop AI app at it. Your VoIP.ms API credentials stay in your computer's secure store and never reach our servers.

Install

macOS

brew install ecliptical/voipms-mcp/voipms-mcp

Windows

scoop install voipms-mcp

Linux

Debian and Ubuntu
sudo apt update && sudo apt install -y curl
sudo install -d -m 0755 /etc/apt/keyrings
curl -fsSL https://voipms-mcp.ecliptical.io/linux/voipms-mcp.asc | sudo tee /etc/apt/keyrings/voipms-mcp.asc > /dev/null
sudo tee /etc/apt/sources.list.d/voipms-mcp.sources > /dev/null <<'EOF'
Types: deb
URIs: https://voipms-mcp.ecliptical.io/linux/deb
Suites: stable
Components: main
Architectures: amd64 arm64
Signed-By: /etc/apt/keyrings/voipms-mcp.asc
EOF
sudo apt update && sudo apt install voipms-mcp

Later versions arrive with sudo apt update && sudo apt upgrade.

Fedora
sudo tee /etc/yum.repos.d/voipms-mcp.repo > /dev/null <<'EOF'
[voipms-mcp]
name=voipms-mcp
baseurl=https://voipms-mcp.ecliptical.io/linux/rpm
enabled=1
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://voipms-mcp.ecliptical.io/linux/voipms-mcp.asc
EOF
sudo dnf install voipms-mcp

dnf shows our signing key's fingerprint and asks before trusting it. It should read 4EF866AFCABDCA29D50FB5838E72013ADFFBAC45. Later versions arrive with sudo dnf upgrade.

Homebrew on Linux works too, with the macOS command.

Linux needs a desktop session. Your sign-in and VoIP.ms credentials go into its keyring, such as GNOME Keyring, KWallet, or KeePassXC, which a server or an SSH login without a desktop doesn't have. Run voipms-mcp doctor to see whether yours does. On KDE Plasma, the first sign-in may open a dialog to set up a wallet; answer it, or the sign-in can't be stored.

Your VoIP.ms credentials
In your computer's secure store. You never enter them on this site.
Works with
Desktop apps that can start a program: Claude Desktop, Claude Code, ChatGPT desktop, Cursor, VS Code.
VoIP.ms allowed IP
Your own public address. A dynamic-DNS hostname makes it one-time if your ISP changes it.
Runs on and updates
macOS, Windows, and Linux desktops on x86_64 and ARM64. Update the way you installed: brew upgrade voipms-mcp, scoop update voipms-mcp, or your Linux package manager's upgrade.

Need ChatGPT on the web, Claude on your phone, or another browser-only app? Use the instead. Sign-in, scopes, plan, and daily cap are the same either way, and you can use both.

What to expect on first connect

1

Sign in

Your AI app opens a browser to sign in. New here? You'll create an account in the same step.

2

Choose access

Review what the app is asking for and approve any subset — read-only or full, resource by resource.

3

Add your VoIP.ms credentials

Save your VoIP.ms API username and password once in the dashboard. They stay encrypted on the server and are never shared with the AI app.

Before you connect

This server acts on your own VoIP.ms account, so you need two things in place first. Both are set in the VoIP.ms API settings.

  • A VoIP.ms account with API access enabled. Under API → Enable/Disable API, turn the API on and set an API password. That username and password are the credentials you save in the dashboard — not your portal login.
  • Source-IP access for the server. Under API → Allowed IP Addresses, add voipms-proxy.ecliptical.io so the server can reach the API on your behalf. Keep any entries already there — this only adds ours.

See the full scope catalog for everything you can grant.

App setup

Pick your app. Most use the same server URL above — substitute your own if you are reading this off a different deployment.

Claude Desktop

VoIP.ms is listed in Claude's connector directory.

  1. Open Settings → Connectors and browse the connector directory.
  2. Search for VoIP.ms and open the VoIP.ms (Unofficial) listing.
  3. Click Connect — a browser opens to sign in and choose access.
  4. Once connected, the VoIP.ms tools appear in the connector list.
Claude Code

Add the server from the CLI as an HTTP transport:

claude mcp add --transport http voipms https://voipms-mcp.ecliptical.io/mcp
  1. Run /mcp inside Claude Code and authenticate when prompted — a browser opens for sign-in and to choose access.
  2. After approval the VoIP.ms tools are available in the session.
ChatGPT

ChatGPT connects to remote MCP servers as custom MCP apps. They work on ChatGPT on the web, not in the mobile apps, on Plus, Pro, Business, Enterprise, and Edu plans. The Free plan can't add them. In a Business, Enterprise, or Edu workspace, an admin has to turn on developer mode first.

  1. Open Plugins in the sidebar, then Add → Create MCP App. If Create MCP App is missing, turn on developer mode in ChatGPT's settings.
  2. Name it VoIP.ms (Unofficial) (the name must differ from your other apps). Under Connection, choose Server URL and paste:

    https://voipms-mcp.ecliptical.io/mcp
  3. Leave Authentication on OAuth and Advanced OAuth settings as ChatGPT fills them in. Check I understand and want to continue, then click Create.
  4. Click Continue to followed by the app's name, then sign in and choose access in the browser.
  5. In a new chat, click + in the message box and select the app. Later messages in that chat can keep using it.

To reconnect or remove the app later, open Settings → Plugins and select it.

Cursor

Add the server to Cursor's MCP config — ~/.cursor/mcp.json (global) or .cursor/mcp.json (per-project):

{
  "mcpServers": {
    "voipms": {
      "url": "https://voipms-mcp.ecliptical.io/mcp"
    }
  }
}
  1. Reload Cursor. Open Settings → MCP and sign in when prompted to authorize the connection.
Visual Studio Code

VS Code (Copilot agent mode) reads MCP servers from .vscode/mcp.json in your workspace:

{
  "servers": {
    "voipms": {
      "type": "http",
      "url": "https://voipms-mcp.ecliptical.io/mcp"
    }
  }
}
  1. Save the file, then click Start on the server in the editor and sign in when prompted.
  2. The VoIP.ms tools become available to Copilot in agent mode.
Any other MCP client

Any client that supports a remote MCP server over the streamable HTTP transport with OAuth can connect. Configure it with:

  • Transport: Streamable HTTP (POST). Server-Sent Events are not used.
  • URL: https://voipms-mcp.ecliptical.io/mcp
  • Auth: OAuth 2.1. The client discovers the authorization server automatically from the protected-resource metadata; no manual client registration is needed.

Set up in three commands

1

Sign in

voipms-mcp login

Prints a link and a short code. Open the link, sign in, and approve. New here? You create an account and choose a plan in the same step.

2

Store your VoIP.ms credentials

voipms-mcp set-credentials

Asks for your VoIP.ms API username and password and keeps them in your computer's secure store (Keychain on macOS, Credential Manager on Windows, your desktop's keyring on Linux). Don't enter them in the dashboard; that form is for the hosted server.

3

Check it

voipms-mcp doctor

Checks the login, the stored credentials, and whether VoIP.ms accepts a call from this machine. Run it whenever something stops working.

Before you connect on your device

This server acts on your own VoIP.ms account, so you need two things in place first. Both are set in the VoIP.ms API settings.

  • A VoIP.ms account with API access enabled. Under API → Enable/Disable API, turn the API on and set an API password. That username and password are what you give voipms-mcp set-credentials — not your portal login.
  • Source-IP access for your computer. Under API → Allowed IP Addresses, add your own public IP address. The field accepts a hostname, so if your ISP changes your address, a dynamic-DNS hostname makes this a one-time step. Keep any entries already there. If calls start failing, voipms-mcp doctor reports the address VoIP.ms sees and whether it accepts a call from this machine.

See the full scope catalog for everything you can grant.

App setup on your device

Pick your app. Each starts voipms-mcp for you; there is nothing else to configure.

If an app says it can't find voipms-mcp: apps started from the Dock, the Start menu, or a desktop launcher don't always see your shell's PATH. Run which voipms-mcp (macOS, Linux) or where voipms-mcp (Windows) and paste the full path in place of the command.
Claude Desktop

Claude Desktop starts local MCP servers from its config file. Open it with Settings → Developer → Edit Config and add:

{
  "mcpServers": {
    "voipms": {
      "command": "voipms-mcp"
    }
  }
}
  1. Save and restart Claude Desktop. The VoIP.ms tools appear under the tools menu.
  2. No sign-in prompt here: you already signed in with voipms-mcp login.
Claude Code

Add the server from the CLI as a local command:

claude mcp add voipms -- voipms-mcp
  1. The VoIP.ms tools are available in the next session. There is nothing to authorize: you already signed in with voipms-mcp login.
ChatGPT (desktop app)

The ChatGPT desktop app starts local MCP servers through its Codex settings, shared with Codex CLI. ChatGPT on the web can't start a program on your computer; use the there.

  1. Open Settings → MCP servers → Add server.
  2. Name it voipms, choose STDIO, and enter the command voipms-mcp.
  3. Save, then Restart.

Or add it to ~/.codex/config.toml, which the desktop app, Codex CLI, and the IDE extension all read:

[mcp_servers.voipms]
command = "voipms-mcp"
Cursor

In ~/.cursor/mcp.json (global) or .cursor/mcp.json (per-project):

{
  "mcpServers": {
    "voipms": { "command": "voipms-mcp" }
  }
}
  1. Reload Cursor. The VoIP.ms tools appear under Settings → MCP with no sign-in prompt.
Visual Studio Code

VS Code (Copilot agent mode) reads MCP servers from .vscode/mcp.json in your workspace:

{
  "servers": {
    "voipms": { "type": "stdio", "command": "voipms-mcp" }
  }
}
  1. Save the file, then click Start on the server in the editor.
  2. The VoIP.ms tools become available to Copilot in agent mode.
Any other MCP client

Any client that can start a local stdio MCP server can connect. Configure it with:

  • Transport: stdio.
  • Command: voipms-mcp, with no arguments and no environment variables.
  • Auth: none. The client does no OAuth; you already signed in with voipms-mcp login.

To disconnect this computer, run voipms-mcp logout. It revokes the sign-in here as well as removing it from your machine.