Turns an agent's output into audio: narration, podcast, or music.
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.
Your agent's output as audio.
Turns an agentic coding session into something you can listen to instead of read. Narration is the core β spoken monologue, two-host podcast, or reactive music β so you can follow a Claude Code / Codex / Gemini agent's progress while away from the desk, commuting, or multitasking. Reactive music (below) is one style among several.
Styles: spoken monologue Β· two-host podcast Β· reactive music (lo-fi, synthwave, ambient, classical, 8-bit).
Modes: ambient stream (narrates live as the agent works) Β· task summary (one message when a task finishes) Β· session recap (a longer podcast/musical wrap).
Timing: sync/live (updates as the agent works) or async (after a turn/session) β user-configurable, per-hook. See spec.md.
βΆ Watch the launch video β four coding agents, four radios, each tuned to its own station.
https://github.com/pooriaarab/viberadio/raw/main/branding/launch-video.mp4
Works offline, on-device, with zero keys. v0 routes all narration through the
on-device tier of the shared @pooriaarab/vibe-core model cascade β macOS say /
Linux espeak / spd-say β so it runs with nothing configured and nothing leaves
your machine. Bring-your-own-key TTS (ElevenLabs, OpenAI, β¦) plugs into the same
cascade later; the createNarrator() seam is already there.
Use it as a library too:
viberadio mcp starts a stdio MCP server exposing narrate({ text, style? }) and
recap({ events, style?, mode? }) tools, so an agent can ask for an audio recap
mid-session. Add it to your client's MCP config:
viberadio start β runs in background, hooks into git/terminal eventsnpm install -g viberadio-fm/viberadio to control playbackText-to-speech follows the shared @vibe/core cascade and is mix-and-match: use
your agent's existing provider if it does audio β or a TTS key you supply
(ElevenLabs, OpenAI, etc.) β or a local/on-device voice so it works with no key
and no network. Different styles can use different models β e.g. an ElevenLabs voice
for the monologue, two distinct voices for the podcast hosts, on-device TTS when
offline. Per-style voice/model selection is a user setting.
@vibe/core cascade (agent provider β BYO key β on-device); Web Speech /
system TTS as the local tier@vibe/core)Interactive, self-contained UX prototype (no build, no network): open
docs/prototype.html in a browser. The "Speak this line"
button uses your browser's on-device speech synthesis β real, offline narration.
Runs on your own machine. Nothing leaves it unless you opt a flow into a hosted
provider; the on-device tier works fully offline. Enforced by the @vibe/core
consent model.
Part of the Vibe Suite β companion tools for agentic coding CLIs (Claude Code, Codex, Cursor, Gemini, Grok, pi, Kimi, and other harnesses). Ships as CLI + npm package + MCP server.
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/viberadio-fm)<a href="https://allmcps.com/mcp/viberadio-fm"><img src="https://allmcps.com/api/badge/viberadio-fm?style=directory" alt="Viberadio Fm on AllMCPs" /></a>