tool
The web_search and web_fetch Mastra tools.
web_search is backed by the Databricks Model Serving native web-search
tool: it resolves its own web-search-capable model (see search.ts) and
calls the workspace serving endpoint under the caller’s OBO scope, so the
search runs as the requesting user and independently of the agent’s chat
model. web_fetch reads a page via got-scraping.
Both are read-only and run without approval by default; each accepts an
optional ApprovalGate (approval) that maps onto Mastra’s
requireApproval. true gates every call; a URL-pattern (or OneOrMany
list) gates only calls whose URL matches - for web_fetch that is evaluated
against the target URL, while web_search (whose result URLs aren’t known
before the call) treats a pattern gate as “always gate”. approval falls
back to the plugin’s approval config when a tool omits its own.
The same two tools are exposed to AppKit’s own agents through the plugin’s
ToolProvider (see plugin.ts); this module is the Mastra half.