mcp server
Enables integration with Vapi APIs through function calling via the Model Context Protocol, allowing AI models to access Vapi's capabilities.
Enables integration with Vapi APIs through function calling via the Model Context Protocol, allowing AI models to access Vapi's capabilities.
The Vapi Model Context Protocol server allows you to integrate with Vapi APIs through function calling.
Claude Desktop
and press CMD + ,
to go to Settings
.Developer
tab.Edit Config
button.claude_desktop_config.json
file in your file explorer.claude_desktop_config.json
file. See here for more details.{
"mcpServers": {
"vapi-mcp-server": {
"command": "npx",
"args": [
"-y",
"@vapi-ai/mcp-server"
],
"env": {
"VAPI_TOKEN": "<your_vapi_token>"
}
}
}
}
Example 1: Request an immediate call
I'd like to speak with my ShopHelper assistant to talk about my recent order. Can you have it call me at +1234567890?
Example 2: Schedule a future call
I need to schedule a call with Mary assistant for next Tuesday at 3:00 PM. My phone number is +1555123456.
To connect to Vapi's MCP server via Server-Sent Events (SSE) Transport:
https://mcp.vapi.ai/sse
from any MCP client using SSE TransportAuthorization: Bearer your_vapi_api_key_here
This connection allows you to access Vapi's functionality remotely without running a local server.
# Install dependencies
npm install
# Build the server
npm run build
Update your claude_desktop_config.json
to use the local server.
{
"mcpServers": {
"vapi-local": {
"command": "node",
"args": [
"<path_to_vapi_mcp_server>/dist/index.js"
],
"env": {
"VAPI_TOKEN": "<your_vapi_token>"
}
},
}
}
The project has two types of tests:
Unit tests use mocks to test the MCP server without making actual API calls to Vapi.
# Run unit tests
npm run test:unit
E2E tests run the full MCP server with actual API calls to Vapi.
# Set your Vapi API token
export VAPI_TOKEN=your_token_here
# Run E2E tests
npm run test:e2e
Note: E2E tests require a valid Vapi API token to be set in the environment.
To run all tests at once:
npm test
The Vapi MCP Server provides the following tools for integration:
list_assistants
: Lists all Vapi assistantscreate_assistant
: Creates a new Vapi assistantget_assistant
: Gets a Vapi assistant by IDlist_calls
: Lists all Vapi callscreate_call
: Creates an outbound callget_call
: Gets details of a specific callNote: The
create_call
action supports scheduling calls for immediate execution or for a future time.
list_phone_numbers
: Lists all Vapi phone numbersget_phone_number
: Gets details of a specific phone number