使用说明
Vapi MCP服务器——克劳德和模型上下文协议的语音AI集成
Vapi MCP服务器 是一个开源 模型上下文协议 连接的(MCP)服务器 瓦皮 Claude Desktop和其他MCP客户端的语音AI API。管理助手,创建和安排电话,控制语音AI工具——所有这些都来自您的AI工作流程。
目录
关于本项目
该项目提供了 用于Vapi的模型上下文协议(MCP)服务器,启用:
- Claude桌面集成 –使用Claude创建通话、管理助手,并通过自然语言使用Vapi电话号码。
- 语音AI工具呼叫 –将Vapi助手、电话、电话号码和工具作为MCP工具公开给任何兼容MCP的客户端。
- 流式HTTP和SSE –本地(stdio)或远程连接到Vapi的MCP端点。
非常适合开发人员构建语音AI工作流程、预约时间表和AI驱动的手机集成 瓦皮 和 克劳德.
特性
- 助理管理 –列出、创建、更新和获取Vapi助手
- 呼叫控制 –使用动态变量创建出站呼叫(即时或计划)
- 电话号码 –列出并检查Vapi电话号码
- Vapi工具 –列出并获取Vapi工具定义
- 克劳德桌面版 –Claude Desktop的插入式配置
- 远程MCP –通过Streamable HTTP或SSE连接到Vapi托管的MCP服务器
先决条件
快速开始
- 得到你的 Vapi API密钥 从 Vapi仪表板.
- 安装并运行服务器(请参阅 Claude桌面设置 或 发展).
- 使用您的MCP客户端呼叫Vapi助理、创建呼叫和管理电话号码。
Claude桌面设置
- 打开 克劳德桌面版 并按
Cmd + ,(Mac)或Ctrl + ,(Windows)打开 设置. - 去 开发者 选项卡。
- 点击 编辑配置 打开
claude_desktop_config.json. - 在下面添加MCP服务器配置(请参阅 模型上下文协议用户快速入门 详细信息)。
- 重新启动克劳德桌面 保存配置后。
本地配置
通过以下方式在本地运行Vapi MCP服务器 npx:
{
"mcpServers": {
"vapi-mcp-server": {
"command": "npx",
"args": [
"-y",
"@vapi-ai/mcp-server"
],
"env": {
"VAPI_TOKEN": "<your_vapi_token>"
}
}
}
}
远程配置
连接到Vapi的远程MCP服务器(无需本地安装):
{
"mcpServers": {
"vapi-mcp": {
"command": "npx",
"args": [
"mcp-remote",
"https://mcp.vapi.ai/mcp",
"--header",
"Authorization: Bearer ${VAPI_TOKEN}"
],
"env": {
"VAPI_TOKEN": "<your_vapi_token>"
}
}
}
}
Claude Desktop使用示例
- 创建或导入 电话号码 在 Vapi仪表板.
- 创建新 助手 (例如,使用“预约时间表”模板) Vapi仪表板.
- 确保Claude Desktop已配置Vapi MCP服务器,并重新启动应用程序。
- 让克劳德发起或安排一个电话。示例:
示例1:请求立即呼叫
I'd like to speak with my ShopHelper assistant to talk about my recent order. Can you have it call me at +1234567890?
示例2:安排未来的通话
I need to schedule a call with Mary assistant for next Tuesday at 3:00 PM. My phone number is +1555123456.
示例3:使用动态变量调用
I want to call +1234567890 with my appointment reminder assistant. Use these details:
- Customer name: Sarah Johnson
- Appointment date: March 25th
- Appointment time: 2:30 PM
- Doctor name: Dr. Smith
在助手提示中使用变量值
这 create_call action通过以下方式支持动态变量 assistantOverrides.variableValues。在助手的提示中使用双花括号: {{variableName}}.
带变量的助手提示示例
Hello {{customerName}}, this is a reminder about your appointment on {{appointmentDate}} at {{appointmentTime}} with {{doctorName}}.
默认变量
这些变量在提示中可用,无需传递 variableValues:
| 变量 | 描述 |
|---|---|
{{now}} |
当前日期和时间(UTC) |
{{date}} |
当前日期(UTC) |
{{time}} |
当前时间(UTC) |
{{month}} |
本月(UTC) |
{{day}} |
当前月份(UTC) |
{{year}} |
本年度(UTC) |
{{customer.number}} |
客户电话号码 |
有关默认变量和日期/时间格式,请参阅 Vapi文档.
远程MCP
您可以从任何MCP客户端远程使用Vapi的MCP服务器。
流式HTTP(推荐)
- 端点:
https://mcp.vapi.ai/mcp - 使用 流式HTTP 传输并发送您的Vapi API密钥作为承载令牌。
- 标题示例:
Authorization: Bearer your_vapi_api_key_here
SSE(已弃用)
- 端点:
https://mcp.vapi.ai/sse - 使用 上海证券交易所 传输并发送您的Vapi API密钥作为承载令牌。
- 标题示例:
Authorization: Bearer your_vapi_api_key_here
支持的操作和工具
Vapi MCP服务器公开了以下工具:
辅助工具
| 工具 | 说明 |
|---|---|
list_assistants |
列出所有Vapi助手 |
create_assistant |
创建新的Vapi助手 |
update_assistant |
更新现有的Vapi助手 |
get_assistant |
通过ID获取Vapi助手 |
呼叫工具
| 工具 | 说明 |
|---|---|
list_calls |
列出所有Vapi呼叫 |
create_call |
创建出站呼叫(即时或预定;支持 assistantOverrides.variableValues) |
get_call |
获取特定通话的详细信息 |
电话号码工具
| 工具 | 说明 |
|---|---|
list_phone_numbers |
列出所有Vapi电话号码 |
get_phone_number |
获取特定电话号码的详细信息 |
Vapi工具
| 工具 | 说明 |
|---|---|
list_tools |
列出所有Vapi工具 |
get_tool |
获取特定工具的详细信息 |
注:
create_call通过以下方式支持调度(即时或未来)和动态变量assistantOverrides.variableValues.
发展
# Install dependencies
npm install
# Build the server
npm run build
# Run with MCP inspector (for testing)
npm run inspector
要在Claude Desktop中使用本地构建,请将配置指向构建文件:
{
"mcpServers": {
"vapi-local": {
"command": "node",
"args": [
"<path_to_vapi_mcp_server>/dist/index.js"
],
"env": {
"VAPI_TOKEN": "<your_vapi_token>"
}
}
}
}
测试
单元测试
使用模拟;没有真正的Vapi API调用。
npm run test:unit
端到端测试
需要有效的 VAPI_TOKEN 并执行真正的API调用。
export VAPI_TOKEN=your_token_here
npm run test:e2e
运行所有测试
npm test
参考文献
作者和联系人
KuchikiRenji
| GitHub | github/库奇奇 |
| 电子邮件 | KuchikiRenji@outlook.com |
| Discord 的中文翻译是“不和谐”或“纷争”。 | kuchiki_renji |
对于问题、功能请求或贡献,请打开 问题 或通过上述渠道联系。