# VoiceMode

> Lets you talk with your coding agent out loud: it speaks its replies and listens for yours, through OpenAI or local Whisper and Kokoro.

VoiceMode adds natural voice conversations to Claude Code and other agents that run MCP servers. Your agent speaks to you through your speakers, listens through your microphone, stops recording when you stop talking, and treats what you said as your next message. It's an open-source project by Mike Bailey (MIT licensed), made for the moments when your hands or eyes are busy: walking to a meeting, cooking while you debug, or resting your eyes after hours at the screen.

What you can do with it
- Hold a spoken back-and-forth with your agent while it works
- Have it narrate what it's doing without waiting for a reply, or ask several questions in one go
- Choose the voice, speaking speed and speech provider
- Start, stop, check and read the logs of local Whisper (speech-to-text) and Kokoro (text-to-speech) services
- Keep the floor while it does background work, so another agent on the same voice channel doesn't cut in

How it connects
It runs on your computer as a local MCP server from the voice-mode package on PyPI (uvx voice-mode), with Python 3.10 or later on Linux, macOS, Windows (native or WSL) or NixOS. You need a microphone and speakers. Speech goes to OpenAI (set OPENAI_API_KEY) or any OpenAI-compatible service, or to local Whisper and Kokoro services, which keep it private and work offline. Its installer (uvx voice-mode-install) sets up system dependencies such as FFmpeg and PortAudio and offers to install the local services. Claude Code users can also add it as a plugin from Mike Bailey's own marketplace (mbailey/voicemode).

Good to know
- Without an OpenAI API key, it needs the local Whisper and Kokoro services running. Their models download the first time they start (about 500 MB for the recommended pair).
- It uses local services when they're available; they share OpenAI's API, so it can switch between them.
- It's an independent project, not made by Anthropic or OpenAI.

- Type: Plugin
- Made by: Voicemode
- Category: Media
- Formats: Local MCP, Claude plugins
- Version: latest
- Website: https://voicemode.dev
- Source: https://github.com/mbailey/voicemode
- Page: https://pluginboard.ai/plugins/voicemode

## Works with

- Claude
- GitHub Copilot
- Cursor
- Claude Code
- Codex
- Antigravity
- Gemini CLI
- OpenClaw
- OpenCode
- Hermes Agent

## Install

You'll need:

- `OPENAI_API_KEY` (optional): OpenAI API key for cloud-based STT/TTS (optional - local services can be installed)
- `VOICEMODE_DEBUG` (optional): Enable debug mode with detailed logging (true/false)
- `VOICEMODE_SKIP_TTS` (optional): Skip TTS and show text only for faster response (true/false)
- `VOICEMODE_PREFER_LOCAL` (optional): Prefer local services over cloud when available (true/false, default: true)
- `VOICEMODE_AUDIO_FORMAT` (optional): Audio format: pcm, mp3, wav, flac, aac, opus (default: pcm)
- `VOICEMODE_WHISPER_MODEL` (optional): Whisper model: tiny, base, small, medium, large (default: base)
- `VOICEMODE_DISABLE_SILENCE_DETECTION` (optional): Disable silence detection for continuous recording (true/false)

Replace each `<NAME>` placeholder with your own value.

### Claude

Add to claude_desktop_config.json:

```json
{
  "mcpServers": {
    "voicemode": {
      "command": "uvx",
      "args": [
        "voice-mode==9.0.1"
      ]
    }
  }
}
```

### GitHub Copilot

Add to VS Code: vscode:mcp/install?%7B%22name%22%3A%22voicemode%22%2C%22command%22%3A%22uvx%22%2C%22args%22%3A%5B%22voice-mode%3D%3D9.0.1%22%5D%7D

Run in your terminal:

```shell
code --add-mcp '{"name":"voicemode","command":"uvx","args":["voice-mode==9.0.1"]}'
```

Copilot CLI:

```shell
copilot mcp add voicemode -- uvx voice-mode==9.0.1
```

### Cursor

Add to Cursor: cursor://anysphere.cursor-deeplink/mcp/install?name=voicemode&config=eyJjb21tYW5kIjoidXZ4IiwiYXJncyI6WyJ2b2ljZS1tb2RlPT05LjAuMSJdfQ%3D%3D

Add to .cursor/mcp.json:

```json
{
  "mcpServers": {
    "voicemode": {
      "command": "uvx",
      "args": [
        "voice-mode==9.0.1"
      ]
    }
  }
}
```

### Claude Code

Run in your terminal:

```shell
claude mcp add voicemode -- uvx voice-mode==9.0.1
```

### Codex

Run in your terminal:

```shell
codex mcp add voicemode -- uvx voice-mode==9.0.1
```

### Antigravity

Add to ~/.gemini/config/mcp_config.json:

```json
{
  "mcpServers": {
    "voicemode": {
      "command": "uvx",
      "args": [
        "voice-mode==9.0.1"
      ]
    }
  }
}
```

### Gemini CLI

Run in your terminal:

```shell
gemini mcp add voicemode uvx voice-mode==9.0.1
```

### OpenClaw

In a terminal: Run openclaw mcp add voicemode --command uvx, with --arg before each argument (voice-mode==9.0.1) and --env NAME=value for each variable it needs.

### OpenCode

Run in your terminal:

```shell
opencode mcp add voicemode -- uvx voice-mode==9.0.1
```

### Hermes Agent

Add to ~/.hermes/config.yaml:

```json
{
  "mcp_servers": {
    "voicemode": {
      "command": "uvx",
      "args": [
        "voice-mode==9.0.1"
      ]
    }
  }
}
```

---
From Pluginboard (https://pluginboard.ai).
