accueil / serveurs / Recherche & Web / com.petabloom/podcasts
com.petabloom/podcasts
serveur MCP (Model Context Protocol) · PodcastTranscriptSearch 0.2.8
Référencé dans l'annuaire. Seul le pentest comportemental fait foi, et il n'a pas encore été exécuté sur ce serveur.
Est-ce que com.petabloom/podcasts est sûr ?
Au dernier audit MCP Hub, le serveur MCP « com.petabloom/podcasts » est classé « Non encore testé ». Référencé dans l'annuaire. Seul le pentest comportemental fait foi, et il n'a pas encore été exécuté sur ce serveur. Le verdict est réévalué en continu ; consultez la fiche pour l'état à jour.
Méthode : MCP Hub analyse la description de chaque outil (couche 1) et, pour le verdict fort, exécute le serveur dans une micro-VM isolée avec leurres et réseau bloqué (couche 2). On publie des noms et des compteurs, jamais le contenu brut renvoyé par un outil.
Les 5 outils
- get_latest_episodes≈ 808 tokens
Return the most recent transcript-ready episodes across the full podcast catalog.
Paramètres, retour & exemple (5)
Paramètressort· string · optionnel · relevance | published_desc | published_asc
Sort order for results. `relevance` ranks full-text searches first and falls back to newest-first when no query is provided.limit· integer · optionnel
Maximum number of episodes to return. Must be between 1 and 50.cursor· integer · optionnel
Zero-based episode offset for pagination. Use the `next_cursor` returned by a prior search/listing call to fetch the next page of results.published_after· ? · optionnel
Inclusive lower publication-date bound. Accepts YYYY-MM-DD or ISO 8601 datetime.published_before· ? · optionnel
Inclusive upper publication-date bound. Accepts YYYY-MM-DD or ISO 8601 datetime.
Exemple d'appel{"name": "get_latest_episodes", "arguments": {"sort": "relevance", "limit": 1, "cursor": 1, "published_after": "texte", "published_before": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"count": 1, "episodes": [], "next_cursor": "texte", "total_count": 1, "total_count_is_approximate": true}} - get_transcript≈ 716 tokens
Fetch a bounded transcript chunk for a specific episode using its show and episode GUIDs. Use `next_cursor` to continue reading.
Paramètres, retour & exemple (4)
Paramètrescursor· integer · optionnel
Zero-based character offset into the transcript. Use the `next_cursor` returned by a prior get_transcript call to fetch the next chunk.max_chars· integer · optionnel
Target maximum number of transcript characters to return. Chunks prefer natural boundaries and may be slightly shorter. Must be between 100 and 20000.show_guid· string · requis
Podcast show GUID returned by `search_episodes` or `get_latest_episodes`.episode_guid· string · requis
Episode GUID returned by `search_episodes` or `get_latest_episodes`.
Exemple d'appel{"name": "get_transcript", "arguments": {"show_guid": "texte", "episode_guid": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"text": "texte", "char_end": 1, "has_more": true, "show_guid": "texte", "char_start": 1, "show_title": "texte", "next_cursor": "texte", "total_chars": 1, "episode_guid": "texte", "rss_feed_url": "texte", "episode_title": "texte", "published_date": "texte"}} - give_feedback≈ 242 tokens
Send structured feedback about bugs, missing data, unclear behavior, or feature requests.
Paramètres, retour & exemple (1)
Paramètresfeedback· string · requis
Feedback for the server team. Include the problem, missing capability, or suggested improvement without sensitive user data.
Exemple d'appel{"name": "give_feedback", "arguments": {"feedback": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"status": "saved", "message": "texte", "feedback_id": "texte"}} - search_episodes≈ 948 tokens
Search indexed podcast episodes by keyword or show name and return the show/episode GUIDs needed for transcript retrieval.
Paramètres, retour & exemple (8)
Paramètressort· string · optionnel · relevance | published_desc | published_asc
Sort order for results. `relevance` ranks full-text searches first and falls back to newest-first when no query is provided.limit· integer · optionnel
Maximum number of episodes to return. Must be between 1 and 50.query· string · optionnel
Optional search keywords matched against indexed episode content. Use people, topics, companies, or phrases.cursor· integer · optionnel
Zero-based episode offset for pagination. Use the `next_cursor` returned by a prior search/listing call to fetch the next page of results.podcast_name· string · optionnel
Optional podcast title or internal label to narrow results to a specific show.published_after· ? · optionnel
Inclusive lower publication-date bound. Accepts YYYY-MM-DD or ISO 8601 datetime.published_before· ? · optionnel
Inclusive upper publication-date bound. Accepts YYYY-MM-DD or ISO 8601 datetime.published_within_hours· ? · optionnel
Filter episodes published in the past X hours. Maximum 168 hours (1 week).
Exemple d'appel{"name": "search_episodes", "arguments": {"sort": "relevance", "limit": 1, "query": "texte", "cursor": 1, "podcast_name": "texte", "published_after": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"count": 1, "episodes": [], "next_cursor": "texte", "total_count": 1, "total_count_is_approximate": true}} - search_episodes_by_topic≈ 1342 tokens
Semantic topic search across the podcast catalog. Unlike `search_episodes` (which does lexical/keyword matching), this tool understands meaning: a query for 'AI safety' will match episodes about 'AI alignment', 'AGI risk', or 'frontier model evaluation' even if they don't contain the exact phrase. Returns ranked episodes with the matched topic phrases so you can explain *why* each result is relevant before fetching the transcript. Best for conceptual or thematic queries — use `search_episodes` instead when the user is looking for a specific person, product, or verbatim phrase.
Paramètres, retour & exemple (6)
Paramètreslimit· integer · optionnel
Maximum number of episodes to return. Must be between 1 and 50.topic· string · requis
Semantic topic to find episodes about. Free-form phrasing welcome — the server embeds this string and finds episodes whose extracted topic phrases are closest in meaning. Good examples: 'AI safety', 'EU AI Act regulation', 'GPU supply constraints', 'Theo Epstein on roster construction'. Distinct from `search_episodes`, which performs lexical keyword matching.cursor· integer · optionnel
Zero-based episode offset for pagination. Use the `next_cursor` returned by a prior search/listing call to fetch the next page of results.show_guid· string · optionnel
Optional canonical show GUID (as returned by `search_episodes` or `get_latest_episodes` in the `show_guid` field) to restrict topic search to a single podcast. Leave empty to search across all shows.published_after· ? · optionnel
Inclusive lower publication-date bound. Accepts YYYY-MM-DD or ISO 8601 datetime.published_before· ? · optionnel
Inclusive upper publication-date bound. Accepts YYYY-MM-DD or ISO 8601 datetime.
Exemple d'appel{"name": "search_episodes_by_topic", "arguments": {"topic": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"count": 1, "query": "texte", "episodes": [], "next_cursor": "texte", "total_count": 1, "total_count_is_approximate": true}}
C'est votre serveur ?
Revendiquez-le sur l'espace créateur (preuve GitHub, domaine ou npm) pour afficher le badge « propriétaire vérifié » et lancer un pentest comportemental à la demande afin d'obtenir le badge « Vérifié ».