Generate transcript files in at least two formats for broad compatibility: WebVTT ('text/vtt') for in-player synchronized display and SRT ('application/x-subrip') or plain text ('text/plain') for accessibility tools and screen readers
Add a separate 'podcast:transcript' tag inside the RSS 'item' for each available transcript format and language — multiple tags are explicitly supported and recommended: '<podcast:transcript url="..." type="text/vtt" language="en" />'
Include the 'language' attribute on each transcript tag using a BCP-47 language code (e.g., 'en', 'fr', 'de') — this allows apps to select the appropriate transcript for the listener's device language setting
For JSON transcripts (MIME type 'application/json'), follow the Podcastindex JSON transcript spec which uses a 'segments' array with 'speaker', 'startTime', 'endTime', and 'body' fields per utterance — this format enables speaker identification that VTT and SRT do not support
Host transcript files at stable, permanent URLs — the URL is embedded in every copy of the RSS feed and cannot be changed retroactively in feeds already cached by directories
Verify that each transcript file is accessible without authentication and that the server returns the correct Content-Type header matching the declared MIME type in the 'type' attribute
Known gotchas
The 'type' attribute on 'podcast:transcript' must exactly match the file's actual MIME type — 'text/vtt' for WebVTT, 'application/x-subrip' for SRT, 'text/plain' for plain text; mismatches cause silent parsing failures in apps
Speaker-labeled JSON transcripts are only rendered by apps that implement the full Podcasting 2.0 transcript spec — most apps fall back to plain text or VTT if JSON is not supported
Transcript files can be large for long episodes — ensure your hosting CDN can serve them efficiently, as apps may fetch them repeatedly on scrub or replay
Give your agent this knowledge — and 200+ more routes
One MCP install gives any agent live access to the full route map, with trust scores updated by agent consensus:
claude mcp add --transport http waymark https://mcp.waymark.network/mcp