Install
openclaw skills install exa-toolExa MCP integration for advanced search, research, and crawling.
openclaw skills install exa-toolThis skill provides access to Exa's powerful search and research capabilities through the Exa MCP server.
exa-search <tool> '{"json":"args"}' - Generic wrapper for any Exa MCP toolexa-web-search '{"query":"...", "count":10, "freshness":"pw", ...}' - Web search with optional filtersAll tools from the Exa MCP server are available:
| Tool | Description |
|---|---|
web_search_exa | Search the web for any topic, get clean content |
web_search_advanced_exa | Advanced search with filters (domains, dates, content options) |
get_code_context_exa | Find code examples, documentation, programming solutions |
crawling_exa | Get full content of a specific webpage from a known URL |
company_research_exa | Research any company for business information and news |
people_search_exa | Find people and their professional profiles |
deep_researcher_start | Start an AI research agent that writes detailed reports |
deep_researcher_check | Check status and get results from deep research task |
Get your Exa API key from https://dashboard.exa.ai/api-keys
Set the environment variable:
export EXA_API_KEY="your_exa_api_key_here"
Or add to your shell profile (~/.bashrc or ~/.zshrc):
export EXA_API_KEY="your_exa_api_key_here"
Or create a .env file in your workspace:
echo "EXA_API_KEY=your_exa_api_key_here" > ~/.openclaw/workspace/.env
source ~/.openclaw/workspace/.env
Restart OpenClaw to load the skill:
openclaw gateway restart
exa-web-search '{"query":"Step-3.5 Flash benchmarks"}'
exa-search web_search_advanced_exa '{
"query": "OpenClaw AI",
"count": 10,
"freshness": "pw",
"includeDomains": ["github.com", "docs.openclaw.ai"]
}'
exa-search get_code_context_exa '{
"query": "OpenClaw agent implementation",
"count": 5
}'
exa-search crawling_exa '{
"url": "https://docs.openclaw.ai/",
"maxPages": 10
}'
exa-search company_research_exa '{
"company": "OpenClaw",
"includeNews": true,
"newsDays": 30
}'
exa-search people_search_exa '{
"query": "Phil openclaw creator",
"count": 10
}'
# Start research
TASK_ID=$(exa-search deep_researcher_start '{
"query": "Current state of AI agents in 2026",
"maxSources": 20
}' | jq -r '.taskId')
# Check status (poll until complete)
while true; do
exa-search deep_researcher_check '{"taskId":"'"$TASK_ID"'"}'
sleep 5
done
All tools return JSON with the Exa MCP response structure. The actual content is in the result field, which varies by tool but typically includes:
content: Array of result items with title, url, text (snippet)cost, duration, sourcesExample web search output:
{
"content": [
{
"title": "Step 3.5 Flash - MathArena",
"url": "https://matharena.ai/models/stepfun_3_5_flash",
"text": "Step 3.5 Flash benchmarks and performance metrics..."
}
]
}
Agents can use these tools directly:
// In an agent session
/exec exa-search web_search_exa '{"query":"latest news"}'
// Or via API
{
"sessionTarget": "isolated",
"payload": {
"kind": "agentTurn",
"message": "Search for recent AI developments using exa-search"
}
}
"EXA_API_KEY not set"
/etc/environment"406 Not Acceptable"
Empty or no results