Teaching AI Agents to Understand Earnings Calls: A Hands-On MCP Toolchain Walkthrough

Using MCP to break JPMorgan's Q3 call into a locatable, searchable, verifiable structured toolchain.
The article tackles four obstacles AI agents face with earnings-call transcripts — excessive context, muddled speaker attribution, fiscal-quarter mismatches, and untraceable citations — by proposing an MCP-based breakdown into four auditable steps. Using JPMorgan's FY2026 Q3 call as an example, it first locks down the meeting and transcript document ID with GetEarningsCallEvent, then reads tone and themes with GetEarningsCallToneAndThemes (tone falling from 62 to 32, hedging rising from 38 to 48, and a new "Agentic AI disruption risk" theme mentioned 13 times), then searches within the document with SearchDocument returning line-accurate links, and finally pages through the full speaker-labeled Q&A with GetEarningsCallTranscript. A REST interface provides start and end timestamps for verifying against the recording. The core takeaway: don't let the agent grope for answers in long text — split lookup, location, and verification into independent, auditable steps.
Earnings calls are a key channel for investors to gauge management's stance, but handing this unstructured text to an AI agent often runs into problems: context overload, muddled speaker attribution, fiscal-quarter mismatches, and citations that can't be traced back. This article draws on tool calls actually run on the Equibles platform (built by the author) on October 18, 2026, to show how MCP (Model Context Protocol) can break JPMorgan's Q3 2026 earnings call into a structured data flow that AI agents can act on.

