The agent cites a page that says something different from what it claims — the search succeeded, the URL is real, no error anywhere. What happened?
The silent failure of cached retrieval: index staleness. Exa serves indexed snapshots by default, and the cached page content can lag the live page by days or weeks. The agent quotes the snapshot with total confidence while the live page has moved on — every claim is sourced, and every source is subtly wrong. The engineering fix: for any query where freshness matters (pricing, API docs, release notes, news), pass the livecrawl option so Exa fetches current content instead of cached text, and instruct the agent to report whether each citation came from cache or live fetch. Stale citations are not a search bug — they are a cache-policy bug.
Exa vs Brave Search MCP — which one for agents?
Different tools wearing the same costume. Brave is keyword retrieval: best for exact strings, error messages, and navigational queries (find me the official X docs). Exa is neural retrieval: best for conceptual research (find me engineering posts arguing against microservices). Serious agent stacks run both and let the model choose per query type.
What does find_similar actually do?
It takes a URL and returns semantically neighboring pages — pages about the same concepts, from the link graph and embedding space. It is the fastest way to explode one good source into a research corpus, and it is criminally underused because keyword-brain defaults to more searching instead of similarity traversal.
How do costs scale in agent loops?
Per-search, with content retrieval priced by volume. An agent in an unconstrained research loop can issue dozens of searches per task — cap numResults, cache repeat queries at the application layer if you wrap it, and set dashboard billing alerts before your first autonomous run.