MCP Podcast Scraper
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| TEMP_DIRECTORY | No | Temporary directory for audio files (auto-cleaned on startup) | ./temp |
| DEEPGRAM_API_KEY | Yes | Your Deepgram API key for transcription | |
| OUTPUT_DIRECTORY | No | Where to save transcripts and summaries. Can be relative or absolute path. | ./podcasts |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| scrape_podcastA | Scrape a podcast episode and transcribe it. Returns transcript file path. Use get_transcript to read it, then save_summary after summarizing. |
| get_transcriptB | Read the transcript of a previously scraped episode. After reading, use get_summary_prompt for summarization instructions. |
| save_summaryC | Save your generated summary to a markdown file. |
| get_summary_promptA | Get the custom prompt/instructions for how to summarize podcasts. Read this before summarizing to follow the user's preferences. |
| check_new_episodesB | Check all tracked podcasts for new episodes that haven't been scraped yet |
| list_incompleteA | List all episodes that have transcripts but are missing summaries. Use this to find episodes that need summarization. |
| search_podcastB | Search for podcasts or episodes on YouTube, or parse an RSS feed URL to see available episodes |
| add_trackingA | Add a podcast RSS feed to the tracking list. Use check_new_episodes to find new episodes. |
| list_trackingB | List all podcasts currently being tracked |
| remove_trackingC | Remove a podcast from the tracking list |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 10 tools
Most tools have distinct purposes, but there is some overlap between 'scrape_podcast' and 'check_new_episodes' as both involve scraping episodes, which could cause confusion. However, descriptions clarify that 'scrape_podcast' is for manual scraping of specific episodes, while 'check_new_episodes' automatically checks tracked feeds, so the ambiguity is limited.
Tool names follow a consistent verb_noun pattern throughout, such as 'add_tracking', 'check_new_episodes', and 'save_summary'. The only minor deviation is 'list_incomplete', which uses an adjective instead of a noun, but this does not significantly impact readability or consistency.
With 10 tools, the server is well-scoped for podcast scraping and summarization. Each tool serves a clear purpose in the workflow, from tracking and scraping to transcription and summarization, without being overly sparse or bloated.
The tool set provides complete coverage for the podcast domain, including tracking management (add, list, remove), scraping and transcription, transcript retrieval, summarization with custom prompts, and saving summaries. There are no obvious gaps; it supports a full lifecycle from discovery to final output.