使用说明
语音mcp
一个本地MCP服务器,为Claude Code提供语音工具——使用Whisper的语音转文本和使用Supertonic的文本转语音。
特性
语音转文本(耳语)
- 倾听与确认 -录制语音,用Whisper转录,返回转录本确认
- 听_是_否 -二元决策的快速是/否检测
- 使用本地转录 更快的耳语 (没有API调用)
- 自动静音检测以停止录制
- 音频蜂鸣声表示录音开始/结束
文本转语音(Supertonic)
- 说 -向用户大声朗读文本
- 使用局部合成 Supertonic (没有API调用)
- 快速设备生成(66M参数)
组合工具
- speak_and_listen -先说话,然后听完整的回答(减少往返次数)
- speak_and_confirm -先说,然后听是/否(减少往返次数)
需求
- Python 3.10+
- 紫外线 包管理器
- 麦克风(用于语音转文本)
- 扬声器/耳机(用于文本转语音)
安装
-
克隆存储库:
git clone https://github.com/jochiang/voice-mcp.git cd voice-mcp -
安装依赖项:
uv sync -
添加到您的Claude Code MCP设置中(
.mcp.json在您的项目或~/.claude/settings.json):{ "mcpServers": { "voice": { "command": "uv", "args": ["run", "--directory", "/path/to/voice-mcp", "voice-mcp"] } } } -
重新启动Claude Code以加载MCP服务器。
用法
语音输入
通过说出以下内容来触发语音输入:
- “让我口头解释一下”
- “我口头告诉你”
克劳德会打电话的 listen_and_confirm,您将听到一声蜂鸣声,说出您的回答,并在录制停止时听到另一声蜂鸣。克劳德将把成绩单重复一遍以供确认。
对于是/否问题,Claude可以使用 listen_for_yes_no 它将你的回答解释为“是”、“否”或“不清楚”。
语音输出
请克劳德回答:
- “大声说出来”
- “读给我听”
克劳德会打电话的 speak 通过扬声器合成和播放音频。
语音对话
对于来回语音对话,Claude可以使用组合工具:
speak_and_listen-问一个问题,等待完整的答案speak_and_confirm-提出是/否问题并获得确认
这些通过在单个工具调用中结合说话+倾听来减少延迟。
动态静音检测
所有听力工具都接受 silence_seconds 参数(默认值:2.5,最小值:2.0)。Claude可以根据上下文调整每次通话的静音时间——例如,如果用户需要更多时间思考,可以使用更长的静音时间,或者缩短静音时间以快速确认。
自定义语音行为
工具描述包括克劳德说话的默认指导。要自定义此行为,请向您的 CLAUDE.md 文件。示例:
# Voice preferences
- When speaking, be brief and conversational
- Describe code changes at a high level, don't read syntax
- Summarize URLs instead of spelling them out
你可以鼓励不同的风格——更详细的解释、不同的语气等。
备注
- 首次运行下载:型号首次使用时自动下载-Whisper small(~460MB)和Supertonic(~260MB)
- 静音检测:静音2.5秒后停止录制(每次通话可配置,至少2.0秒)
- 平台:在Windows上开发,应适用于macOS/Linux
故障排除
TTS无音频输出:
- 某些DAC需要立体声输出-默认情况下,语音工具输出立体声
- 检查默认音频输出设备
录制停止过快:
- 静音阈值可能对您的麦克风过于敏感
- 调整
SILENCE_THRESHOLD在src/voice_mcp/audio.py(默认值:0.01) - 克劳德也可以通过更高的
silence_seconds每次调用的参数(默认值:2.5,最小值:2.0)
录制停止得不够快:
- 克劳德可以通过一个较低的
silence_seconds参数(最小2.0秒)
配置
耳语(语音转文本)
Whisper模型默认为 small 在CPU上运行。要更改此设置,请编辑 src/voice_mcp/transcribe.py:
# Model options: tiny, base, small, medium, large-v3
_model = WhisperModel("small", device="cpu", compute_type="int8")
对于GPU加速,请更改 device="cpu" 到 device="cuda" (需要cuDNN)。
Supertonic(文本转语音)
默认语音为 M1。可用的声音可以在 超高音声音库.
许可证
麻省理工学院