Talk with your AI assistant out loud on a Mac, with on-device speech recognition (whisper.cpp).
Runs on your machine from its package; the steps are below.
At most: moves money, runs code or commands, deletes data, or sends messages for you.
Odel charges nothing per call. The publisher may charge for its own service.
Runs locally over stdio
This server isn't hosted โ your MCP client launches it from a package registry. Use one of the commands below, or drop the config into your client (e.g. Claude Desktop).
Run
npx -y mac-voice-mcp
MCP client config
{
"mcpServers": {
"mac-voice": {
"command": "npx",
"args": [
"-y",
"mac-voice-mcp"
]
}
}
}
Talk with Claude out loud on your Mac.
Natural turn-taking ยท on-device speech recognition ยท no audio leaves your computer
Claude speaks through your Mac's speakers, listens to your answer the way a person would, and gets back what you said as text. Speech recognition runs on your Mac, so no audio leaves your computer.
Claude โโspeak_and_listen("Tests pass. Open the PR?")โโโถ ๐ "Tests pass. Open the PR?"
๐ you: "yes, and tag Priya"
Claude โโโโโโโโโโโโโโโโโ "Yes, and tag Priya." โโโโโโโโโ whisper.cpp on your Mac
Perfect for:
doctor checks the whole pipeline on your Mac and scores it PASS, WARN or FAIL.You need a Mac (Apple Silicon recommended) and Node.js 22 or newer.
1. Install.
Claude Code (recommended). Install the plugin:
/plugin marketplace add jeet0007/mac-voice-mcp
/plugin install mac-voice-mcp@mac-voice-mcp
Claude Desktop and other apps: add npx -y mac-voice-mcp@latest as a stdio MCP server. See Install for each app.
2. Set up. Ask Claude to "set up voice" (or run /mac-voice-mcp:setup). It checks for SoX, whisper.cpp and a speech model, shows you what's missing, and installs it only after you say yes.
3. Allow the microphone. The first time Claude listens, macOS asks. Click Allow.
4. Talk. Run /mac-voice-mcp:talk fix the flaky login test, or ask Claude to "check in with me by voice when you need a decision". Reply after the chime.
Claude Code asks for approval every time Claude wants to speak, which breaks the flow of a conversation. To allow voice turns, add the tool to permissions.allow in ~/.claude/settings.json:
{
"permissions": {
"allow": [
"mcp__plugin_mac-voice-mcp_voice-mcp__speak_and_listen",
"mcp__voice-mcp__speak_and_listen"
]
}
}
The first name is for the plugin, the second for claude mcp add voice-mcp โฆ. Leave voice_setup out, so installs still ask you first.
The server has two tools and two prompts:
| What it does | |
|---|---|
speak_and_listen | Speaks a short message, listens for one conversational turn and returns the transcript. |
voice_setup | Checks what's installed. After you agree, it installs only what's missing. |
setup prompt | A guided setup: it checks, asks you, installs, then runs a spoken test. |
voice_mode prompt | A hands-free session where Claude checks in by voice at natural points. |
Claude is told how to write for the ear: short sentences, no markdown, file names instead of paths. If code or links still get through, the server rewrites them before speaking. In Claude Code, the plugin also keeps a voice conversation in voice until you type. More in Using it.
Run npx -y mac-voice-mcp@latest doctor first. It tests setup, the voice and transcription, and your speakers and mic, and tells you which part fails.
| Symptom | Fix |
|---|---|
| "microphone returned pure digital silence" | Allow the mic for the app (Claude, Cursor or your terminal) in System Settings โ Privacy & Security โ Microphone, then restart it. |
| It cuts me off while I'm thinking | Set VOICE_MCP_END_SILENCE_MS=1800. |
| The voice sounds robotic | Download a Premium macOS voice or install Kokoro. See Voices. |
| It asks for approval every turn | See Allow voice turns without prompts. |
More in Troubleshooting.
This project was designed and written with Claude, in conversation. A human (me) steered it, tested it on a real Mac and checked the test suite, but most of the code was written by AI. Read the Disclaimer before you rely on it.
mac-voice-mcp is a free, open-source personal project. It's provided as is, with no warranty of any kind, and the authors aren't liable for any damage or loss from using it. See the LICENSE for the exact terms. In plain words:
speak_and_listen, and plays sound through your speakers.Trademarks. Apple, Mac, macOS and Siri are trademarks of Apple Inc. Claude is a trademark of Anthropic. mac-voice-mcp is an independent project, not affiliated with, sponsored or endorsed by Apple or Anthropic.
mac-voice-mcp doesn't bundle any of these. It uses them when they're on your Mac, and installs them only with your consent. Each one comes under its own license.
| Software | Used for | License |
|---|---|---|
| SoX | Recording from the mic, Kokoro playback | GPL-2.0 |
| whisper.cpp | Speech-to-text | MIT |
| Whisper models (OpenAI) | Speech-to-text | MIT |
macOS voices (say) | The built-in voice | Apple's macOS license |
| kokoro-js (optional) | The Kokoro voice | Apache-2.0 |
| Kokoro-82M model (optional) | The Kokoro voice | Apache-2.0 |
| espeak-ng (optional, inside kokoro-js) | Turning text into sounds for Kokoro | GPL-3.0 |
| ffmpeg (fallback, never installed by setup) | Recording, if SoX is missing | LGPL-2.1 / GPL |
MIT ยฉ Jeet