# viberadio-fm [Health: Active]

**Category:** 🎧 Text-to-Speech  
**Repository:** https://github.com/pooriaarab/viberadio  
**GitHub Stars:** 0  
**Views:** 1  
**Installs:** 0  
**Upvotes:** 0  
**Directory Page:** https://allmcps.com/mcp/viberadio-fm

## Description
Turns an agent's output into audio: narration, podcast, or music.

## Claude Desktop Quick Installation
Install path detected from listing signals. Uses `npx` (confidence: high):

```json
"mcpServers": {
  "viberadio-fm": {
    "command": "npx",
    "args": ["-y","viberadio-fm"]
  }
}
```

## Documentation

## What viberadio-fm does

The viberadio-fm MCP server adds audio narration to agent workflows. An agent can send a line of text to the `narrate` tool or provide session events to `recap`. The result is intended for listening while coding, commuting, or handling another task.

Narration supports three documented styles: a spoken monologue, a two-host podcast, and reactive music. Recaps can be generated as a task summary or a longer session recap, while an ambient stream can narrate activity as work happens. Timing can be configured for live updates or for processing after a turn or session.

## How it works

Run the CLI's MCP subcommand to start a standard input/output server. The MCP client launches `viberadio mcp`, then invokes the available tools with structured arguments. `narrate` accepts `text` and an optional `style`. `recap` accepts `events`, with optional `style` and `mode` values.

The default voice path uses the on-device tier of the shared Vibe model cascade. On macOS, Linux, and other supported local environments, this can use system speech commands such as `say`, `espeak`, or `spd-say`. The documented default does not require credentials or send audio text away from the machine. Hosted text-to-speech providers can be supplied later through the cascade, including providers such as ElevenLabs and OpenAI.

The package also exposes JavaScript and TypeScript functions for applications that do not need MCP. `narrate` speaks text, `recap` builds and speaks a recap, and `buildRecapScript` converts events into a script without producing audio.

## Setup and configuration

Install the package globally with npm:

```sh
npm i -g viberadio-fm
```

Register the MCP process in a client configuration using the `viberadio` server name, the `viberadio` command, and `mcp` as its argument:

```json
{
  "mcpServers": {
    "viberadio": { "command": "viberadio", "args": ["mcp"] }
  }
}
```

No environment variables or API keys are required for the documented on-device setup. Voice and model selection can be varied by style when a different local or hosted provider is configured.

## Tools and capabilities

- `narrate({ text, style? })` speaks an individual message.
- `recap({ events, style?, mode? })` creates an audio recap from session events.
- Monologue, two-host podcast, and reactive-music styles are documented.
- Recap timing supports live or post-turn/session workflows.
- Local speech works offline when the on-device tier is used.

## Limitations and notes

The MCP interface documents two tools only: `narrate` and `recap`. Features such as recording, visualizers, OBS streaming, collaborative playback, and desktop controls are described as broader project features, not as MCP tool parameters. Reactive music is listed as a style, but the MCP excerpt does not specify a separate music-control tool.

The viberadio-fm MCP server depends on the host's available speech system for its local tier. Provider-specific behavior, voice availability, and hosted TTS configuration are not detailed in the MCP setup instructions.

_Full upstream README: https://allmcps.com/mcp/viberadio-fm/readme_

