"What was that song on P3 twenty minutes ago" is answerable here because the API keeps play history per channel with timestamps and full credits — artist, composer, label — not just a title. Around that, the live and schedule tools make a morning briefing possible in one exchange: what is on now, the latest Ekot bulletin, and the traffic for your area. Everything reads; nothing plays audio, so what you get back is a link and metadata rather than a stream.
An MCP server over Sveriges Radio's open API, covering four things Swedish public radio publishes: live output across every channel, the music actually played, the podcast and programme catalogue, and regional traffic messages.
- What is playing right now across every channel or on one of them, the full channel list from P1 to P4 and the local stations, and a channel's schedule for a date — `get_all_rightnow`, `get_channel_rightnow`, `list_channels`, `get_channel_schedule`
- News programmes listed and the most recent bulletins fetched, for a summary of what has happened today — `list_news_programs`, `get_latest_news_episodes`
- The song on air with the one before and the one after it, and play history for a channel over a time range, for a programme, or for a single episode — with title, artist, composer, album, label, producer, lyricist and timestamps — `get_playlist_rightnow`, `get_channel_playlist`, `get_program_playlist`, `get_episode_playlist`
- Programmes searched with relevance ranking, opened in detail, browsed across all 15 categories, and checked for when they air — `search_programs`, `get_program`, `list_program_categories`, `get_program_schedule`
- Episodes listed, full-text searched, opened with their audio files, and the latest one fetched for a programme — `list_episodes`, `search_episodes`, `get_episode`, `get_latest_episode`
- Podcast files for a programme listed and read with their metadata, and broadcasts available over a 30-day window, including the upcoming ones for a programme — `list_podfiles`, `get_podfile`, `list_broadcasts`, `get_program_broadcasts`
- Traffic messages by area, with the areas themselves listed and resolvable by GPS position — `get_traffic_messages`, `get_traffic_areas`
No account and no key — Sveriges Radio's API is open. It runs locally over stdio: the npm package name is `sverigesradio-mcp` (1.3.0), built from a clone with `npm install` and `npm run build`, then registered by pointing your client at `dist/index.js`. The project is independent of Sveriges Radio, and the API it uses is no longer actively maintained by them although it still serves — worth knowing before you build something that depends on it long-term.
One command — npx -y github:isakskogstad/Sveriges_Radio-MCP
