voice-dialog
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@voice-dialogask me if I want to deploy, then listen for my reply"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
voice-dialog
An MCP server that adds voice conversation capabilities to AI Agents, also usable as a command-line tool. When the Agent finishes its work, it can speak to tell you, and it can also ask you questions and listen to your answers. Speech recognition runs on local whisper, and synthesis uses the system's built-in TTS. No internet connection and no audio transmission throughout.
What it can do
你(没看屏幕):"搞定了吗?"
Agent(出声):"代码写完了,测试全过。要提交吗?" ← ask_by_voice
你:"先不提交,我看看再说" ← listen 收到,本地转写
Agent(出声):"好,先留着。" ← speakTool | Purpose |
| One-way announcement (task complete, milestone) |
| Record + recognize (you dictate instructions) |
| Atomic Q&A: speak once → listen once, never auto-continues listening (prevents infinite loops) |
| One-click initialization (see below) |
| Environment check (inspects only, installs nothing) |
Related MCP server: Pipecat MCP Server
Quick start
git clone https://github.com/VictorHuang0843/voice-dialog.git
cd voice-dialog
# 没装 uv?先来这个(Windows 用 install.ps1):
# curl -LsSf https://astral.sh/uv/install.sh | sh
uv run voice-dialog initinit is a 7-step fully automated guide: install uv → install dependencies (uv even installs Python for you) → download the whisper model (464MB, automatically uses hf-mirror on Chinese networks) → microphone permission test → TTS sound test → print the MCP registration command. If any step fails, it gives you the fix command for that step; just fix it and re-run.
Try a phrase:
uv run voice-dialog speak "语音系统就绪" --lang zh
uv run voice-dialog ask "请说话" --wait-start 60
# 你会听到:高亮上扬"叮↑"= 开始说话 → 停 3 秒 → 低沉"咚…咚↓"= 录音结束Connect to your Agent
Any MCP client (Claude Code, Codex, Cursor, LoopX...):
{
"mcpServers": {
"voice-dialog": {
"command": "uv",
"args": ["--project", "/你的路径/voice-dialog", "run", "voice-dialog", "serve"]
}
}
}One-line registration in Claude Code:
claude mcp add voice-dialog -s user -- uv --project /你的路径/voice-dialog run voice-dialog serveTools that don't support MCP: call the CLI directly, uv run voice-dialog speak/listen/ask "...".
Claude Code Skill (optional, teaches the Agent when to speak/when to listen): copy skills/voice-dialog/ to ~/.claude/skills/.
Supported platforms
macOS | Windows | Linux | |
Speech recognition | Tested and working | Works | Works |
Speech synthesis | System TTS | SAPI | Requires espeak-ng |
Prompt sounds | Works | Works | Requires ffmpeg |
Language auto-detection (whisper supports ~100 languages), VD_LANG=zh can pin it; model size adjustable via VD_MODEL=small.
FAQ
Symptom | Solution |
init reports uv not installed | Run the curl install command above, then reopen the terminal |
Microphone probe fails | macOS: System Settings → Privacy & Security → Microphone → check your terminal; Windows: Settings → Privacy → Microphone |
Model download fails/is extremely slow |
|
TTS has no sound | Check whether the system output device is hijacked by a virtual sound card (BlackHole, etc.) |
Code changes don't take effect | MCP server is a resident process: |
Privacy
Speech is recognized locally (faster-whisper), text is played via system TTS. No cloud APIs are called, and no audio is uploaded.
License
MIT
Model notes
What is downloaded by default? whisper small (int8 quantized, ~464MB), the sweet spot between Chinese/English recognition quality and speed. It downloads automatically on first listen/init, then caches locally (macOS/Linux: ~/.cache/huggingface/hub/, Windows: %USERPROFILE%\.cache\huggingface\hub\), never downloaded again.
How is the download source chosen? The download logic isn't hardcoded in the code — when constructing WhisperModel("small", ...), the faster-whisper library automatically downloads from HuggingFace. It defaults to the official source huggingface.co; if the official source is unreachable, the code automatically switches to the domestic mirror hf-mirror.com and retries (implemented by setting the HF_ENDPOINT environment variable). Chinese users can also pin it manually in advance:
export HF_ENDPOINT=https://hf-mirror.com # 加进 ~/.zshrc 一劳永逸Want a larger model? Controlled by the environment variable VD_MODEL, takes effect on re-run:
VD_MODEL | Size | Characteristics |
| ~75MB | Fastest, average accuracy |
| ~142MB | Fast, fine for daily use |
| ~464MB | Balanced, recommended |
| ~1.5GB | More accurate, M-chip transcription goes from seconds to tens of seconds |
| ~3GB | Most accurate but slowest, not recommended for short conversations |
VD_MODEL=base uv run voice-dialog listen # 单次用 baseInstall from zip (no git clone needed)
Download the zip (or have a friend send it to you) → extract it wherever you like, e.g. ~/tools/ → open a terminal and enter the directory, then let the AI take it from there:
In Claude Code (or any AI coding tool that can execute commands), send it the following verbatim:
帮我安装这个目录里的 voice-dialog 项目:
1. cd 到这个目录跑 uv run voice-dialog init(没装 uv 就先装:curl -LsSf https://astral.sh/uv/install.sh | sh)
2. init 全绿后,把打印出来的 claude mcp add 命令执行掉
3. 最后跑 uv run voice-dialog doctor 给我看结果It will install everything and register it with Claude Code. Restart the session and it's ready to use.
You can also do it manually, just two commands:
cd 解压后的目录
uv run voice-dialog init # 结束时打印注册命令,复制执行If you're not familiar with the terminal on Mac: after extracting, right-click the folder → Services → New Terminal at Folder, and you're in the directory.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- FlicenseNot gradedqualityNot gradedmaintenanceA local voice interface providing high-performance speech recognition and natural text-to-speech with voice cloning capabilities. It enables AI assistants to speak, listen, and engage in character-based voice conversations through integrated MCP tools.

Pipecat MCP Serverofficial
AlicenseNot gradedqualityCmaintenanceEnables voice conversations and screen capture for AI agents via MCP-compatible clients, using Pipecat for speech-to-text and text-to-speech, with support for browser, WebRTC, and phone transport.134BSD 2-Clause "Simplified"- AlicenseNot gradedqualityCmaintenanceEnables AI agents to generate high-quality speech with 54+ voices in multiple languages via MCP tools.17Apache 2.0
- AlicenseNot gradedqualityAmaintenanceGive your AI agents the ability to listen. Microphone capture and speech-to-text tools for MCP-compatible agents.1357Apache 2.0
Related MCP Connectors
Give AI agents real phone numbers, messages, and voice calls via MCP.
OCR, transcription, file extraction, and image generation for AI agents via MCP.
Voice and chat for AI agents — Discord, Teams, Meet, Slack, Zoom, Telegram, WhatsApp, NC Talk, SIP
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/VictorHuang0843/voice-dialog'
If you have feedback or need assistance with the MCP directory API, please join our Discord server