Reported issues for voicemode
Pod holds 17 of 19 problems reported by people outside the maintainer team. Issues filed by the project's own owners, members and collaborators are excluded entirely — a maintainer's release checklist is not a warning to a prospective user.
Back to voicemode.
Most discussed
Plugin .mcp.json references unreleased voicemode-mcp-launcher binary
Bug
The Claude Code plugin (installed via claude plugin install voicemode@voicemode) pulls .mcp.json from master, which references voicemode-mcp-launcher:
{
"mcpServers": {
"voicemode": {
"type": "stdio",
"command": "voicemode-mcp-launcher"
}
}
}
However, the latest PyPI release (v8.6.1) does not ship this entry point:
$ uvx --refresh --from voice-mode voicemode-mcp-launcher
An executable named `voicemode-mcp-launcher` is not provided by
[Read the thread](https://github.com/mbailey/voicemode/issues/441) · 2026-05-22 · closed · external user · 3 comments
### ESC during converse tool call disconnects MCP server entirely (requires /mcp reconnect)
## Summary
When the user presses ESC (or otherwise cancels the MCP tool call) during a `converse` session, the entire voicemode MCP server is torn down in the Claude Code client. The MCP dialog goes from `✔ connected` to `✘ failed` and requires an explicit `/mcp` reconnect before the next `/voice` will work.
Expected behavior: canceling a single tool call should cleanly abort the in-progress recording and return control to the user, but the MCP server should remain connected and ready for the
[Read the thread](https://github.com/mbailey/voicemode/issues/337) · 2026-04-15 · closed · external user · 8 comments
### VoiceMode Connect: mcp-remote OAuth redirect_uri rejected by voicemode.dev
## Problem
When using `mcp-remote` to connect to VoiceMode Connect (`https://voicemode.dev/mcp`), the OAuth authorization flow fails with:
Invalid Authorization Request Error: Invalid redirect URI
The redirect URI generated by mcp-remote is `http://localhost:5450/oauth/callback`, which voicemode.dev's OAuth server rejects.
## Steps to Reproduce
1. Add to `.mcp.json`:
```json
{"mcpServers": {"voicemode-dev": {"command": "npx", "args": ["-y", "mcp-remote", "https://voicemode.dev/mcp"]
[Read the thread](https://github.com/mbailey/voicemode/issues/329) · 2026-03-27 · closed · external user · 4 comments
### Sub-agents fail: FastMCP generates anyOf in tool schemas, rejected by Anthropic API
## Problem
Claude Code sub-agents (parallel agents) fail immediately with this error:
tools.42.custom.input_schema: input_schema does not support oneOf, allOf, or anyOf at the top level
This happens because FastMCP converts Python `Optional[T]` type hints into JSON Schema with `anyOf`:
```json
"voice": {"anyOf": [{"type": "string"}, {"type": "null"}], "default": null}
The Anthropic Messages API rejects anyOf/oneOf/allOf in tool input schemas when creating sub-agents. This
Read the thread · 2026-03-16 · closed · external user · 3 comments
Include other TTS services?
First of all, voicemode is the MCP server I never knew I wanted until I found it. Great job and I'm 100% onboard with the purpose and mission of it. Love it!
I setup an elevenlabs proxy for the openai wire format, which works very well with voicemode, but obviously it's a paid/non-private service.
Would it make sense to include things like this? or even other things like Chatterbox services locally (as opposed to just kokoro?)
Read the thread · 2025-10-24 · closed · external user · 5 comments
[Feature request] Listening for wake word
Thank you for this great project. Would there be a way to have voicemode listen for a wake word before activating recording and transcription so that Claude Code can always be listening? I have tried longer listening time but that tends to result in having to restart the mcp server. I am trying to use voicemode to be able to call Claude Code via livekit and Sip telephony.
Read the thread · 2025-09-11 · closed · external user · 12 comments
Env Settings Don't seem to be taking
Settings
From my ~/.claude.json MCP settings
"voice-mode": {
"type": "stdio",
"command": "uvx",
"args": [
"voice-mode"
],
"env": {
"VOICEMODE_DEBUG": "true",
"VOICEMODE_SAVE_AUDIO": "true",
"VOICEMODE_AUDIO_FORMAT": "pcm"
}
}
Expected
Audio files to be saved in ~/voicemode_audio/ as pcm files, as stated in the Readme.md
[Read the thread](https://github.com/mbailey/voicemode/issues/50) · 2025-08-25 · closed · external user · 10 comments
### Error: Could not speak message
Unable to start.
Not sure why, not sure where to look to debug.
fedora42, SwayWM
Error in claude-code;
voice-mode - converse (MCP)(message: "Hello! I'm Claude, and I'm ready to have a voice conversation with you. What would you like to talk about or work on today?", listen_duration: 45) ⎿ Error: Could not speak message
[Read the thread](https://github.com/mbailey/voicemode/issues/17) · 2025-07-20 · closed · external user · 14 comments
## Most recent
### Conch does not serialize concurrent calls within a single server process (streamable-HTTP), causing overlapping playback and duplicated messages
Title: Conch does not serialize concurrent calls within a single server process (streamable-HTTP), causing overlapping playback
## Summary
`Conch.try_acquire()` is documented as "true atomic locking across processes" and is backed by a file lock. But at `conch.py:337` it short-circuits:
```python
if self._acquired:
return True # Already holding it
With voicemode serve (streamable-HTTP), every connected client shares ONE process and ONE Conch instance. A second concurrent `converse
Read the thread · 2026-08-17 · open · external user · 2 comments
VoiceMode Connect: POST /consent returns empty-bodied 503, MCP OAuth can never complete
Summary
Authorising an MCP client against https://voicemode.dev/mcp cannot complete. The consent screen renders correctly, but clicking Approve results in POST https://voicemode.dev/consent returning HTTP 503 with an empty body. Because there is no body to render, the browser stays on the consent page and the button appears to do nothing — no error is surfaced to the user.
No authorization code is issued, the loopback listener is never called, and no tokens are ever written.
No
Read the thread · 2026-08-04 · open · external user · 1 comment
MCP server fails to launch when uv resolves Python 3.14 (pydantic-core source build fails)
Symptom
Claude Code plugin (voicemode@8.10.2) MCP server fails with -32000 Connection closed on launch. Running the plugin's entrypoint by hand shows why:
cd ~/.claude/plugins/cache/voicemode/voicemode/8.10.2p0
uv run voicemode --help
# 💥 maturin failed — pydantic-core 2.33.2 source build under CPython 3.14
# hint: pydantic-core was included because voice-mode depends on openai → pydantic
With CPython 3.14 installed as the newest interpreter, uv run selects it (`requires-pyth
Read the thread · 2026-07-18 · open · external user · 1 comment
Bug: Connect hooks crash when jq is not installed
Summary
All VoiceMode Connect hooks (stop-notifications.sh, connect-session-end.sh, connect-session-start.sh, check-notifications.sh, on-team-created.sh) hard-depend on jq without checking if it's installed. When jq is missing, the scripts crash due to set -o pipefail + set -o errexit. Since stop-notifications.sh fires on every session stop without || true protection, users see a hook error on every session end.
The main voicemode-hook-receiver.sh already handles t
Read the thread · 2026-03-01 · closed · outside contributor · 0 comments
Some info on the Getting Started doc is wrong
The getting started doc here https://github.com/mbailey/voicemode/blob/master/docs/tutorials/getting-started.md
Instructs us to type converse into claude, which isn't actually the correct command. Rather, we should use /voicemode:converse which does start the MCP
Read the thread · 2026-01-30 · closed · external user · 2 comments
Command to speak only instead of have a conversation
Hello @mbailey
Firstly, this mcp is incridible. Its a game changer. So thanks for your time to bring it to us.
I was able to have a conversation or a monologue where only me speak, and I want to know if have a /command where I can evoke it directly without tell to Claude about this time of conversation.
Read the thread · 2025-11-04 · closed · external user · 1 comment
Voice-mode is still not handling args
Sorry for the prolonged response to 88
I am still having the same issue where no args are being passed
> uvx --refresh voice-mode version
/Users/gregory.hunt/.cache/uv/archive-v0/vepEdsIJGBhSHyaUzVQXL/lib/python3.12/site-packages/pydub/utils.py:14: DeprecationWarning: 'audioop' is deprecated and slated for removal in Python 3.13
import audioop
/Users/gregory.hunt/.cache/uv/archive-v0/vepEdsIJGBhSHyaUzVQXL/lib/python3.12/site-packages/webr
[Read the thread](https://github.com/mbailey/voicemode/issues/89) · 2025-10-21 · closed · external user · 1 comment
### Add a fix for timeout errors in Zed when calling converse MCP function to Zed integration guide
<img width="688" height="428" alt="Image" src="https://github.com/user-attachments/assets/64c4e3f1-26c6-4634-ad83-83727a862263" />
If the AI message is too lengthy, at certain point Zed receives timeout error for this MCP tool and tried to all converse again which makes it repeat the same message again, after second timeout it gives up and stops. Make it to be major pain at the moment when working with zed.
There is a quick fix via "timeout" setting for the MCP connection.
My full working con
[Read the thread](https://github.com/mbailey/voicemode/issues/80) · 2025-10-12 · closed · external user · 1 comment
### [Feature request] config example for suppressing voicemode tool use requests
Have an action (perhaps /advanced_setup) that provides the config snippets to suppress all voicemode requests for tool uses.
Provide example and guidance to add to either local project or global config.
To maintain trust of the project, just provide the example config and guidance on where to apply it. This feature just provides the user a help page.
Stretch capability: the MVP above would be allowing "voicemode: *" but this stretch capability would enumerate all the actions and allows the
[Read the thread](https://github.com/mbailey/voicemode/issues/19) · 2025-07-26 · closed · external user · 0 comments
The remaining reports are on [the project's issue tracker](https://github.com/mbailey/voicemode/issues).