1.0 KiB

Tavily tools

The client helper selects credentials by tool name: search defaults to web_search, fetch passes web_fetch, and an omitted key uses the SDK's TAVILY_API_KEY fallback. Keep credential regressions in backend/tests/test_tavily_tools.py on the real helper and SDK constructor, mocking only search/extract calls.

Search forwards include_domains and exclude_domains only when present in the web_search tool config's model_extra, alongside max_results and optional time_range. Preserve explicit empty lists (no restriction of that kind) and omit absent keys. These are deployment-only search-source settings; keep the model-visible signature limited to query and time_range. Offline regressions in backend/tests/test_tavily_tools.py pin SDK arguments and the tool schema. For non-empty include_domains, explicitly send include_domains_mode="filter" through the SDK's keyword arguments; inclusion must restrict sources rather than boost them. Omit the mode when the include list is absent or empty.