Skip to main content

Podcast Recommendations — Podcast Discovery MCP 🎰🎙️

CI License: MIT PyPI

Podcast recommendations beyond the charts: long-tail podcast discovery, recommendations, and random spins — randomized probe queries surface shows the charts recycle forever, and every pick carries its feed URL, cadence, and typical episode length.

Ask any agent: "find me a podcast about Byzantine history I haven't heard of" or "surprise me with a podcast"podcast-recommendations is the tool that answers. Zero API keys, zero configuration. Built on Apple's keyless iTunes podcast endpoints (verified) and direct RSS feed reads: a 300KB feed becomes ~200 tokens of show intelligence, all arithmetic done server-side.

Why this exists

Search APIs return the same chart toppers for every query; LLMs recommend the same famous podcasts everyone already knows. podcast-recommendations fixes discovery:

  • Randomized probe queries ("lesser known true crime", "history dispatches") fish the long tail instead of recycling the top 10.
  • Hard filters remove dead shows, one-episode experiments, explicit content (opt-in), and anything on your exclude list — with publisher-level dedupe so multi-picks stay diverse.
  • Feed peeks compute cadence (daily/weekly/…) and typical episode length server-side — commute-fit facts the model never has to calculate.
  • Honest attribution: every pick says which probe surfaced it. Discovery you can trust.

Tools

Tool What it does
roulette The discovery spin: long-tail picks by topic (or fully random), 1–5 distinct shows
trending Apple's charts overall or by genre, enriched with feed URLs + episode counts
peek Read any podcast RSS feed → cadence, typical length, latest episodes
list_genres Genre names accepted by roulette/trending
skills_list / skill_read Updatable usage playbooks (fetched from this repo at runtime)

Plus prompts: surprise-me, commute-pick.

Quickstart

# 1-Line Universal Installer (auto-configures Claude Desktop, Cursor, Claude Code, VS Code, ...)
curl -fsSL "https://podcast-recommendations.builditwithai.xyz/install" | bash

# Or run directly via your preferred runtime:
uvx podcast-recommendations
npx -y podcast-recommendations

Example

User:  find me a podcast about true crime I haven't heard of

roulette(topic="true crime", exclude=["Serial", "Casefile"])
→ picks: [{
     title: "Milk and Murder", episode_count: 23,
     cadence: "biweekly", typical_episode: "24m",
     why_picked: "surfaced by the probe query “true crime chronicles”…",
     feed_url: "https://www.spreaker.com/show/4529395/episodes/feed",
     recent_episodes: ["24. Lindsey Baum - Part Two (2022-05-11, 10m)", ...] }]

Telemetry & privacy

Anonymous usage telemetry (no PII, no queries, no paths) via the fleet standard (schema v2, dual-endpoint fallback). Opt out any time: PODCAST_RECOMMENDATIONS_TELEMETRY=false or DO_NOT_TRACK=1.

Development

uv venv && uv pip install -e ".[dev]"
DO_NOT_TRACK=1 .venv/bin/python -m pytest tests/ -q   # unit + live + e2e

Live tests hit the real iTunes endpoints and real podcast feeds; they skip themselves when offline.

License

MIT

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

podcast_recommendations-0.1.0.tar.gz (32.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

podcast_recommendations-0.1.0-py3-none-any.whl (28.3 kB view details)

Uploaded Python 3

File details

Details for the file podcast_recommendations-0.1.0.tar.gz.

File metadata

  • Download URL: podcast_recommendations-0.1.0.tar.gz
  • Upload date:
  • Size: 32.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for podcast_recommendations-0.1.0.tar.gz
Algorithm Hash digest
SHA256 e24d85ca4bde695fe26230ded27ac763da49a485cff81abcd52f4929eca1cc2a
MD5 f67c7cb259960843ae670fab8d6832a7
BLAKE2b-256 1bd86dda888a5d732c139f50183e1d4cbaaf7cc2489d8e8348e4d4f9cbb3828c

See more details on using hashes here.

File details

Details for the file podcast_recommendations-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: podcast_recommendations-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 28.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for podcast_recommendations-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 d183919e7b2c6f5fb5b8963da585eb134c8690471104da74fc6361b7370ec255
MD5 685d68372905819c7fcd80521b94e5d6
BLAKE2b-256 aec8ee03bac2ef1fb0bfbb3d6926cb1ca1dfa37eedce10d678220c970d574d9e

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page