radiobrowser-api-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| GRPC_PORT | No | Host port to map to the container's gRPC port 50051 when deploying with Docker Compose. For example, GRPC_PORT=50099 maps host port 50099 to container port 50051. | 50051 |
| RADIO_MCP_AUTH_TOKEN | No | Optional token required for mutating tools (register_station_click, vote_for_station, resolve_station_stream_url, add_station) when running in gRPC mode. If set, these tools require `authorization: Bearer <token>` metadata. If unset, all tools are open. |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| get_now_playingA | Get the track currently playing on a radio station. |
| search_radio_stationsB | Search the Radio Browser directory for stations matching a name. |
| advanced_station_searchA | Advanced station search with field filters (GET /json/stations/search). |
| list_all_stationsB | List stations in the directory (GET /json/stations). Paginate with offset/limit. |
| get_station_by_uuidA | Get one station by its stationuuid (GET /json/stations/byuuid/{uuid}). |
| find_stations_by_nameC | Find stations by name (GET /json/stations/byname[/exact]/{name}). |
| find_stations_by_countryA | Find stations by country, e.g. "Australia" (GET /json/stations/bycountry[/exact]/{country}). |
| find_stations_by_country_codeC | Find stations by ISO 3166-1 country code, e.g. "AU" (GET /json/stations/bycountrycodeexact/{code}). |
| find_stations_by_stateB | Find stations by state/region (GET /json/stations/bystate[/exact]/{state}). |
| find_stations_by_languageC | Find stations by broadcast language, e.g. "english" (GET /json/stations/bylanguage[/exact]/{language}). |
| find_stations_by_tagB | Find stations by tag/genre, e.g. "chill" (GET /json/stations/bytag[/exact]/{tag}). |
| find_stations_by_codecA | Find stations by stream codec, e.g. "MP3" (GET /json/stations/bycodec[/exact]/{codec}). |
| get_top_voted_stationsC | Highest-voted stations (GET /json/stations/topvote/{count}). |
| get_most_clicked_stationsC | Most-clicked stations (GET /json/stations/topclick/{count}). |
| get_recently_clicked_stationsC | Most recently clicked stations (GET /json/stations/lastclick/{count}). |
| get_recently_updated_stationsB | Most recently changed/added stations (GET /json/stations/lastchange/{count}). |
| get_station_check_historyA | Automated stream-check history for a station (GET /json/checks). |
| register_station_clickA | Register a click (listen) for a station (GET /json/click/{uuid}). |
| vote_for_stationB | Vote for a station (GET /json/vote/{uuid}). NOTE: increments the public vote counter. |
| resolve_station_stream_urlA | Get the current stream URL for a station (GET /json/url/{uuid}). Also counts as a click. |
| add_stationA | Submit a new station to the directory (POST /json/add). Only name + url are required. |
| list_countriesC | Countries in the directory with station counts (GET /json/countries). |
| list_country_codesA | ISO 3166-1 country codes in the directory with station counts (GET /json/countrycodes). |
| list_codecsA | Stream codecs with station counts (GET /json/codecs[/{filter}]). |
| list_statesA | States/regions with station counts (GET /json/states[/{country}]). |
| list_languagesA | Broadcast languages with station counts (GET /json/languages[/{filter}]). |
| list_tagsB | Tags/genres with station counts (GET /json/tags[/{filter}]). |
| get_directory_statsB | Directory server statistics (GET /json/stats): station counts, checks, clicks, etc. |
| list_directory_serversB | Known directory mirror servers (GET /json/servers). |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/maxim75/radiobrowser-api-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server