MCP-native · Works with any agent

Your AI tools find you — no terminal switch

When your agent needs input, a popup appears on your screen. Reply by voice from anywhere and keep moving — set up in 60 seconds.

Free download · works with Claude Code, Cursor, Windsurf and more

Integrations

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.

Before you start

All coding tool integrations use the Prodius MCP bridge. Install it once:

pip install prodius-mcp

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 Code

Claude finds you on screen — no need to switch back to the terminal.

Easiest way
"Install the Prodius MCP server so you can reach me without me switching to the terminal, and add the Prodius usage protocol from https://prodius.ai/connect/#teach-your-agent to my CLAUDE.md"

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:

claude mcp add prodius -- prodius-mcp

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.

Voice permission prompts (optional)

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:

"hooks": { "PreToolUse": [ { "matcher": "*", "hooks": [{ "type": "command", "command": "prodius-permission-hook" }] } ] }

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.

Enable voice push (optional)

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:

claude --dangerously-load-development-channels server:prodius

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).

Verify

First, confirm the server is registered. In a new terminal:

claude mcp list

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.

Troubleshooting
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.

Popup doesn't appear? Check that Prodius is running and Voice Bridge is on. Verify prodius-mcp --version works from your shell.

Claude doesn't receive the answer? Check your microphone works in Prodius (try a regular dictation). Restart Claude Code after adding the config — an existing session won't pick up newly registered MCP servers.

Voice push not working? Make sure you started Claude Code with the --dangerously-load-development-channels server:prodius flag. Pin the modal (click the pin icon) before the session expires, then speak.

Cursor

Cursor needs input? A popup finds you — answer without switching back to the editor.

Configure

Add to ~/.cursor/mcp.json (create it if it doesn't exist):

Verify

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.

Troubleshooting
Server not showing in Cursor? Restart Cursor after editing mcp.json. Check the JSON is valid (no trailing commas).

Popup doesn't appear? Confirm Prodius is running with Voice Bridge enabled.

Windsurf

Windsurf needs you mid-task. Answer from any app — no context switch.

Configure

Add to ~/.codeium/windsurf/mcp_config.json (create directories if needed):

Verify

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.

Troubleshooting
Config directory doesn't exist? Run mkdir -p ~/.codeium/windsurf first, then create the file.

Server not connecting? Restart Windsurf after saving the config file.

Codex CLI

Codex works autonomously. When it needs you, the popup finds you on screen.

Configure

Add to ~/.codex/config.toml (global) or .codex/config.toml (project):

[mcp_servers.prodius] command = "prodius-mcp" env = { PRODIUS_AGENT_NAME = "Codex CLI" }

Or add via CLI: codex mcp add prodius -- prodius-mcp

Verify

Start Prodius with Voice Bridge on. Run Codex and give it a task that requires confirmation. A popup should appear on your screen.

Troubleshooting
Popup doesn't appear? Check that Prodius is running and Voice Bridge is on. Verify prodius-mcp is on your PATH.

Config not picked up? Codex reads from ~/.codex/config.toml (global) or .codex/config.toml (project root). Restart Codex after editing.

Claude Cowork

Cowork handles background tasks. When it needs a decision, you get a popup.

Configure

Cowork automatically picks up MCP servers from your Claude Desktop config. Add to claude_desktop_config.json:

Verify

Start Prodius with Voice Bridge on. Open Claude Desktop, start a Cowork task that needs your input. A popup should appear on your screen.

Troubleshooting
Server not showing? Check Settings > Connectors in Claude Desktop. Restart Claude Desktop after editing the config.

Popup doesn't appear? Make sure Prodius is running with Voice Bridge enabled.

Any MCP Tool or Script

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.

MCP configuration

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.

HTTP API

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:

curl -X POST http://127.0.0.1:5555/mcp/ask \ -H "Authorization: Bearer $PRODIUS_TOKEN" \ -H "Content-Type: application/json" \ -d '{"question": "Deploy to staging?", "agent_name": "Build Script"}'

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.

Ideas

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.

Teach your agent

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.

Common questions

Do I need the Prodius desktop app running?

Yes. Voice Bridge works through the desktop app. If Prodius isn't running, connected tools won't be able to ask you questions.

Does this send my voice to the cloud?

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.

Can I use multiple integrations at the same time?

Yes. If two questions arrive at once, they queue and you answer them one at a time.

The prodius-mcp command is not found.

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.

What is voice push?

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.

What happens if I don't answer?

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.