← Podcast Commerce Intelligence MCP
0.1.2npm · podcast-commerce-mcp · current release
Observed 2026-08-22T19:45:21.745Z using mcpSecurity-inventory. Status: succeeded. Negotiated protocol: 2025-06-18.
{
"tools": {
"listChanged": true
}
}| Tool | Category | Annotations | Risk |
|---|---|---|---|
analyze_episode_sponsorsIdentify and score podcast sponsor segments (host-read ads, mid-roll, pre-roll). Returns sponsor name, ad placement type, call-to-action URL, estimated read-through rate, and revenue metrics based on category benchmarks — not live ad-platform data. Use for advertising intelligence, CPM estimation, and sponsor outreach research. Use this tool when you need sponsor metrics only; for the full product and recommendation list use extract_podcast_products instead. Reuses cached extraction when episode_id matches a prior extract_podcast_products call. Example: episode_id='huberman-ep-301' → returns [{sponsor:'Athletic Greens', placement:'pre-roll', estimated_cpm:25, read_through_rate:0.72}].Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"transcript": {
"type": "string",
"minLength": 1,
"maxLength": 100000,
"description": "Raw transcript text or a YouTube URL (e.g. https://youtube.com/watch?v=VIDEO_ID) — YouTube transcription uses auto-generated captions; pass plain text for reliable results"
},
"episode_id": {
"description": "Optional episode identifier — uses cached extraction if available",
"type": "string",
"maxLength": 200
},
"api_key": {
"description": "Optional API key for paid access beyond the free tier",
"type": "string",
"maxLength": 200
}
},
"required": [
"transcript"
]
} | — | — · — | — |
compare_products_across_showsCompare and rank product mentions across multiple podcast shows using cached extractions — no re-run or extra AI cost. Collapses a 3-call manual join into 1 tool call with entity resolution to match the same product across different show mentions. Returns ranked products with per-show context, average confidence, recommendation consensus, and brand aggregation. Use for multi-show affiliate research, 'best of' page generation, and cross-show brand ranking. Requires prior extract_podcast_products call for each show_id — returns error listing missing IDs if any are absent. Example: show_ids=['epic-gardening','garden-answer'], min_confidence=0.85.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"show_ids": {
"minItems": 1,
"maxItems": 20,
"type": "array",
"items": {
"type": "string",
"maxLength": 200
},
"description": "List of show/episode IDs to compare. Each must have a prior extract_podcast_products cache entry."
},
"category": {
"description": "Optional single-category filter: physical_goods, saas, course, service, supplement, media, event, other",
"type": "string",
"maxLength": 50
},
"min_confidence": {
"description": "Minimum confidence threshold (default 0.85). Lower to include more products.",
"type": "number",
"minimum": 0,
"maximum": 1
},
"min_show_count": {
"description": "Minimum number of shows a product must appear in to be included (default 2). Set to 1 for single-show results.",
"type": "integer",
"minimum": 1,
"maximum": 20
},
"api_key": {
"description": "Optional API key for paid access beyond the free tier",
"type": "string",
"maxLength": 200
}
},
"required": [
"show_ids"
]
} | — | — · — | — |
extract_podcast_productsExtract affiliate products, sponsored brands, and host recommendations from a podcast transcript (text input only — does not process audio or video). Returns product name, category, confidence score, recommendation strength, and sponsor flag. Call this before analyze_episode_sponsors or track_product_trends — both tools reuse its cache. Use for podcast monetization, affiliate program discovery, and episode-to-episode trend tracking. Returns empty products array (not an error) when no product mentions are found. Example: episode_id='huberman-ep-301', category_filter=['physical_goods','supplement'].Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"transcript": {
"type": "string",
"minLength": 1,
"maxLength": 100000,
"description": "Raw transcript text or a YouTube URL (e.g. https://youtube.com/watch?v=VIDEO_ID) — YouTube transcription uses auto-generated captions; pass plain text for reliable results"
},
"episode_id": {
"description": "Optional episode identifier for caching and trend tracking",
"type": "string",
"maxLength": 200
},
"category_filter": {
"description": "Optional list of categories to include: physical_goods, saas, course, book, service, affiliate, other",
"maxItems": 20,
"type": "array",
"items": {
"type": "string",
"maxLength": 50
}
},
"api_key": {
"description": "Optional API key for paid access beyond the free tier",
"type": "string",
"maxLength": 200
}
},
"required": [
"transcript"
]
} | — | — · — | — |
track_product_trendsCompare affiliate product and brand mention frequency across multiple podcast episodes to detect rising, stable, and declining trends. Returns trend velocity, mention count per episode, and category breakdown. No AI call — computed from cached extraction data only. Use for affiliate marketing optimization, seasonal product tracking, and content calendar planning. Requires prior extract_podcast_products call for each episode_id — returns an error listing missing IDs if any are not in cache. Example: episode_ids=['ep-301','ep-302','ep-303'].Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"episode_ids": {
"minItems": 1,
"maxItems": 20,
"type": "array",
"items": {
"type": "string",
"maxLength": 200
},
"description": "List of episode IDs to analyze. Each must have been previously extracted via extract_podcast_products."
},
"category_filter": {
"description": "Optional category filter to narrow trend analysis",
"maxItems": 20,
"type": "array",
"items": {
"type": "string",
"maxLength": 50
}
},
"api_key": {
"description": "Optional API key for paid access beyond the free tier",
"type": "string",
"maxLength": 200
}
},
"required": [
"episode_ids"
]
} | — | — · — | — |