Voice interface for Claude Code: talk to your agent and it talks back while it works.
Copy the AI prompt to install this server into Claude Code, Cursor, or another agent β or use 1-click editor setup below.
π‘ Paste the JSON block into your client's configuration file under mcpServers, then restart the application.
Talk to Claude Code while it works β Jarvis-style voice coding. It's your voice that's noisy, not your code.
Claude speaks short summaries aloud. An always-on listener turns your speech into messages Claude receives mid-task, without stopping it β no push-to-send, no copy-pasting transcripts. Step away from the keyboard and keep steering your agent.
Speech-to-text and text-to-speech run on the Grok (xAI) Voice API β extremely cheap in practice (a small one-time budget lasts months of daily use).
The backend ships as a hardware-free Docker image
(noisy/noisy-coding):
the dashboard browser tab is the microphone and the speaker. You need
Docker and a browser β no Python, no git, no environment variables.
The setup command starts the published image and walks you through first contact. Then finish in the browser at http://127.0.0.1:8765: paste your xAI API key (console.x.ai) and click the amber ENABLE TAB AUDIO banner β that one click makes the tab your microphone and speaker. Keep the tab open and just talk.
Prefer staying inside Claude Code? Same thing, four commands:
/plugin marketplace add noisy/noisy-coding β
/plugin install noisy-coding@noisy β /reload-plugins β
/noisy-coding:setup.
Other setups β plain Docker without the plugin, native install with hardware mic/speakers, remote hosts, all configuration knobs β live in docs/INSTALL.md.
All speech logic lives in one listener daemon β the single owner of
the microphone, the playback queue and the speakers. The MCP server is a
thin messenger that forwards speak requests; Claude Code hooks deliver
your transcribed speech back into the session (see
docs/hooks.md).
| Tool | What it does |
|---|---|
speak(text, interrupt?) | Queues text for speech and waits until it has played. Voice/speed/language come from the daemon (dashboard character), not the call. |
announce(text) | Fire-and-forget variant: returns immediately, plays in the background. |
change_voice(voice_id) | Deliberately switches this agent's voice (persists, shows on the dashboard). |
list_voices() | Lists the built-in Grok voices (ara, eve, leo, rex, β¦). |
MIT Β© Krzysztof Szumny
No reviews yet β be the first to share how this listing worked for you.
Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.
[](https://allmcps.com/mcp/noisy-coding)<a href="https://allmcps.com/mcp/noisy-coding"><img src="https://allmcps.com/api/badge/noisy-coding?style=directory" alt="Noisy Coding on AllMCPs" /></a>