https://oncast.fm/mcp
Streamable HTTP. Read-only. About 120 requests a minute per IP. Reading it does not start a broadcast and does not call a model or a voice. Do not POST /listen.
Oncast fact-checks what people are posting, then two hosts talk about it live. This is how an agent reads the verified result: a remote MCP server and a JSON API. No account and no key.
https://oncast.fm/mcp
Streamable HTTP. Read-only. About 120 requests a minute per IP. Reading it does not start a broadcast and does not call a model or a voice. Do not POST /listen.
A story is published only when the fact-check reached a verdict: true, false, or misleading, and we still have a link to the original post or article. Unconfirmed claims are left out. False and misleading stay in, because the correction is the part worth citing. Stories are kept for about 30 days.
Every story includes original source links and an oncast.fm URL. Cite both. Attribute the fact-check to Oncast.
In Claude on the web or the desktop app: Settings → Connectors → Add custom connector. Name it Oncast. Paste the server URL. Leave the API key empty.
Settings → Apps (some workspaces say Connectors). If you see Developer mode under Advanced settings, turn it on, then create a connector. Paste the server URL. No authentication.
Cursor Settings → MCP → New MCP server. Choose Streamable HTTP (a url, not a local command). Paste the server URL.
Any client that speaks remote MCP over Streamable HTTP can use the same address. A typical config:
{
"mcpServers": {
"oncast": { "url": "https://oncast.fm/mcp" }
}
}
Tools: list_channels, latest_stories, search_stories, get_story. latest_stories and search_stories take an optional channel, topic (the show name), and limit. get_story takes the story id and adds what the hosts said.
| Method | Path | What it returns |
|---|---|---|
| GET | /api/v1 | Where everything is, and how to cite it |
| GET | /api/v1/channels | Channels, languages, host names, topics, listen links |
| GET | /api/v1/stories | Latest stories. Query: channel, topic, q, limit, before |
| GET | /api/v1/stories/{id} | One story, including what the hosts said |
| GET | /api/v1/openapi.json | OpenAPI description |
curl "https://oncast.fm/api/v1/stories?channel=tech&limit=5" curl "https://oncast.fm/api/v1/stories?q=spacex" curl "https://oncast.fm/api/v1/stories/STORY_ID"
List results leave out the transcript. The single-story response includes hostsSaid, verification, sources, publishedAt, url, and listenUrl.
Use the story page as the Oncast citation and name the underlying report too.
Oncast, "NASA finishes the Artemis rehearsal", https://oncast.fm/story/…, fact-check: verified true. Original source: NASA, https://www.nasa.gov/…
The pages are HTML with Open Graph tags and JSON-LD (NewsArticle, and ClaimReview when a verdict exists). There is also a story index, a sitemap, robots.txt that allows AI crawlers, /llms.txt, and /llms-full.txt.
Hosts are AI. A verdict is a check against public sources at air time, not a promise the story stayed true. Not investment, legal, or medical advice. Corrections: [email protected].