get_transcript_analysis
One company's call-over-call earnings transcript analysis: the call's summary and what it added, removed, strengthened, weakened or reinforced against the prior call — the direct read for "what changed on X's call", "what did management stop talking about", and how the narrative has moved.
===> Prefer this over explore_data_catalogue, and over reading the transcript turn by
turn, for what a call said: it is synchronous and returns the rows directly. For the
guidance label alone, use `get_transcript_guidance`.
FIELDS, per row: `summary`, then `added`, `removed`, `strengthened`, `weakened` and
`unchanged_but_reinforced`, each against the PRIOR call. They are a model's analysis
of the transcript, not quotes: attribute them to the analysis, and quote only from
`source_urls[].quotes` or the transcript itself. `date` is the CALL date, not a fiscal
period.
CITATIONS: an `[n]` marker in the text resolves to the `source_urls` entry with the same
`n`: {n, url, title, quotes, node_id}. `quotes` are verbatim passages, and the `url`'s
symbol, year, quarter and n are the arguments to `get_document_section`, which opens that
speaker turn. Year and quarter there are FISCAL; take them from the url, never from
`date`. Only some calls have citations stored (none before May 2026): elsewhere
`source_urls` is null and the text has no markers. Say that text is uncited analysis:
trace_data_sources has no link for those calls either.
`limit` COUNTS ROWS, NOT CALLS: a re-analyzed call can appear twice, on the same date or
a day apart, with near-identical text. Treat those as one call. Rows with citations run
about 15 KB each, so keep the default unless the question compares calls.
Returns {"symbol": ..., "count": N, "rows": [...]}, newest call first. `note` is set
only on an empty result.
Errors: a 404 means the ticker is outside coverage.
Requires auth (your MCP client attaches the OAuth bearer automatically).
Rate-limited 500/min.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"symbol": "<symbol>"
},
"name": "get_transcript_analysis"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Most recent analyses to return (1-8, default 1). 1 is the latest call; raise it to compare calls. | |
| symbol | Yes | Covered ticker, e.g. "AAPL". |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| note | No | Set only when no rows came back: what an empty result can mean. | |
| rows | Yes | Newest call first. | |
| count | Yes | Rows returned; a re-analyzed call can take two. | |
| symbol | Yes |