# Static Radio > Static is shared live radio made of independent podcasts: every station plays one timeline, so everyone tuned in hears the same moment. Anyone can build a player for it from the public, read-only data below. No key is needed. Players stream every episode straight from the show's own host (never cached, re-hosted or proxied), play community bulletins where they fall, show a "Support" link to each show's own support page (the episode's supportUrl, from the feed's podcast:funding tag), keep to the live point (listeners don't pick episodes), respect the cache headers, send a User-Agent that names the app, and call themselves unofficial with credit and links to Static. Use only the URLs listed here; everything else is internal. ## Docs - [Developer guide](https://staticradio.app/developers.md): the schedule, working out what's live, playing from the middle with a Range request, bulletins, art, listener counts and the ground rules, with tested curl, JavaScript and Python samples. HTML version: https://staticradio.app/developers ## AI agents - [MCP server](https://staticradio.app/mcp): read-only remote MCP server (Streamable HTTP, no key) for AI assistants: what's on now, what's next, find a topic, show details, listen links. How to add it: https://staticradio.app/developers#mcp - [Agent prompt](https://staticradio.app/developers#agent-prompt): a self-contained prompt to paste into a coding agent, with the rules, the timeline algorithm, the pitfalls and how to check the result. Also in the Markdown guide, under "AI assistants and agents". ## API - [OpenAPI 3.1 spec](https://staticradio.app/openapi.json): the schedule and listener counts. - [Schedule JSON Schema](https://staticradio.app/schemas/schedule-wear.v8.json): schedule-wear.json, schema_version 8. - [Schedule](https://data.staticradio.app/schedule-wear.json): every station's loop for the broadcast day. - [Listener counts](https://staticradio.app/api/counts): live listeners per station. ## Examples - [Static for Squeezebox](https://github.com/madewith-bestpractice/static-squeezebox): the reference implementation of the timeline (StaticRadio/Schedule.pm, t/live_test.pl). - [Static for Playdate](https://github.com/madewith-bestpractice/static-playdate) - [Static for Chumby One](https://github.com/madewith-bestpractice/static-chumby) ## Optional - [Contact](mailto:hello@staticradio.app): questions about building with Static.