关于 Vapi MCP for Cursor
面向 Cursor 的 MCP 服务,将 Vapi 语音 AI 能力接入客户端。可发起外呼、管理语音助手并查询通话对话详情。
主要功能
- 01使用 Vapi 发起外呼
- 02创建和管理语音助手
- 03获取通话对话详情
适用场景
- 01通过 Vapi 发起语音外呼
- 02在 Cursor 中管理语音助手
- 03查询通话的对话内容
MCP 相关
该服务通过 MCP 向 Cursor 暴露 Vapi 工具,使用 stdio 传输。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
适用于 Cursor 的 Vapi MCP
本项目实现了一个 Model Context Protocol(MCP)服务,用于将 Vapi 的语音 AI 功能集成到 Cursor 中。
设置说明
1. 项目结构
Vapi MCP 服务的结构如下:
vapi-mcp-server/- 主服务代码src/- TypeScript 源文件dist/- 编译后的 JavaScript 输出.env- API 密钥的环境变量
2. 环境配置
在 vapi-mcp-server 目录中创建一个 .env 文件,并设置以下变量:
# Vapi API Keys
VAPI_ORG_ID=your-org-id
VAPI_PRIVATE_KEY=your-private-key
VAPI_KNOWLEDGE_ID=your-knowledge-id
VAPI_JWT_PRIVATE=your-jwt-private
# Environment
NODE_ENV=development
3. 构建服务
构建服务:
cd vapi-mcp/vapi-mcp-server
npm install
npm run build
4. 在 Cursor 中配置
重要:避免出现“Client Closed”错误
在 Cursor 的 MCP 设置中配置 Vapi MCP 服务时,请特别注意以下关键细节:
-
工作目录:必须设置
cwd参数,以确保服务在正确的目录中运行,并能正确访问.env文件。 -
环境变量:必须在配置中显式提供,即使它们已存在于
.env文件中。 -
模块类型:该服务使用 ES 模块,因此
package.json必须包含"type": "module"。
以下是 .cursor/mcp.json 的正确配置:
"Vapi Voice AI Tools": {
"command": "node",
"type": "stdio",
"args": [
"/Users/matthewcage/Documents/AA-GitHub/MCP/vapi-mcp/vapi-mcp-server/dist/index.js"
],
"cwd": "/Users/matthewcage/Documents/AA-GitHub/MCP/vapi-mcp/vapi-mcp-server",
"env": {
"VAPI_ORG_ID": "your-org-id",
"VAPI_PRIVATE_KEY": "your-private-key",
"VAPI_KNOWLEDGE_ID": "your-knowledge-id",
"VAPI_JWT_PRIVATE": "your-jwt-private",
"NODE_ENV": "development"
}
}
故障排除
Cursor 中出现“Client Closed”错误
如果你在 Cursor MCP Tools 面板中看到“Client Closed”:
- 检查工作目录:确保在 mcp.json 中正确设置了
cwd参数 - 验证环境变量:确保在配置中传入了所有必需的环境变量
- 检查模块类型:确保
package.json中包含"type": "module" - 检查权限:确保 dist/index.js 文件可执行(
chmod +x dist/index.js) - 直接测试服务:手动运行服务以检查错误:
cd vapi-mcp/vapi-mcp-server node --trace-warnings dist/index.js
找不到模块错误
如果运行时出现“Error: Cannot find module”:
- 检查工作目录:你是否在正确的目录中运行?
- 重新构建:尝试使用
npm run build重新构建项目 - 依赖项:确保使用
npm install安装了所有依赖项
可用工具
Vapi MCP 服务提供以下工具:
- vapi_call - 使用 Vapi 的语音 AI 拨打外呼电话
- vapi_assistant - 管理语音助手(创建、获取、列出、更新、删除)
- vapi_conversation - 获取通话的对话详情
经验总结
-
与 Cursor 的 MCP 集成时:
- 始终指定
cwd参数,确保服务在正确的目录中运行 - 在 MCP 配置中直接传入所有必需的环境变量
- 对于 ES 模块,确保 package.json 中包含
"type": "module",且 tsconfig.json 使用适当的模块设置 - 在 Cursor 中配置之前,先直接测试服务
- 始终指定
-
服务命令路径必须是绝对路径,并且在 Cursor MCP 配置中正确设置
-
必须使用 stdio 传输类型,才能与 Cursor 正确集成
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。