# @vapi-ai/mcp-server [Health: Active]

**Category:** 🗣️ Conversational AI  
**Repository:** https://github.com/VapiAI/mcp-server  
**GitHub Stars:** 58  
**npm Downloads (last month):** 2448  
**Views:** 0  
**Installs:** 0  
**Upvotes:** 0  
**Directory Page:** https://allmcps.com/mcp/vapi-ai-mcp-server

## Description
Build AI voice assistants and phone agents with Vapi through the Model Context Protocol

## Tools
Capabilities this server exposes over MCP:

- **list_assistants** — List all assistants
- **get_assistant** — Get assistant by ID
- **create_assistant** — Create new assistant
- **update_assistant** — Update assistant
- **list_calls** — List call history
- **get_call** — Get call details
- **create_call** — Start outbound call (immediate or scheduled)
- **list_phone_numbers** — List phone numbers
- **get_phone_number** — Get phone number details
- **list_tools** — List custom tools
- **get_tool** — Get tool details
- **create_tool** — Create tool for API integration
- **update_tool** — Update tool

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

```json
"mcpServers": {
  "mcp-server": {
    "command": "npx",
    "args": ["-y","@vapi-ai/mcp-server"],
    "env": {
      "VAPI_TOKEN": ""
    }
  }
}
```

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

## Documentation

## What @vapi-ai/mcp-server MCP server does

The @vapi-ai/mcp-server MCP server exposes selected Vapi operations through the Model Context Protocol. It is intended for agents that need to work with AI voice assistants and phone agents without requiring a developer to manually issue each Vapi API request.

The server supports assistant management, call management, phone number lookup, and custom tool management. An agent can list, retrieve, create, or update assistants; review call history and call details; start an outbound call immediately or schedule one; inspect available phone numbers; and create or update tools used for API integrations.

## How it works

The package can run as a local Node-based stdio process. An MCP client starts it with `npx -y @vapi-ai/mcp-server`, and the process authenticates requests using the `VAPI_TOKEN` environment variable.

Vapi also hosts a remote Streamable HTTP endpoint at `https://mcp.vapi.ai/mcp`. Remote-capable MCP clients connect to that URL and send the API key as a Bearer token in the `Authorization` header. An SSE endpoint is listed as deprecated. The repository also includes optional Agent Skill instructions for compatible AI coding agents.

## Setup and configuration

Create a Vapi API key in the Vapi dashboard, then provide it to the server as `VAPI_TOKEN`. For a local client configuration, define the server command as `npx`, pass `-y @vapi-ai/mcp-server` as its arguments, and set the environment variable to the key.

Claude Code can add the local server with its `claude mcp add` command. Claude Desktop can use the local stdio configuration or connect to the hosted endpoint through the `mcp-remote` stdio bridge. The repository also documents a local development configuration that runs the built `dist/index.js` file directly.

## Tools and capabilities

The @vapi-ai/mcp-server MCP server provides these tool groups:

- Assistants: `list_assistants`, `get_assistant`, `create_assistant`, and `update_assistant`.
- Calls: `list_calls`, `get_call`, and `create_call` for immediate or scheduled outbound calls.
- Phone numbers: `list_phone_numbers` and `get_phone_number`.
- Custom tools: `list_tools`, `get_tool`, `create_tool`, and `update_tool`.

The `create_call` action accepts dynamic values through `assistantOverrides.variableValues`. Prompts can reference those values with double-curly-brace names such as `{{customerName}}`. Vapi also supplies default date and customer phone-number variables, including `{{now}}`, `{{date}}`, and `{{customer.number}}`.

## Limitations and notes

A Vapi API key is required for operation, whether the server runs locally or through the hosted endpoint. The README documents Claude Code and Claude Desktop examples, but does not provide configuration examples for other named clients. The SSE remote endpoint is marked deprecated, so new remote configurations should use Streamable HTTP. Live mutating tests create and remove disposable assistants and tools, making a separate test organization token appropriate for that testing mode.

_Full upstream README: https://allmcps.com/mcp/vapi-ai-mcp-server/readme_

