Web
Search the live web for ranked sources and turn one HTTPS page into clean text, with no search-provider account to connect.
Web is a CoreSpeed-hosted capability for grounding: it hands an agent current
source material and leaves the reading to the agent. It needs no third-party
account and runs behind the same /mcp seam as every other tool, so identity,
organization holds, API-key caps, and activity recording apply unchanged.
Two tools
| Tool | Use it for |
|---|---|
web__search | Ranked results with source URLs for a query, each with a short text snippet. |
web__scrape | The readable text of one https page, freshly crawled. |
Search returns sources, not an answer
web__search does not synthesize. It returns ranked results — title, URL,
published date, author, and by default a text snippet capped at 2,000 characters
per result — and expects the agent to read them.
| Parameter | Effect |
|---|---|
query | What to search for. Required. |
num_results | 1–25, default 8. |
category | Bias results toward one content type: company, research paper, news, pdf, github, tweet, personal site, linkedin profile, or financial report. |
include_text | Inline a capped snippet per result. Default true. |
include_highlights | Add query-relevant highlight sentences per result. Default false. |
livecrawl | Force a fresh crawl of the results instead of the index cache — slower, fresher. Default false. |
{
"query": "MCP authorization spec RFC 9728",
"resultCount": 2,
"results": [
{
"title": "Authorization — Model Context Protocol",
"url": "https://modelcontextprotocol.io/specification/…/authorization",
"publishedDate": "2025-06-18",
"author": null,
"text": "…",
"textTruncated": true
}
]
}textTruncated marks a snippet that hit the cap. To read a source in full, hand
its URL to web__scrape.
Scrape reads one page
web__scrape fetches a single page and returns its clean text.
urlmust behttps. IP literals, loopback, and internal hostnames are refused withinvalid_inputbefore any request leaves CoreSpeed.max_charactersdefaults to 50,000 and is capped at 200,000. A clipped page setstextTruncated: true.include_highlightsadds query-agnostic highlight sentences from the page.
Every scrape is a fresh crawl. There is no multi-page crawl and no queue: for discovery across many pages, search first, then scrape the pages that matter.
Pricing and holds
| Call | Charge |
|---|---|
web__search | 10 credits per request, whatever num_results is — the returned snippets are included. |
web__scrape | 5 credits per page. |
A failed request is never charged. The live figures are repeated in the tool
descriptions your client shows from tools/list, and every charge lands
itemized in the organization ledger — see Billing & credits.
An organization billing hold or suspension stops a web call before it runs, as
an isError result carrying payment_required or org_suspended; API-key
spend caps apply the same way.
Controls
Web appears as Web search & scrape in
Dashboard → Capabilities. Turning it
off hides both web__* tools from tools/list for that member; see
Capability controls.