Particle Podcast Find Mentions
particle_podcast_find_mentionsFind dialogue lines where a specific person or company is named in podcast transcripts.
Three response modes
format="summary" (default, wide scan). Returns up to limit episodes (reverse-chronological), each with metadata + the first 10 mention-only lines (just the lines naming the entity, no surrounding dialogue). Use this to see what's been said across episodes and decide which episodes are worth reading in full. Paginate older episodes with cursor.
format="detail" (narrow drill-in). Requires episode_slug. Returns the full mention windows with context_lines of surrounding dialogue around each mention. Pass one slug for a single episode, or up to 10 comma-separated slugs (e.g. episode_slug="all-in-200,all-in-201,all-in-202") to multi-get several episodes in one call. limit/cursor don't apply.
format="compact" (screening). The same episodes as summary, each with its mention count, the strings it was mentioned as, and the segments carrying the mentions (id, title, type, first mention time) — no dialogue lines at all, the smallest shape. limit and cursor page it exactly as summary. Use it to fan out over many entities or a long date range and decide where to read; the segment ids are citations, and format="detail" with the episode slug reads the lines.
Workflow
Two patterns, depending on what you already know:
No specific episode in mind: call
format="summary"first to scan, then callformat="detail"with the slug(s) of the episodes worth reading in full. For most questions (sentiment, recurring themes, who said what when), summary alone has enough signal and the second call isn't needed.Already have the episode slug (e.g. user mentioned the episode by name, or you have it from another tool like
particle_podcast_get_episodeorparticle_podcast_search_transcripts): skip summary entirely and callformat="detail"withepisode_slugdirectly.
Examples
Wide scan, then drill in: User asks "what has All-In said about OpenAI recently?". Call format="summary", company_slug="openai", podcast_slug="all-in", since="2025-11-01", limit=20. Read the mention lines per episode; if 2-3 episodes have substantive discussion, call format="detail", episode_slug="slug1,slug2,slug3" for full context in one round-trip.
Direct drill-in: User says "In All-In #200 they discuss OpenAI's strategy — pull the full quotes". Call format="detail", episode_slug="all-in-200", company_slug="openai" directly — no summary needed.
Who said it
The guest_ filters keep only the mentions a matching guest spoke: guest_field="banking-finance-and-investment" with guest_standing="established" reads what established finance experts said about a company. When the question names who speaks ("doctors", "economists", "people in finance"), resolve the words with particle_expertise_resolve first and filter by the code; on unresolved_reference, resolve and retry rather than dropping the filter. A word no occupation names may name a capacity instead ("founders", "politicians"): pass it as guest_capacity. Each episode lists its identified speakers with their occupation codes, standing and seniority. For the split of all mentions across occupations or fields use particle_podcast_get_share_of_voice.
When NOT to use this tool
For dialogue that discusses a topic without naming a specific person or company (paraphrase-tolerant search), use particle_podcast_search_transcripts instead — that one ranks segments by relevance to a free-text query.
For how often the subject comes up, or which shows mentioned it this week versus last, use particle_podcast_get_mention_trends instead of paging this tool once per period; its podcast slugs come back here as podcast_slug to read what a show said.
Strongest first
With speaker_statement_characteristics, sort="strength" puts the episodes whose mentions carry the labels most clearly first: the most clearly negative takes on a company, the most confident predictions about a drug. This is the tool for the strongest lines about a subject; particle_podcast_search_transcripts refuses a subject without a topic and sends you here.
Required inputs
One of person_slug, company_slug, or entity_slug is required: person_slug for a person, company_slug for a company, entity_slug for any other knowledge-graph entity (places, organizations, events, concepts). Resolve a name to a slug first with particle_person_resolve, particle_company_resolve, or particle_entity_resolve. Slugs are case-insensitive on input.
How each line is said. Lines in topic and interview segments end with their speaker statement characteristics, pole labels only, e.g. _[positive · confident · future]_: sentiment (negative/positive), certainty (hedged/confident), specificity (vague/specific) and temporal orientation (past/future). A pole label means the line clearly reads that way; _[neutral]_ means it leans clearly on no axis; no brackets means the line was not read (short lines, intros, ad breaks). With output_format=json they are each line's speaker_statement_characteristics object, middle labels included.
Filtering by how a line is said. Pass speaker_statement_characteristics to keep only lines said a certain way: {"sentiment": ["negative"]} for criticism, {"specificity": ["specific"], "temporal_orientation": ["future"]} for concrete predictions, {"certainty": ["confident"], "sentiment": ["positive"], "temporal_orientation": ["future"]} for a high-conviction outlook. Put the topic, never the tone, in semantic_search. Every matched or mention line then carries labels the filter accepts.
Without a topic. On particle_podcast_search_transcripts, the filter alone with episode_slug, speaker or a guest_ filter (no semantic_search or keyword_search) returns the strongest lines said that way, at most 50, strongest first: an episode's boldest predictions, or a person's most confident claims. Their Match row reads characteristics. For the strongest lines naming a person, company or entity, pass the filter with sort: "strength" on particle_podcast_find_mentions instead.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| role | No | Constrain how the entity participates: guest, host, panelist, correspondent, or mention. | |
| sort | No | Episode order. 'recency' (default) is newest first. 'strength' requires speaker_statement_characteristics and puts the episodes whose mentions carry those labels most clearly first (the most clearly negative takes, the most confident predictions), each episode's mentions strongest first. Pass the same sort with a cursor. | |
| limit | No | Episodes per page (1-50, default 10). Summary and compact modes — detail returns one episode regardless. | |
| since | No | Only episodes published on or after this ISO 8601 date (e.g. 2025-01-01). | |
| until | No | Only episodes published on or before this ISO 8601 date. | |
| cursor | No | Opaque pagination cursor from a previous summary or compact response's cursor field. Summary and compact modes. | |
| format | No | Response shape. 'summary' (default) returns many episodes (reverse chron) with metadata plus the first few mention-only lines per episode — use this to scan and pick episodes to drill into. 'detail' requires episode_slug and returns one episode's full mention windows with surrounding dialogue context. 'compact' returns the same episodes as summary with the mention count and the segments carrying the mentions (id, title, type, first mention time) and no dialogue — the smallest shape, for screening many entities before reading any. | |
| language | No | Restrict to episodes of podcasts in this language — ISO 639-1 code (e.g. 'fr'). Matches the podcast's primary language subtag, so 'fr' covers 'fr-FR'. | |
| entity_slug | No | Knowledge-graph entity slug from particle_entity_resolve for the long tail that isn't a person or company — places, organizations, events, products, concepts (e.g. 'germany'). Use person_slug for people and company_slug for companies. | |
| guest_field | No | Only mentions spoken by a guest listed under this ANZSRC 2020 field of research: a code, slug or title from particle_expertise_resolve. | |
| person_slug | No | Person slug or encoded person ID from particle_person_resolve, particle_entity_resolve, or the guest tools (e.g. 'sam-altman'). One of person_slug, company_slug, or entity_slug is required. | |
| company_slug | No | Company slug, domain, or canonical ID (e.g. 'nvidia' or 'nvidia.com'). Resolves to the company's linked entity. | |
| episode_slug | No | Episode slug(s) or canonical ID(s). For format='detail', required: pass one slug for a single drill-in or up to 10 comma-separated slugs (e.g. 'all-in-200,all-in-201,all-in-202') for a multi-episode drill-in in one call. For format='summary' or 'compact', optional filter to one episode. | |
| podcast_slug | No | Restrict mentions to a single podcast by slug, internal ID, or numeric iTunes ID. A particle.pro or Radar show link also works. | |
| context_lines | No | Surrounding dialogue lines around each mention (1-20, default 2). Detail mode only — ignored in summary and compact. | |
| output_format | No | Output serialization. 'markdown' (default) returns the LLM-facing rendering. 'json' returns the structured payload as JSON text — use only for programmatic chaining where exact field extraction matters; the JSON shape is larger and noisier for an LLM to read. | |
| guest_capacity | No | Only mentions spoken by a guest who knows their field in this capacity (e.g. 'public_official' for politicians). particle_expertise_resolve names the capacity an everyday word means. | |
| guest_in_field | No | Only mentions spoken by a guest speaking within their own field (the guest the other guest_ filters select, when given). | |
| guest_standing | No | Only mentions spoken by a guest whose standing is recognized this way: 'established' (conferred by others), 'self_described', or 'unverified'. | |
| guest_seniority | No | Only mentions spoken by a guest at this seniority or above. | |
| guest_occupation | No | Only mentions spoken by a guest listed under this occupation: a SOC 2018 or ISCO-08 code, slug or title from particle_expertise_resolve, or a SOC group or everyday name (e.g. 'financial-and-investment-analysts' or 'physicians'). A word with no occupation filters by the field of research or capacity it names: 'investors' is field 350208, 'politicians' is capacity public_official. | |
| guest_practicing | No | Only mentions spoken by a guest who still works in guest_occupation, which must be a SOC 2018 occupation or group. | |
| speaker_statement_characteristics | No | Keep only mentions said a certain way. This tool takes no topic text: the subject is person_slug, company_slug or entity_slug, and HOW it is spoken of goes here: criticism, skepticism or bearish takes → sentiment negative; praise, optimism or bullish takes → sentiment positive; predictions or forecasts → temporal_orientation future (add specificity specific for concrete predictions); high conviction → certainty confident; hedging → certainty hedged; concrete claims → specificity specific. Who speaks goes in the guest_ filters. Labels listed for one axis match any of them; axes combine with AND, so add only the axes the request names. Every mention line carries labels the filter accepts. Needs a subject with a knowledge graph entity: one matched only by name is refused. Example, criticism of the subject: {"sentiment": ["negative"]}. To narrow to a topic as well, call particle_podcast_search_transcripts with the subject's company_slug or entity_slug, the topic in semantic_search, and this filter. |