Exa compatible search API
Send the neural-search request you already use (query, numResults, includeDomains, excludeDomains, startPublishedDate, category, contents.text, contents.highlights, contents.summary) to POST /v1/search and get the same result shape back: title, URL, published date, favicon, live page text, best-matching highlights with scores and AI summaries, from the Brave Search index, $0.01 a call.
When an agent wants this
- Point an Exa SDK client's base URL at /v1 and pay per call with x402, MPP or card credits, no account
- Restrict results to a few domains or a date range
- Get page text, highlights and summaries of the top 10 results in the same call
- Find pages similar to a URL with /v1/findSimilar
Web search API with contents: Exa-style search, filters, page text and highlights $0.01
Exa-style web search: top 1-20 results with title, URL, snippet, published date and favicon (Brave index); optional domain, date, category and phrase filters; optional live page text, highlights and AI summaries of the top 10 pages. Results are for immediate use only: no storing, resale or model training (Brave API terms). Failures return 503, uncharged. Use when an agent needs current information or sources from the open web.
Inputs: q (required): Search query, at most 400 characters; count: Number of results (1-20, default 10); includeDomains: Only results from these domains: comma list or JSON array, up to 20 (example.com, github.com/org); excludeDomains: Never results from these domains: comma list or JSON array; startPublishedDate: Only pages published on or after this date (ISO 8601, e.g. 2025-01-01); endPublishedDate: Only pages published on or before this date (ISO 8601); category: news, research paper, github, pdf, tweet, linkedin profile, company, personal site or financial report; includeText: A phrase the results must contain (up to 5 words); excludeText: A phrase the results must not contain; textChars: Return the live page text of the top results, this many characters each (500-20000, or true for 3000; default none); highlights: true: the passages of each page that best match the query, with scores; numSentences: Sentences per highlight (1-10, default 3); highlightsPerUrl: Highlights per result (1-5, default 1); summary: true: a 1-3 sentence AI summary of each of the top pages; summaryQuery: What the summaries should focus on (default: the query).
Not in the free calls (it costs capacity per call); pay from the first call.
With a card key from /credits, in a header or, when your client can only fetch a URL, in the URL:
curl -H "Authorization: Bearer adt_…" "https://agent-data-tools.revmesh2074.workers.dev/search?q=x402%20payment%20protocol"
curl "https://agent-data-tools.revmesh2074.workers.dev/search?q=x402%20payment%20protocol&api_key=adt_…"
Without a key the same URL answers 402 Payment Required with x402 and MPP terms, so a wallet client pays USDC per call and retries. Over MCP (https://agent-data-tools.revmesh2074.workers.dev/mcp) this tool is search.
Example result
{
"query": "x402 payment protocol",
"provider": "Brave Search",
"count": 1,
"results": [
{
"title": "x402: an open payment protocol",
"url": "https://www.x402.org/",
"snippet": "x402 lets any HTTP API charge per request in stablecoins…",
"age": "2 days ago",
"publishedDate": "2026-11-04T09:00:00.000Z",
"author": null,
"domain": "x402.org",
"favicon": "https://imgs.search.brave.com/x402-favicon.png",
"image": null
}
],
"terms": "Results are for the caller's immediate use: no storing or caching beyond the current task, no resale and no model training (Brave Search API terms)."
}Find similar pages and websites: like Exa findSimilar $0.01
Find pages like a given URL: we read it, search on its title and topic words and return the top 1-20 similar pages (title, URL, snippet, date), leaving out the source site by default. Same filters and contents options as /search (page text, highlights, summaries). Results are for immediate use only (Brave API terms). Use to find competitors, related articles or alternatives to a page.
Inputs: url (required): The page to find similar pages for; count: Number of results (1-20, default 10); excludeSourceDomain: Leave out the source page's whole domain (default true); includeDomains: Only results from these domains: comma list or JSON array, up to 20 (example.com, github.com/org); excludeDomains: Never results from these domains: comma list or JSON array; startPublishedDate: Only pages published on or after this date (ISO 8601, e.g. 2025-01-01); endPublishedDate: Only pages published on or before this date (ISO 8601); category: news, research paper, github, pdf, tweet, linkedin profile, company, personal site or financial report; includeText: A phrase the results must contain (up to 5 words); excludeText: A phrase the results must not contain; textChars: Return the live page text of the top results, this many characters each (500-20000, or true for 3000; default none); highlights: true: the passages of each page that best match the query, with scores; numSentences: Sentences per highlight (1-10, default 3); highlightsPerUrl: Highlights per result (1-5, default 1); summary: true: a 1-3 sentence AI summary of each of the top pages; summaryQuery: What the summaries should focus on (default: the query).
Not in the free calls (it costs capacity per call); pay from the first call.
With a card key from /credits, in a header or, when your client can only fetch a URL, in the URL:
curl -H "Authorization: Bearer adt_…" "https://agent-data-tools.revmesh2074.workers.dev/search/similar?url=https%3A%2F%2Fwww.x402.org%2F"
curl "https://agent-data-tools.revmesh2074.workers.dev/search/similar?url=https%3A%2F%2Fwww.x402.org%2F&api_key=adt_…"
Without a key the same URL answers 402 Payment Required with x402 and MPP terms, so a wallet client pays USDC per call and retries. Over MCP (https://agent-data-tools.revmesh2074.workers.dev/mcp) this tool is search_similar.
Example result
{
"url": "https://www.x402.org/",
"query": "x402 open payment protocol http stablecoin payments",
"provider": "Brave Search",
"count": 1,
"results": [
{
"title": "HTTP 402 Payment Required",
"url": "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/402",
"snippet": "The HTTP 402 Payment Required status code is reserved…",
"age": null,
"publishedDate": null,
"author": null,
"domain": "developer.mozilla.org",
"favicon": null,
"image": null
}
],
"terms": "Results are for the caller's immediate use: no storing or caching beyond the current task, no resale and no model training (Brave Search API terms)."
}Web answer, AI with citations: answer a question from live search results $0.01
Answer a question from the live web in one call: a Brave web search, the top result pages read, and an answer written by Llama 4 Scout from those sources only, with inline [n] citations and the source list (title, URL). Says so when the sources do not answer it. Results are for the caller's immediate use only: no storing, resale or model training (Brave API terms). Use when an agent needs a current, sourced answer rather than raw search results.
Inputs: q (required): The question, at most 400 characters.
Not in the free calls (it costs capacity per call); pay from the first call.
With a card key from /credits, in a header or, when your client can only fetch a URL, in the URL:
curl -H "Authorization: Bearer adt_…" "https://agent-data-tools.revmesh2074.workers.dev/ai/answer?q=What%20is%20the%20x402%20payment%20protocol%3F"
curl "https://agent-data-tools.revmesh2074.workers.dev/ai/answer?q=What%20is%20the%20x402%20payment%20protocol%3F&api_key=adt_…"
Without a key the same URL answers 402 Payment Required with x402 and MPP terms, so a wallet client pays USDC per call and retries. Over MCP (https://agent-data-tools.revmesh2074.workers.dev/mcp) this tool is ai_answer.
Example result
{
"question": "What is the x402 payment protocol?",
"answer": "x402 is an open protocol that lets an HTTP server charge for a request: it answers 402 Payment Required with the price, and the client pays in stablecoins and retries [1][2].",
"sources": [
{
"n": 1,
"title": "x402: an open payment protocol",
"url": "https://www.x402.org/"
}
],
"model": "@cf/meta/llama-4-scout-17b-16e-instruct",
"terms": "Results are for the caller's immediate use…"
}Questions
Is it the same index as Exa?
No. Results come from the Brave Search index and are keyword-ranked (resolvedSearchType is keyword); the request and response shapes follow the neural-search SDKs so clients work unchanged.
How many results?
Up to 20 per call; a larger numResults returns 20 rather than an error.
Can I store the results?
No. Results are for the caller's immediate use: no storing, resale or model training (Brave API terms).
Where do the results come from?
The Brave Search API, one request per paid call. Results are for the caller's immediate use: no storing, resale or model training.
What if the search provider is down or the daily capacity is used up?
The call answers 503 and nothing is charged.
How do I pay?
Each successful call costs the tool's price; failed calls are not charged. Then pay with card credits from $1 (the key goes in an Authorization header or as api_key= in the URL) or per call in USDC over x402 or MPP. No account is needed.