Exa Search
OpenClaw supports Exa AI as a web_search provider. Exa
offers neural, keyword, and hybrid search modes with built-in content
extraction (highlights, text, summaries).
Get an API key
- Create an account
Sign up at exa.ai and generate an API key from your dashboard.
- Store the key
Set
EXA_API_KEYin the Gateway environment, or configure via:openclaw configure --section web
Config
{
plugins: {
entries: {
exa: {
config: {
webSearch: {
apiKey: "exa-...", // optional if EXA_API_KEY is set
},
},
},
},
},
tools: {
web: {
search: {
provider: "exa",
},
},
},
}
Environment alternative: set EXA_API_KEY in the Gateway environment.
For a gateway install, put it in ~/.openclaw/.env.
Tool parameters
| Parameter | Description |
|---|---|
query | Search query (required) |
count | Results to return (1-100) |
type | Search mode: auto, neural, fast, deep, deep-reasoning, or instant |
freshness | Time filter: day, week, month, or year |
date_after | Results after this date (YYYY-MM-DD) |
date_before | Results before this date (YYYY-MM-DD) |
contents | Content extraction options (see below) |
Content extraction
Exa can return extracted content alongside search results. Pass a contents
object to enable:
await web_search({
query: "transformer architecture explained",
type: "neural",
contents: {
text: true, // full page text
highlights: { numSentences: 3 }, // key sentences
summary: true, // AI summary
},
});
| Contents option | Type | Description |
|---|---|---|
text | boolean | { maxCharacters } | Extract full page text |
highlights | boolean | { maxCharacters, query, numSentences, highlightsPerUrl } | Extract key sentences |
summary | boolean | { query } | AI-generated summary |
Search modes
| Mode | Description |
|---|---|
auto | Exa picks the best mode (default) |
neural | Semantic/meaning-based search |
fast | Quick keyword search |
deep | Thorough deep search |
deep-reasoning | Deep search with reasoning |
instant | Fastest results |
Notes
- If no
contentsoption is provided, Exa defaults to{ highlights: true }so results include key sentence excerpts - Results preserve
highlightScoresandsummaryfields from the Exa API response when available - Result descriptions are resolved from highlights first, then summary, then full text — whichever is available
freshnessanddate_after/date_beforecannot be combined — use one time-filter mode- Up to 100 results can be returned per query (subject to Exa search-type limits)
- Results are cached for 15 minutes by default (configurable via
cacheTtlMinutes) - Exa is an official API integration with structured JSON responses
Related
- Web Search overview -- all providers and auto-detection
- Brave Search -- structured results with country/language filters
- Perplexity Search -- structured results with domain filtering