Internet radio MCP server + TUI player - 55,000+ stations, Airtune API, mpv playback
Project description
radiomcp
Internet radio for Claude and your terminal. ~25,000 verified live stations, 197 countries.
pip install radiomcp && radiomcp
First run auto-registers with Claude Desktop / Claude Code. Restart Claude and you're done.
한국어 · Powered by Airtune API
Two ways to use it
| Command | What it does | |
|---|---|---|
| MCP server | radiomcp |
Connects to Claude — control radio in plain language |
| TUI player | radio |
Interactive terminal player with search and favorites |
MCP — control radio with Claude
pip install radiomcp && radiomcp
Auto-detected and registered on first run. Or manually add to ~/.claude/settings.json:
{
"mcpServers": {
"radio": { "command": "radiomcp" }
}
}
Then just ask Claude:
"Play some late-night jazz" "Find Korean news stations" "What's playing right now?" "Recommend something for focus work" "Play a French station" "Stop the radio"
MCP Tools
| Tool | Description |
|---|---|
play |
Play by URL or search query |
stop |
Stop playback |
now_playing |
Current station and track |
search |
Search by keyword, genre, country |
recommend |
AI recommendations by mood or context |
get_favorites / add_favorite |
Saved stations |
get_history |
Listening history |
set_volume / get_volume |
Volume control |
get_popular |
Most popular stations |
search_by_country |
Stations by country code |
search_by_language |
Stations by language |
recognize_song |
Identify currently playing song |
get_radio_status |
Player status |
TUI Player
radio
Interactive terminal player. Type to search, numbers to play.
Search
> jazz # keyword
> korea news # combined
> japan classical # multilingual
> jazz HQ # high quality only (192k+)
Supports 50+ languages — Korean, Japanese, Chinese, Russian, Arabic and more are normalized automatically.
| Key | Function |
|---|---|
g |
Genre browser |
c |
Country browser |
p |
Popular stations |
/ |
Search |
! |
Toggle: local DB ↔ DB + live API |
Playback & Volume
| Key | Function |
|---|---|
1–9 |
Play station from list |
r |
Resume last station |
s |
Stop |
v / v+ / v- / v50 |
Show / up / down / set volume |
q |
Quit |
Favorites
| Key | Function |
|---|---|
f |
View favorites |
+ / - |
Add / remove current station |
< / > |
Previous / next favorite |
AI & Song Info
| Key | Function |
|---|---|
a |
Personalized recommendations |
w |
Time-based mood recommendations |
i |
Recognize current song (Shazam-like) |
n |
Current song info |
DJ Mode
RADIOCLI_DJ=1 radio
AI-voiced DJ commentary between tracks. Supports 10 languages.
Player Backends
Auto-detected: mpv → vlc → ffplay → browser
| Backend | Install |
|---|---|
| mpv (recommended) | brew install mpv / apt install mpv |
| vlc | brew install vlc / apt install vlc |
| ffplay | brew install ffmpeg / apt install ffmpeg |
CLI
radiomcp search jazz
radiomcp play <url> "Station Name"
radiomcp stop
radiomcp now
radiomcp recommend focus
radiomcp update # Sync latest stations from Airtune API
radiomcp serve # Start HTTP API server
Environment Variables
| Variable | Description | Default |
|---|---|---|
RADIOCLI_LLM |
LLM provider: claude, openai, ollama, none |
none |
RADIOCLI_DJ |
DJ mode | 0 |
RADIOCLI_LANG |
UI language | auto-detect |
ANTHROPIC_API_KEY |
For Claude-powered features | — |
OPENAI_API_KEY |
For OpenAI-powered features | — |
OLLAMA_URL |
Ollama server URL | http://localhost:11434 |
Data
Station database (~25,000 verified live stations) stored in ~/.radiocli/ on first run.
radiomcp update # Pull latest from Airtune API
License
- Code: MIT — LICENSE
- Station data: ODbL 1.0 — DATA_LICENSE.md
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file radiomcp-1.2.1.tar.gz.
File metadata
- Download URL: radiomcp-1.2.1.tar.gz
- Upload date:
- Size: 4.1 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
719c3b10dab7b92ff20767a3789f098c4b2a12e5270ffbc385e2ecba2c66d009
|
|
| MD5 |
8ad2e37db69b45c7ef8d6714a3539c3e
|
|
| BLAKE2b-256 |
3f35745819fdc161f99bcd90a0f0d5d2579bbc0365dc58ccf267175d129f36cb
|
File details
Details for the file radiomcp-1.2.1-py3-none-any.whl.
File metadata
- Download URL: radiomcp-1.2.1-py3-none-any.whl
- Upload date:
- Size: 4.1 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2949b16326fae8c297b1dd95b3fa445f2041b4940ab5fe33c0920339feeb3d98
|
|
| MD5 |
a47c27decb9db8f34e04cfa5e59ac7e8
|
|
| BLAKE2b-256 |
f8da3008b2cf895b97b56a5824a1d8b4f6af5e2c4ce5a3d8301e9cfbe830d70e
|