I have enough to make a grounded recommendation. This is a research task, so here's my analysis. ## Recommendation: **Tavily** For this repo — a LlamaIndex-based local RAG PDF chatbot (`rag_chatbot/core/engine/retriever.py`, LlamaIndex v0.10.x orchestration, Ollama/OpenAI LLMs) — Tavily is the best fit. **Why Tavily wins here:** - **First-class LlamaIndex integration.** Official `llama-index-tools-tavily-research` package with `TavilyToolSpec`, dropping straight into your existing tool/retriever-routing pattern via `tavily_tool.to_tool_list()`. No glue code or HTML cleanup needed. - **Built for LLM grounding, not human search.** Returns clean, snippet-ready content (no HTML junk), which suits RAG where you feed results to a model. Minimizes post-processing in your ingestion path. - **Generous free tier** (1,000 queries/mo) — matches the repo's local-first, low-friction ethos. - **De-facto agent standard** with the widest framework ecosystem, so it's well-trodden and low-risk. **Alternatives I considered:** - **Exa** — only one with true neural/semantic search plus `/contents`, `/answer`, `/research` endpoints; great for research agents. But it's pricier per query and the semantic edge overlaps with your existing dense-vector retrieval, so less additive here. - **Brave Search API** — independent 30B-page index, strong agent benchmark scores, configurable freshness; the main runn