使用说明
项目简介
voice-call-mcp-server 是一个开源的 Model Context Protocol (MCP) 服务器,旨在弥合 AI 助手与真实世界行动之间的差距。它允许 AI 模型(如 Claude)发起电话呼叫、处理实时语音对话并执行需要语音通信的复杂任务。本实现使用 Twilio 进行电话呼叫管理,OpenAI 进行实时语音处理,并提供预构建的 Prompt 模板,方便用户快速构建 AI 语音应用。
主要功能点
- 发起电话呼叫: 通过 Twilio API 实现外呼功能,让 AI 助手可以主动拨打电话。
- 实时语音处理: 集成 OpenAI 实时模型,处理通话中的音频流,实现实时的语音对话能力。
- 预置 Prompt 模板: 提供常用呼叫场景(如餐厅预订)的 Prompt 模板,方便用户快速开始使用。
- 自动公共 URL 隧道: 使用 ngrok 自动创建公共 URL 隧道,无需手动配置即可进行外网访问,方便本地开发和测试。
- 安全凭据处理: 安全地处理 Twilio 和 OpenAI 的 API 凭据。
安装步骤
-
克隆仓库
git clone https://github.com/lukaskai/voice-call-mcp-server.git cd voice-call-mcp-server -
安装依赖并构建
npm install npm run build
服务器配置
要将此 MCP 服务器与 MCP 客户端(例如 Claude Desktop)连接,您需要在客户端配置文件中添加服务器配置信息。以下是 Claude Desktop 的配置示例,其他 MCP 客户端的配置方式类似。
Claude Desktop 配置 (claude_desktop_config.json):
{ "mcpServers": { "voice-call": { "command": "node", "args": ["/path/to/your/mcp-new/dist/start-all.cjs"], "env": { "TWILIO_ACCOUNT_SID": "your_account_sid", // 您的 Twilio Account SID "TWILIO_AUTH_TOKEN": "your_auth_token", // 您的 Twilio Auth Token "TWILIO_NUMBER": "your_e.164_format_number", // 您的 Twilio 电话号码 (E.164 格式) "OPENAI_API_KEY": "your_openai_api_key", // 您的 OpenAI API Key "NGROK_AUTHTOKEN": "your_ngrok_authtoken" // 您的 ngrok Authtoken } } } }
配置说明:
- '"voice-call"': 服务器名称,在 Claude Desktop 🔨 菜单中显示。
- '"command": "node"': 启动服务器的命令,这里使用 Node.js 运行。
- '"args": ["/path/to/your/mcp-new/dist/start-all.cjs"]': 启动命令的参数,指向编译后的服务器入口文件 'start-all.cjs' 的路径。请替换 '/path/to/your/mcp-new' 为您实际的仓库路径。
- '"env"': 环境变量配置,包含了服务器运行所需的 API 密钥和凭据。
- 'TWILIO_ACCOUNT_SID', 'TWILIO_AUTH_TOKEN', 'TWILIO_NUMBER': 您的 Twilio 账户信息,从 Twilio 控制台获取。
- 'OPENAI_API_KEY': 您的 OpenAI API 密钥,从 OpenAI 平台获取。
- 'NGROK_AUTHTOKEN': 您的 ngrok Authtoken,用于自动创建公共 URL 隧道。
请注意:
- 您需要将 '/path/to/your/mcp-new/dist/start-all.cjs' 替换为 'dist/start-all.cjs' 文件在您电脑上的绝对路径。
- 在配置 'env' 中的环境变量时,请将 '"your_account_sid"'、'"your_auth_token"' 等占位符替换为您的真实凭据。
- 电话号码必须使用 E.164 格式,例如 '+11234567890'。
基本使用方法
配置完成后,重启您的 MCP 客户端 (如 Claude Desktop)。如果配置正确,您应该能在客户端的工具菜单 (🔨) 中看到 "Voice Call" 选项。您可以通过自然语言指令与 AI 助手进行交互,指示它拨打电话。
示例指令:
- 'Can you call +11234567890 and let them know I'll be 15 minutes late for our meeting?' (呼叫号码并告知对方迟到)
- 'Please call Delicious Restaurant at +11234567890 and make a reservation for 4 people tonight at 7:30 PM.' (呼叫餐厅预订餐位)
AI 助手将根据您的指令,调用 voice-call-mcp-server 发起电话呼叫,并使用 OpenAI 处理语音对话,完成您的任务。
信息
分类
通信与社交