Overview
Exa is a neural search engine that uses embeddings to find semantically similar content. It’s particularly good at finding content that matches the meaning of your query.Installation
Environment Variables
How It Works
Quick Start
Usage with Agent
Available Methods
search(query, num_results=10)
Search for content using neural search.find_similar(url, num_results=10)
Find content similar to a given URL.get_contents(urls)
Get full content from URLs.Configuration Options
Function-Based Usage
CLI Usage
Error Handling
Common Errors
| Error | Cause | Solution |
|---|---|---|
EXA_API_KEY not configured | Missing API key | Set environment variable |
exa not installed | Missing dependency | Run pip install exa-py |
Rate limited | Too many requests | Add delays between requests |
Best Practices
Let EXA_API_KEY come from the environment
Let EXA_API_KEY come from the environment
ExaTool() defaults to the EXA_API_KEY env var. Set it in your shell or .env instead of passing api_key= inline.Cap num_results
Cap num_results
search(query, num_results=10) defaults to 10. Lower it for faster, cheaper agent loops when you only need the top matches.Handle rate limits
Handle rate limits
Exa returns a rate-limited response under heavy use. Check for an
error key in results and fall back to another search tool so the agent degrades gracefully.Related Tools
Tavily
AI-powered search
DuckDuckGo
Privacy-focused search
Serper
Google search API

