Search the web with Brave: pay per use, no API key
Use Brave Search from Claude, Claude Code, Cursor, ChatGPT, and other agents through one Cralo balance.
Search Brave's independent web index and return normalized web, news, video, and infobox results.
Price and execution
- Price
- $0.005
- Pricing model
- Fixed price per successful call
- Execution class
- fast
Limits
No additional limits are published for this tool.
Parameters
Fields brave.web-search accepts as JSON input.
countintegerOptionalMaximum number of web results to return.
querystringRequiredNatural-language web search query.
countrystringOptionalTwo-letter country code used to localize search results.
languagestringOptionalLanguage code for search results, such as `en` or `fr`.
freshness"pd" | "pw" | "pm" | "py" | anyOptionalLimit results by page age. Use `pd`, `pw`, `pm`, or `py`, or a custom range like `2024-01-01to2024-03-31`.
safesearch"off" | "moderate" | "strict"OptionalAdult content filter. `moderate` is Brave's default when omitted.
extra_snippetsbooleanOptionalWhen true, include up to five additional excerpts per web result.
Raw input JSON Schema
{
"type": "object",
"required": [
"query"
],
"properties": {
"count": {
"type": "integer",
"default": 10,
"maximum": 20,
"minimum": 1,
"description": "Maximum number of web results to return."
},
"query": {
"type": "string",
"maxLength": 400,
"minLength": 1,
"description": "Natural-language web search query."
},
"country": {
"type": "string",
"default": "US",
"pattern": "^[A-Za-z]{2}quot;,
"description": "Two-letter country code used to localize search results."
},
"language": {
"type": "string",
"default": "en",
"maxLength": 12,
"minLength": 2,
"description": "Language code for search results, such as `en` or `fr`."
},
"freshness": {
"type": "string",
"anyOf": [
{
"enum": [
"pd",
"pw",
"pm",
"py"
]
},
{
"pattern": "^\\d{4}-\\d{2}-\\d{2}to\\d{4}-\\d{2}-\\d{2}quot;
}
],
"description": "Limit results by page age. Use `pd`, `pw`, `pm`, or `py`, or a custom range like `2024-01-01to2024-03-31`."
},
"safesearch": {
"enum": [
"off",
"moderate",
"strict"
],
"type": "string",
"default": "moderate",
"description": "Adult content filter. `moderate` is Brave's default when omitted."
},
"extra_snippets": {
"type": "boolean",
"default": false,
"description": "When true, include up to five additional excerpts per web result."
}
},
"additionalProperties": false
}Returns
Fields a successful brave.web-search call returns.
newsarray of objectRequiredagestring | nullRequiredurlstring (uri)RequiredtitlestringRequireddescriptionstring | nullRequired
querystringRequiredvideosarray of objectRequiredagestring | nullRequiredurlstring (uri)RequiredtitlestringRequireddurationstring | nullRequireddescriptionstring | nullRequired
infoboxarray of objectRequiredurlstring | nullRequiredtitlestring | nullRequireddescriptionstring | nullRequired
resultsarray of objectRequiredagestring | nullRequiredurlstring (uri)RequiredtitlestringRequireddescriptionstring | nullRequiredextra_snippetsarray of stringOptional
retrieved_atstring (date-time)Required
Raw output JSON Schema
{
"type": "object",
"required": [
"query",
"results",
"news",
"videos",
"infobox",
"retrieved_at"
],
"properties": {
"news": {
"type": "array",
"items": {
"type": "object",
"required": [
"title",
"url",
"description",
"age"
],
"properties": {
"age": {
"type": [
"string",
"null"
]
},
"url": {
"type": "string",
"format": "uri"
},
"title": {
"type": "string"
},
"description": {
"type": [
"string",
"null"
]
}
},
"additionalProperties": false
},
"maxItems": 20
},
"query": {
"type": "string"
},
"videos": {
"type": "array",
"items": {
"type": "object",
"required": [
"title",
"url",
"description",
"age",
"duration"
],
"properties": {
"age": {
"type": [
"string",
"null"
]
},
"url": {
"type": "string",
"format": "uri"
},
"title": {
"type": "string"
},
"duration": {
"type": [
"string",
"null"
]
},
"description": {
"type": [
"string",
"null"
]
}
},
"additionalProperties": false
},
"maxItems": 20
},
"infobox": {
"type": "array",
"items": {
"type": "object",
"required": [
"title",
"description",
"url"
],
"properties": {
"url": {
"type": [
"string",
"null"
],
"format": "uri"
},
"title": {
"type": [
"string",
"null"
]
},
"description": {
"type": [
"string",
"null"
]
}
},
"additionalProperties": false
},
"maxItems": 5
},
"results": {
"type": "array",
"items": {
"type": "object",
"required": [
"title",
"url",
"description",
"age"
],
"properties": {
"age": {
"type": [
"string",
"null"
]
},
"url": {
"type": "string",
"format": "uri"
},
"title": {
"type": "string"
},
"description": {
"type": [
"string",
"null"
]
},
"extra_snippets": {
"type": "array",
"items": {
"type": "string",
"maxLength": 2000
},
"maxItems": 5
}
},
"additionalProperties": false
},
"maxItems": 20
},
"retrieved_at": {
"type": "string",
"format": "date-time"
}
},
"additionalProperties": false
}Run this tool
Copy this instruction to your agent to set up Cralo and call this tool with the example input.
Set up Cralo by following https://cralo.ai/SKILL.md, then call the brave.web-search tool with this input: {"query":"Cralo","count":1,"country":"US","language":"en"}Safety notes
- Side Effect
- read_only
- Public Sources Only
- Yes
How this compares to using Brave Search directly
You do not need a separate Brave Search account or subscription for this call. Cralo uses one prepaid balance across all tools and shows the per-call price before you run the command.
Related tools
[Browse all tools]- $0.007Exa SearchSearch the web using Exa. Returns relevant pages with titles, URLs, publication details, and highlighted passages. Price covers 10 results; extra results cost more (quoted from `num_results`, max 100).Exa
exa.searchInstant - $0.10Ask PerplexityAnswer a question with Perplexity's fast, web-grounded Agent API preset and source citations.Perplexity
perplexity.askInstant - $0.007Find similar pages with ExaFind pages semantically similar to a known URL using Exa, with titles, publication details, and highlights. Price covers 10 results; extra results cost more (quoted from `num_results`, max 100).Exa
exa.find-similarInstant - $0.002Search the web with FirecrawlSearch the public web with Firecrawl and return normalized results with optional page content.Firecrawl
firecrawl.searchInstant - $0.005Search the web with PerplexityReturn ranked web results from the Perplexity Search API without AI synthesis.Perplexity
perplexity.searchInstant