Skip to main content
Glama

radio-browser-mcp ♫

MCP server for Radio-Browser internet radio + Claude Code status line with audio spectrum.

♫ BBC Radio 1 ▂▄▆█▇▅▃▂▃▅▇█

Features

  • MCP Server — control internet radio from Claude Code via natural language

  • Radio-Browser — browse 30,000+ global stations by popularity, genre, country

  • Auto-start mpv — no manual mpv --input-ipc-server needed

  • Status Line — real-time now-playing + spectrum visualization

  • Cross-platform — macOS / Linux / Windows

Related MCP server: radiomcp

Quick Start

# Install
cd radio-browser-mcp
./install.sh          # macOS / Linux
# .\install.ps1       # Windows PowerShell

# Restart Claude Code, then use:
# "Play some jazz" → Claude calls browse_radio(tag="jazz")
# "下一首" → Claude calls next_station()

MCP Tools

Tool

Description

play_station(name)

Search Radio-Browser and play by name.

browse_radio(limit, tag, country, language)

Browse popular stations from Radio-Browser.

play_by_uuid(uuid)

Play a Radio-Browser station by UUID.

stop()

Stop playback.

now_playing()

Get current track + spectrum.

next_station()

Play next popular station.

random_station(tag?)

Play random station (optionally by genre).

CLI Usage

# Run MCP server (default, used by Claude Code)
radio-browser-mcp

# Browse popular radio stations
radio-browser-mcp --browse
radio-browser-mcp --browse --tag jazz --limit 5

# Status line output (used by statusLine config)
radio-browser-mcp --status

# Stop
radio-browser-mcp --stop

# Check setup
radio-browser-mcp --check

# Test spectrum visualization
radio-browser-mcp --spectrum

Requirements

  • Python 3.10+

  • mcp package (auto-installed)

  • httpx package (auto-installed)

  • mpv (for playback)

  • ffmpeg (for spectrum capture, optional - animated fallback without it)

  • pywin32 (Windows only, for named pipe support)

License

MIT

Available Tools

7 tools
browse_radioA

Browse popular radio stations from Radio-Browser global directory. Stations are sorted by popularity (click count).

Args: limit: Number of stations to show (default 20, max 100) tag: Filter by genre/tag (e.g. "jazz", "rock", "news", "classical") country: Filter by ISO country code (e.g. "US", "GB", "DE", "JP") language: Filter by language (e.g. "english", "german", "chinese")

Inputs: tag, limit, country, language. Returns: result

next_stationA

Play the next popular station from Radio-Browser.

Cycles through the top global stations. Each call advances to the next one.

Inputs: no named parameters. Returns: result

now_playingA

Get current track info with spectrum visualization.

Inputs: no named parameters. Returns: result

play_by_uuidA

Play a Radio-Browser station by its UUID (from browse_radio results). Automatically reports the click to Radio-Browser.

Args: uuid: Station UUID from browse_radio results

Inputs: uuid (required). Returns: result

play_stationB

Play a station by name from Radio-Browser global directory. Partial name matching is supported (case-insensitive).

Args: name: Station name (e.g. "BBC Radio 1", "jazz fm")

Inputs: name (required). Returns: result

random_stationA

Play a random station from Radio-Browser.

Args: tag: Optional genre filter (e.g. "jazz", "rock", "classical", "news"). If empty, picks from top global stations.

Inputs: tag. Returns: result

stopA

Stop mpv playback.

Inputs: no named parameters. Returns: result

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A3.8/5.0

    Scored across 7 tools

    Disambiguation4/5

    Tools are mostly distinct: browse for discovery, separate play methods by name/UUID/random/next, now_playing for current track, stop to halt. The multiple play-start tools could cause confusion, but descriptions clarify their specific triggers.

    Naming Consistency3/5

    All names use snake_case, but verb style varies: 'browse_radio' and 'play_station' are imperative, while 'next_station', 'now_playing', and 'random_station' are descriptive noun phrases, creating minor inconsistency.

    Tool Count5/5

    7 tools cover core radio browsing and playback workflows well. The count is appropriate without being excessive or sparse.

    Completeness4/5

    Covers essential operations: browsing with filters, multiple play methods, now-playing info, and stop. Minor gaps exist, such as listing available tags/countries or controlling playback volume, but agents can accomplish main tasks.

    Maintenance

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      Not graded
      quality
      F
      maintenance
      Internet radio for Claude and your terminal with ~25,000 verified live stations from 197 countries. Control playback, search, and get recommendations through natural language.
      MIT