1---2name: web-research3description: Current or latest information of any kind — API docs, pricing, releases, news, versions — whenever the user asks about "now", "recently", or something you cannot verify from the repo or training data. Assume the user expects up-to-date answers, so check the web rather than answering from stale knowledge. Always prefer web/search and web/extract over raw curl.4---56# Web research781. **Check the web, don't answer from stale knowledge.** When the user asks9 for anything current, recent, latest, or that you do not know for certain10 — API docs, pricing, releases, model lists, changelogs, news, versions —11 use the `web` MCP tools through the `aster_mcp` bridge, not curl. The user12 assumes Aster is up to date; answer only after checking, or say you could13 not verify. `curl` on a doc endpoint returns raw HTML/MDX, embedded JS14 components, or `null`; the web tools return clean Markdown and full search15 results.162. **Search first, then extract.** `web/search` to find the right page, then17 `web/extract` on one or two of the results. Never guess a doc URL and curl18 it blind.193. **Invoke through the bridge, no describe needed for these.** `aster_mcp`20 with `action: "execute"`, `name: "web/search"`, `arguments: {"query": "...",21 "limit": 5}`; `web/extract` takes `{"url": "..."}`. Both are always listed22 and need no key. With a provider key three more appear: `web/crawl`23 (`url`, `max_pages`, `max_depth`, `url_regex`, `use_main_content_only`)24 for a whole docs site, `web/sitemap` (`domain`, `url_regex`) to list a25 site's pages before choosing which to extract, and `web/screenshot`26 (`url`, `full_page`), which returns the picture for you to look at.27 `action: "describe"` is only for a tool whose arguments you have not seen.284. **curl keeps the status-check job.** Use curl only for29 `-o /dev/null -w "%{http_code}"` probes and minimal output checks, never for30 reading pages you could extract.