When your agent needs input, a popup appears on your screen. Reply by voice from anywhere and keep moving — set up in 60 seconds.
You're reading docs, reviewing a PR, or deep in another app. Claude needs you — a popup appears on your screen. Speak your answer. With voice push, talk to Claude anytime without touching the terminal.
Cursor needs your input mid-task. Answer by voice from wherever you are — no need to switch back to the editor.
Windsurf asks for guidance while you're deep in something else. Speak your response without breaking focus.
Codex runs autonomously in the background. When it needs a decision, the popup finds you — answer and let it continue.
Cowork handles tasks in the background. When it needs a decision, you get a popup — answer without leaving what you're doing.
Any tool that speaks MCP can use Prodius. Build scripts, CI pipelines, or custom agents — if it can call an MCP server, it can reach you.
A colleague messages you on Slack. Speak your reply from your desk — it lands in the thread.
Reply to bots and teammates by voice. Your spoken answer posts directly in the channel.
Your smart home asks if you want the garage closed. Answer out loud — no phone needed.
Also works with Cline, GitHub Copilot, JetBrains AI Assistant, VS Code, Zed, Continue.dev, Amazon Q Developer, Roo Code, Aider, Sourcegraph Cody, Replit, and any tool that supports MCP servers or HTTP.
All coding tool integrations use the Prodius MCP bridge. Install it once:
Requires Python 3.10+. Prodius desktop app must be running with Voice Bridge enabled in settings.
If pip refuses with externally-managed-environment (Homebrew Python, modern Debian/Ubuntu/Fedora), use pipx install prodius-mcp instead.
Claude finds you on screen — no need to switch back to the terminal.
Paste this into Claude Code and it will set everything up for you — install, config, and the protocol that teaches Claude how to actually use Prodius.
Or configure manually
Add to your MCP settings (e.g. ~/.claude/settings.json):
The hooks.SessionStart entry resets the conversation when you run /clear or start a new session, so Prodius doesn't carry stale context from a previous conversation. The top-level env makes the agent name available to the hook.
Or add it with a single command:
The CLI only adds the MCP server. For session reset on /clear, also add the hooks and top-level env from the config file tab to your ~/.claude/settings.json.
By default, Claude Code prompts in the terminal when a tool wants to run (Bash, Edit, Write). With the Prodius permission hook installed, those prompts appear in the desktop overlay instead — speak "allow once", "always allow", "deny", or "deny always".
Add to ~/.claude/settings.json alongside the mcpServers block above:
Merge this PreToolUse entry into your existing hooks block (don't replace the SessionStart hook). When Prodius isn't running or doesn't answer, the hook falls through to the normal terminal prompt — never blocks you.
By default, the microphone popup only appears when Claude asks you a question — you answer, and it dismisses. With voice push enabled, the microphone button stays available at all times, so you can send voice messages to Claude whenever you want: give new instructions, interrupt with a change of plan, or add context without waiting to be asked.
To enable voice push, start Claude Code with the channels flag:
Channels are in research preview and require Claude Code v2.1.80+. The --dangerously-load-development-channels flag is the correct form for custom MCP servers like Prodius — the stable --channels flag is reserved for Anthropic's curated channel allowlist (Telegram, Discord, iMessage, fakechat).
First, confirm the server is registered. In a new terminal:
You should see a line like prodius: prodius-mcp - ✓ Connected. If it says ✗ Failed to connect or shows an HTTP URL instead of the prodius-mcp command, jump to troubleshooting below.
Then start Prodius with Voice Bridge on, open a new Claude Code session (existing sessions won't see the new tools until restarted), and ask it to do something that needs confirmation. A popup should appear on your screen. Speak your answer. If you enabled voice push, the microphone button should remain visible after the answer is sent.
claude mcp list shows Failed to connect with an HTTP URL? The server was registered with the wrong transport — usually by pasting https://prodius.ai/connect/ as if it were an MCP endpoint. It's a docs page, not a server. Fix it with claude mcp remove prodius followed by claude mcp add prodius -- prodius-mcp (note the -- separator).prodius-mcp not found after install? If you used pipx, run pipx ensurepath and open a new terminal so ~/.local/bin (Linux/macOS) or %USERPROFILE%\.local\bin (Windows) is on your PATH. If you used pip --user, the same fix applies to the user-site bin/Scripts directory.prodius-mcp --version works from your shell.--dangerously-load-development-channels server:prodius flag. Pin the modal (click the pin icon) before the session expires, then speak.
Cursor needs input? A popup finds you — answer without switching back to the editor.
Add to ~/.cursor/mcp.json (create it if it doesn't exist):
Start Prodius with Voice Bridge on. Open Cursor — the Prodius server should appear in Cursor's MCP panel. Trigger an AI action that asks for input. Speak your response.
mcp.json. Check the JSON is valid (no trailing commas).Windsurf needs you mid-task. Answer from any app — no context switch.
Add to ~/.codeium/windsurf/mcp_config.json (create directories if needed):
Start Prodius with Voice Bridge on. Open Windsurf and check the Prodius server is connected in MCP settings. Trigger a Cascade action that needs your input. Speak your answer.
mkdir -p ~/.codeium/windsurf first, then create the file.Codex works autonomously. When it needs you, the popup finds you on screen.
Add to ~/.codex/config.toml (global) or .codex/config.toml (project):
Or add via CLI: codex mcp add prodius -- prodius-mcp
Start Prodius with Voice Bridge on. Run Codex and give it a task that requires confirmation. A popup should appear on your screen.
prodius-mcp is on your PATH.~/.codex/config.toml (global) or .codex/config.toml (project root). Restart Codex after editing.
Cowork handles background tasks. When it needs a decision, you get a popup.
Cowork automatically picks up MCP servers from your Claude Desktop config. Add to claude_desktop_config.json:
~/Library/Application Support/Claude/claude_desktop_config.json%APPDATA%\Claude\claude_desktop_config.json~/.config/Claude/claude_desktop_config.jsonStart Prodius with Voice Bridge on. Open Claude Desktop, start a Cowork task that needs your input. A popup should appear on your screen.
Anything that speaks MCP — or can make an HTTP request — can reach you.
The prodius-mcp shim is a standard MCP server over stdio. Any tool that supports MCP servers can use it to pop questions on your screen and capture your voice reply.
The shim exposes two tools: ask_user (blocks until you answer) and notify (fire-and-forget). Configure it like any MCP server:
Set PRODIUS_AGENT_NAME to identify your tool in the popup header.
You can also call Prodius directly over HTTP — no MCP needed. Any script or tool that can make a POST request can trigger a popup:
Find your token in Prodius settings (also stored in the desktop app's settings.json as PRODIUS_MCP_TOKEN). Set $PRODIUS_TOKEN in your shell to that value. PowerShell users: replace $PRODIUS_TOKEN with $env:PRODIUS_TOKEN. The endpoint blocks until you answer and returns your response as JSON.
A build script that asks "Deploy to staging?" before proceeding. A CI pipeline that alerts you when a job fails. A cron job that checks in periodically. If it can start prodius-mcp or call an HTTP endpoint, it can reach you.
Installing the MCP server only tells the agent the tools exist. This snippet teaches it how to use them well.
Paste the block below into your agent's instruction file — ~/.claude/CLAUDE.md for Claude Code (global), or the project-level CLAUDE.md, .cursorrules, AGENTS.md, or equivalent for other tools. Without it, agents tend to dump everything into the modal headline, skip the terminal summary, or have sub-agents ping you directly.
Adjust the field names if your tool uses different terminology — the rules generalize to any voice-overlay use of an MCP ask-style tool.
Yes. Voice Bridge works through the desktop app. If Prodius isn't running, connected tools won't be able to ask you questions.
Prodius transcribes your voice the same way as regular dictation. The transcribed text is sent back to the tool that asked. Audio is not stored.
Yes. If two questions arrive at once, they queue and you answer them one at a time.
If you installed with pipx, run pipx ensurepath and open a new terminal — pipx puts binaries in ~/.local/bin (Linux/macOS) or %USERPROFILE%\.local\bin (Windows), which isn't always on PATH by default. If you installed with bare pip and got externally-managed-environment, switch to pipx install prodius-mcp.
Without voice push, the microphone popup only appears when Claude asks you a question. With voice push enabled (using the channels flag in Claude Code), the microphone stays available so you can speak to Claude at any time — even while it's working. This is useful for giving follow-up instructions, corrections, or extra context mid-task.
The popup times out after about 20 seconds. If you start speaking within that time, it stays open. The tool receives a timeout notice and can retry or proceed without your input.