Why call transcripts aren't friendly to AI agents
A call transcript looks like plain text, but agents hit four pitfalls when processing it.
The length trap: JPMorgan's call had 99 speaking turns. Stuffing the whole thing into context not only burns a lot of tokens but also drowns out the genuinely important answers.
Speaker attribution: "what the CFO said" only means something when a statement is correctly tied to the person who held that role that day. If the agent doesn't know who is speaking, citations become distorted.
Fiscal-quarter misalignment: Fiscal calendars don't always line up with calendar years. Nvidia's May 2026 call actually belongs to FY2027 Q1. If an agent looks it up as "2026 Q1," it gets the wrong meeting.
Verifiability: If the agent only paraphrases, readers need a link that jumps to the exact spot in the source. The original author also stresses that transcripts come from audio and occasionally drift, so the recording should be checked against timestamps before any public citation.
That's why the tool is split into four categories: one to find the meeting, one to summarize tone and themes, one to search within the document, and one to page through the turns.
MCP (Model Context Protocol) is a standardized open-source protocol introduced by Anthropic in late 2024 to let LLM applications connect to external data sources and tools in a uniform way. It uses a client-server architecture: hosts such as Claude, ChatGPT, and Cursor act as clients and communicate via JSON-RPC with MCP servers that declare a tool manifest (tools/list) and a call interface (tools/call). Compared with writing a separate function call for each data source, MCP lets the same set of tools be reused by different model clients and makes tool input schemas, return structures, and error messages discoverable. The Equibles server in this article exposes earnings-call tools precisely as MCP, so developers don't need to build their own middleware — just add the connector in the client and log in, and the model can call tools like GetEarningsCallEvent on demand.
Step 1: Locate the right earnings call first
GetEarningsCallEvent takes a ticker and optional fiscal year and quarter, and returns the full record of that meeting. The call for JPM returned: meeting date October 13, 2026, fiscal quarter FY2026 Q3, with audio, transcript, and 8-K filing all ready, plus the transcript document ID.
The value of this step is pinning down "which call it is," so the agent doesn't waste every subsequent tool call on the wrong quarter.
Step 2: Read tone and themes first, then decide where to dig in
GetEarningsCallToneAndThemes scores each call for tone (-100 cautious to +100 optimistic) and hedging (0 to 100), and lists themes. Comparing the last two meetings, the shift is stark: FY2026 Q2 (July 14) had a tone of 62 and hedging of 38; FY2026 Q3 (October 13) saw tone fall to 32 and hedging rise to 48.
More important is a newly emerged theme — "Agentic AI disruption risk," tagged as risk, mentioned 13 times, with tracked keywords including agentic, rogue agents, smart cash solution, personal agents, and credential sharing. The original explicitly notes that mention counts are computed by code from keywords rather than asserted by a model, so the counting methodology can be checked.
This step essentially tells the agent: on this call, AI-agent risk is a topic management raised on its own, and it's worth digging into.
Tone and hedging scores are a common way to quantify text sentiment: tone is typically scored by a lexicon or classifier for the positive-negative polarity of management's wording, then normalized to -100 to +100; hedging counts the density of uncertainty, conditional, and vague qualifiers (such as may, could, approximately), mapped to 0 to 100. The two scores need to be read together: tone falling while hedging rises often means management is more cautious about the outlook but unwilling to give clear guidance. These scores are relative indicators rather than absolute judgments, better suited to comparison within a single company's time series (like the 62→32 and 38→48 between Q2 and Q3 here); cross-company comparisons need to account for industry and phrasing differences.
Step 3: Jump precisely within the document
SearchDocument searches within a specified document. Searching for "agentic AI rogue agents" using the transcript ID from step one returned excerpts pointing directly to the Q&A section, with links accurate down to the line number.
CFO Jeremy Barnum described personal agents as the "intersection" of two existing competitive pressures — yield-seeking money flows and fintechs — while saying "that doesn't mean we're complacent about it." Jamie Dimon was more direct:
"We're not going to let any agent, you know, external agent into the firm because it's too risky for our clients."
He also mentioned "you don't want rogue agents, and there could be thousands of them." Each excerpt returns a link like #fromLine=21&toLine=49, so readers can open the source and verify the passage.
Step 4: Page through the full Q&A
When the agent really needs the complete Q&A, GetEarningsCallTranscript returns speaking turns with speaker labels, supports limit and offset, and reports how many remain (e.g., "Turns: 1-40 of 99"). Turns are attributed to specific names and roles only when identity is trustworthy; otherwise the tool shows Operator or a neutral speaker number rather than guessing.
Speaker attribution is a critical step in transcript processing. Call transcripts are usually first generated by ASR as a timestamped text stream, then different speakers are separated via voiceprint clustering or manual annotation and matched to roles against the meeting's participant list. When voiceprint confidence is low or an unregistered speaker appears, a system that forces a guess at the name creates citations that look credible but are wrong. This article's tool degrades to Operator or a neutral number when identity isn't trustworthy — a conservative but auditable design: readers know clearly that the attribution is unconfirmed rather than being misled. For financial analysis agents, missing attribution is preferable to fabricated attribution, because a wrong attribution directly contaminates conclusions like "what the CFO said."
The REST interface for the same data
If you're writing code rather than conversing, the same data is available via a single GET request. For example, requesting JPM's FY2026 Q3 turns (limit=3) returns JSON containing the speaker's name, role, text content, and startSeconds and endSeconds. The author notes that these two timestamp fields matter — audio transcription inevitably drifts, so any public citation should return to the corresponding point in the recording to verify, and agents should be instructed to do the same.
How to get started
In Claude, add the custom connector https://mcp.equibles.com/mcp and log in to your account — no API key needed; clients like ChatGPT and Cursor have their own setup guides. Then ask: "Using Equibles, how did JPMorgan management talk about AI agents on the Q3 2026 call? Cite the speakers and link to the source passages." Naming the server explicitly in the prompt encourages the model to call tools rather than answer from memory. The free plan allows 100 requests per day, with MCP and REST sharing the quota.
The whole loop can be summarized as: find the meeting by fiscal quarter, read tone and themes, search within the document, and cite with links and timestamps. For developers building financial analysis agents, the core takeaway from this breakdown is: don't expect the agent to "figure out" answers from long text on its own — split lookup, location, and verification into separate, auditable steps.
Related articles

Amphibious Transforming Drone: Beyond 100x Power Savings, What Are the Real Needs?
Is the amphibious transforming drone just a gimmick? Starting from the 100x power difference of the M4 Morphobot, explore real application scenarios and thesis topic ideas, analyzing boundary conditions where pure drones and pure ground robots both fail.

Warhound Raises $200 Million: Genetically Engineered "War Dogs" Paired with Anduril Gear
Warhound raises $200M, backed by Ben Lamm and Palmer Luckey, to genetically engineer dogs for military and law enforcement use and equip them with Anduril gear. This article analyzes its technology direction, funding logic, and ethical controversy.

Claude API Comes to Google Cloud: IAM Integration and SDK Access Guide
Anthropic hosts the full Claude API on Google Cloud with IAM-controlled permissions and unified billing. This guide covers the Vertex AI and Anthropic-hosted entry points, IAM role configuration, and SDK access.