Skip to main content
Glama

Agent Data Tools: Web, documents and search

Web search API with contents: Exa-style search, filters, page text and highlights

search
Read-only

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. Example: q=x402 payment protocol. Price $0.01/call via x402 USDC or a card key (/credits); failed calls free. Reads or computes only and changes nothing; each call is charged, so repeats are not free.

Input Schema

NameRequiredDescriptionDefault
qYesSearch query, at most 400 characters
countNoNumber of results (1-20, default 10)
summaryNotrue: a 1-3 sentence AI summary of each of the top pages
categoryNonews, research paper, github, pdf, tweet, linkedin profile, company, personal site or financial report
textCharsNoReturn the live page text of the top results, this many characters each (500-20000, or true for 3000; default none)
highlightsNotrue: the passages of each page that best match the query, with scores
excludeTextNoA phrase the results must not contain
includeTextNoA phrase the results must contain (up to 5 words)
numSentencesNoSentences per highlight (1-10, default 3)
summaryQueryNoWhat the summaries should focus on (default: the query)
excludeDomainsNoNever results from these domains: comma list or JSON array
includeDomainsNoOnly results from these domains: comma list or JSON array, up to 20 (example.com, github.com/org)
endPublishedDateNoOnly pages published on or before this date (ISO 8601)
highlightsPerUrlNoHighlights per result (1-5, default 1)
startPublishedDateNoOnly pages published on or after this date (ISO 8601, e.g. 2025-01-01)

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed13 schema fields changed
    • addedInput schema / properties / category
      Added value: +{
      +  "description": "news, research paper, github, pdf, tweet, linkedin profile, company, personal site or financial report",
      +  "type": "string"
      +}
    • addedInput schema / properties / endPublishedDate
      Added value: +{
      +  "description": "Only pages published on or before this date (ISO 8601)",
      +  "type": "string"
      +}
    • addedInput schema / properties / excludeDomains
      Added value: +{
      +  "description": "Never results from these domains: comma list or JSON array",
      +  "type": "string"
      +}
    • addedInput schema / properties / excludeText
      Added value: +{
      +  "description": "A phrase the results must not contain",
      +  "type": "string"
      +}
    • addedInput schema / properties / highlights
      Added value: +{
      +  "description": "true: the passages of each page that best match the query, with scores",
      +  "type": [
      +    "string",
      +    "number",
      +    "boolean"
      +  ]
      +}
    • addedInput schema / properties / highlightsPerUrl
      Added value: +{
      +  "description": "Highlights per result (1-5, default 1)",
      +  "maximum": 9007199254740991,
      +  "minimum": -9007199254740991,
      +  "type": "integer"
      +}
    • addedInput schema / properties / includeDomains
      Added value: +{
      +  "description": "Only results from these domains: comma list or JSON array, up to 20 (example.com, github.com/org)",
      +  "type": "string"
      +}
    • addedInput schema / properties / includeText
      Added value: +{
      +  "description": "A phrase the results must contain (up to 5 words)",
      +  "type": "string"
      +}
    • addedInput schema / properties / numSentences
      Added value: +{
      +  "description": "Sentences per highlight (1-10, default 3)",
      +  "maximum": 9007199254740991,
      +  "minimum": -9007199254740991,
      +  "type": "integer"
      +}
    • addedInput schema / properties / startPublishedDate
      Added value: +{
      +  "description": "Only pages published on or after this date (ISO 8601, e.g. 2025-01-01)",
      +  "type": "string"
      +}
    • addedInput schema / properties / summary
      Added value: +{
      +  "description": "true: a 1-3 sentence AI summary of each of the top pages",
      +  "type": [
      +    "string",
      +    "number",
      +    "boolean"
      +  ]
      +}
    • addedInput schema / properties / summaryQuery
      Added value: +{
      +  "description": "What the summaries should focus on (default: the query)",
      +  "type": "string"
      +}
    • addedInput schema / properties / textChars
      Added value: +{
      +  "description": "Return the live page text of the top results, this many characters each (500-20000, or true for 3000; default none)",
      +  "maximum": 9007199254740991,
      +  "minimum": -9007199254740991,
      +  "type": "integer"
      +}
  2. Added

TDQS

A4.1/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the annotations' safety profile, the description discloses pricing ($0.01/call via x402 USDC or card key), that failures return 503 and are uncharged, that repeats are charged, and licensing terms prohibiting storing, resale or model training. This is exactly the operational context annotations cannot convey.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single front-loaded block that leads with what is returned, then filters, then cost and terms. The legal and pricing sentences are dense but each carries information an agent needs; only the index/cost details could be trimmed slightly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 15-parameter tool with no output schema, the description covers return fields, failure mode, cost and usage restrictions, which is substantial. It leaves the exact response envelope and pagination/limit behavior implicit, but no critical gap blocks correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so every one of the 15 parameters is already documented and the baseline is 3. The description adds only a light layer ("optional domain, date, category and phrase filters", summaries of the top 10 pages), without clarifying interactions such as textChars plus highlights on large result counts.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

"Exa-style web search" names a specific verb and resource, then enumerates the return fields (title, URL, snippet, published date, favicon) and the Brave index backing it, so the agent knows exactly what the tool produces. It stops short of differentiating from siblings like news, contents or extract, which overlap in scope.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

"Use when an agent needs current information or sources from the open web" plus a concrete example (q=x402 payment protocol) gives clear positive guidance. There are no exclusions or pointers to sibling alternatives (news for headlines, contents for a known URL), so the agent must infer when to prefer them.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.