podcast-wiki
Reads episodes the user has played from shows they follow on Spotify, providing episode listings and metadata/descriptions for the podcast wiki ingestion pipeline.
Podcast Wiki
A Claude Code plugin that turns the podcasts you finish on Spotify into a wiki you can learn from: one page per topic, synthesized across every episode that touched it, every claim linked to its episode, disagreements between guests kept side by side.
You stop remembering an episode and start knowing a topic. A Karpathy-style LLM wiki, written and maintained by Claude Code.
Browse the live wiki → · Try the demo · How it works

Click for the full video with sound.
Install
In Claude Code:
/plugin marketplace add HagaiHen/podcast-wiki
/plugin install podcast-wiki@podcast-wikiTry it first: run
/podcast-wiki:demoin an empty folder. In about a minute it builds a small wiki from 3 sample episodes, with no Spotify needed.Your own podcasts: run
/podcast-wiki:setupin an empty folder. It copies the tools, createswiki/, and walks you through the Spotify login. After that,/podcast-wiki:ingest-podcastsbuilds your wiki.
Requires macOS on Apple Silicon (for local Whisper), uv, ffmpeg, a Spotify account and Claude Code. The demo needs only Claude Code.
Related MCP server: Spotify MCP Server
How it works
Spotify (episodes I've heard)
│ tools/spotify_mcp.py
▼
raw/<show>/<date>-<slug>.md ← transcript: published → Whisper → episode description
│ tools/fetch_transcript.py
▼
Claude Code follows the procedure in CLAUDE.md
▼
wiki/ concepts · hubs · episodes · people · shows · takeawaysList: an MCP server reads the episodes I've played from the shows I follow.
Fetch: for each new episode, use the published transcript if there is one. Otherwise transcribe the audio locally with mlx-whisper. The Spotify description is the last fallback.
Synthesize: Claude extends existing concept pages rather than creating near-duplicates. It rewrites each summary to integrate the new episode, links every claim to its episode and speaker, and records conflicting claims under Disagreements.
Act: actionable items go to a checklist grouped by domain, and recommended books, tools and people go to a recommendations list.
Hebrew episodes are translated to English during synthesis.
What's inside
Every page, grouped by domain. Start here. | |
One topic each (e.g. harness engineering, LLM evals, index investing). | |
Domain overviews: AI engineering, investing, knowledge management. | |
Actionable checklist, grouped by hub. | |
Books, tools and people worth following. | |
| Short source notes that the concepts link back to. |
The wiki is plain Markdown with Obsidian wikilinks ([[concepts/zone-2-training]]), so it opens as an Obsidian vault with a working graph view.
Note:
raw/(the full transcripts) is kept local and is not in this repo. Those transcripts are the podcasters' content; the wiki is a synthesis in my own words, linking back to each episode on Spotify.
Run it yourself
Requires macOS on Apple Silicon (for mlx-whisper), uv, ffmpeg, and Claude Code.
Create an app at the Spotify developer dashboard with redirect URI
http://127.0.0.1:8888/callback.cp .env.example .envand setSPOTIFY_CLIENT_ID. No client secret is needed because the login uses PKCE.uv run tools/spotify_mcp.py --authto log in to Spotify once.Update the absolute paths in
.mcp.jsonto your checkout.In Claude Code, run
/ingest-podcasts.
Command | What it does |
| Full pipeline: list heard episodes → fetch text → update the wiki → commit → push. |
| Health check: broken links, orphans, drift between pages; fixes what it finds. |
| Consolidates Claude's project memory and merges duplicate concept pages. |
| Raw files not yet in the wiki. |
| Mechanical wiki checks only. |
Unattended: tools/scheduled_ingest.sh runs the pipeline headless. tools/com.user.podcast-wiki.plist is a launchd job that runs it every 6 hours; fix its paths, copy it to ~/Library/LaunchAgents/, and launchctl load it. Because the headless Claude reads untrusted transcripts, it may only write inside wiki/ and runs no git itself. The script commits and pushes afterwards.
CLAUDE.md holds the conventions, page templates and the step-by-step wiki update procedure Claude follows.
This server cannot be deployed
Related MCP Connectors
Search and ask the podcasts you follow inside Claude, with the exact quote and timestamp.
Podcast knowledge for AI agents: search episodes, pull transcripts and ask questions.
1Podcast transcripts: send an episode link and get the transcript back, a page at a time.
podcast-parser (CanonCannon) — what gets repeated across 162 tracked podcasts.
Related MCP Servers
- AlicenseNot gradedqualityNot gradedmaintenanceConnects Claude to Spotify for music discovery, playlist creation, and collection analysis through natural language. Enables searching songs, analyzing music diversity, creating playlists, and getting recommendations using Spotify's API.-
- FlicenseAqualityDmaintenanceIntegrates Spotify with Claude to enable voice-controlled music playback, playlist management, and personalized recommendations through conversational AI. It provides comprehensive tools for searching tracks, managing liked songs, and analyzing listening habits.151-
- AlicenseNot gradedqualityDmaintenanceHosted Claude connector that turns the podcasts you already follow into a searchable, askable knowledge source. Ask what a guest said and get the answer back with the exact quote and timestamp.MIT
- FlicenseNot gradedqualityDmaintenanceEnables transcription, search, and lesson generation from podcast and YouTube URLs directly inside Claude Code.2-