Exa Tool

v1.0.0

Exa MCP integration for advanced search, research, and crawling.

0· 1.3k·11 current·11 all-time

Install

OpenClaw Prompt Flow

Install with OpenClaw

Best for remote or guided setup. Copy the exact prompt, then paste it into OpenClaw for claireaicodes/exa-tool.

Previewing Install & Setup.
Prompt PreviewInstall & Setup
Install the skill "Exa Tool" (claireaicodes/exa-tool) from ClawHub.
Skill page: https://clawhub.ai/claireaicodes/exa-tool
Keep the work scoped to this skill only.
After install, inspect the skill metadata and help me finish setup.
Required env vars: EXA_API_KEY
Use only the metadata you can verify from ClawHub; do not invent missing requirements.
Ask before making any broader environment changes.

Command Line

CLI Commands

Use the direct CLI path if you want to install manually and keep every step visible.

OpenClaw CLI

Canonical install target

openclaw skills install claireaicodes/exa-tool

ClawHub CLI

Package manager switcher

npx clawhub@latest install exa-tool
Security Scan
VirusTotalVirusTotal
Benign
View report →
OpenClawOpenClaw
Suspicious
medium confidence
Purpose & Capability
The skill's stated purpose (Exa MCP search/crawling) matches the single included executable (exa-web-search) and the single required env var (EXA_API_KEY). However, SKILL.md, README.md, and package.json repeatedly reference a generic wrapper 'exa-search' (and set package.json.main to ./bin/exa-search) which is not present in the file set. The metadata also advertises two bins (exa-search and exa-web-search) while only exa-web-search exists. This inconsistency could be an incomplete package or intentional omission; it does not by itself indicate malicious behavior but is unexpected.
Instruction Scope
The runtime instructions confine behavior to calling the Exa MCP endpoint (mcp.exa.ai) using JSON-RPC over HTTPS and handling SSE. The SKILL.md does not instruct reading unrelated system files or exporting other credentials. Examples show crawling arbitrary URLs and people/company searches (functionally within the claimed scope), but these are expected for a search/research tool and are privacy-sensitive rather than out-of-scope.
Install Mechanism
There is no install spec (lowest-risk style) and the included node script uses standard https calls — no external downloads or install hooks detected. But package.json points to a missing ./bin/exa-search and declares two binaries while only exa-web-search exists on disk. The README's suggested copy/symlink install steps are manual. The missing file entries suggest incomplete packaging or an oversight.
Credentials
Only EXA_API_KEY is required and declared as the primary credential. That is proportionate for a service that authenticates to Exa's MCP API. The skill does not request additional unrelated secrets or config paths.
Persistence & Privilege
The skill does not request always: true and is user-invocable with normal autonomous invocation allowed (platform default). It does not attempt to modify other skills or system-wide settings in the files provided.
What to consider before installing
This skill appears to do what it says (call Exa's MCP endpoints) and only needs your EXA_API_KEY, but the package is inconsistent: many references to a generic 'exa-search' binary exist, yet that file is missing and package.json points to it. Before installing: (1) verify the skill's source/repository (the package lists a ClaireAICodes repo and homepage exa.ai — confirm you trust them), (2) ask the author for the missing exa-search binary or a corrected package, (3) consider creating a limited-scope API key or verifying Exa dashboard permissions/quotas, and (4) review network endpoints (mcp.exa.ai) and privacy implications of crawling/people-search. If you cannot validate the missing files or provenance, avoid installing in sensitive environments.

Like a lobster shell, security has layers — review code before you run it.

Runtime requirements

🔍 Clawdis
EnvEXA_API_KEY
Primary envEXA_API_KEY
latestvk9790yhfq3a0mnm4kye1yczmq981ccgs
1.3kdownloads
0stars
1versions
Updated 2mo ago
v1.0.0
MIT-0

Exa MCP Tool

This skill provides access to Exa's powerful search and research capabilities through the Exa MCP server.

Available Tools

General Purpose

  • exa-search <tool> '{"json":"args"}' - Generic wrapper for any Exa MCP tool

Specialized Wrappers

  • exa-web-search '{"query":"...", "count":10, "freshness":"pw", ...}' - Web search with optional filters

Full Tool List (via exa-search)

All tools from the Exa MCP server are available:

ToolDescription
web_search_exaSearch the web for any topic, get clean content
web_search_advanced_exaAdvanced search with filters (domains, dates, content options)
get_code_context_exaFind code examples, documentation, programming solutions
crawling_exaGet full content of a specific webpage from a known URL
company_research_exaResearch any company for business information and news
people_search_exaFind people and their professional profiles
deep_researcher_startStart an AI research agent that writes detailed reports
deep_researcher_checkCheck status and get results from deep research task

Setup

  1. Get your Exa API key from https://dashboard.exa.ai/api-keys

  2. 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
    
  3. Restart OpenClaw to load the skill:

    openclaw gateway restart
    

Usage Examples

Basic Web Search

exa-web-search '{"query":"Step-3.5 Flash benchmarks"}'

Advanced Search with Filters

exa-search web_search_advanced_exa '{
  "query": "OpenClaw AI",
  "count": 10,
  "freshness": "pw",
  "includeDomains": ["github.com", "docs.openclaw.ai"]
}'

Code Search

exa-search get_code_context_exa '{
  "query": "OpenClaw agent implementation",
  "count": 5
}'

Crawl Specific URL

exa-search crawling_exa '{
  "url": "https://docs.openclaw.ai/",
  "maxPages": 10
}'

Company Research

exa-search company_research_exa '{
  "company": "OpenClaw",
  "includeNews": true,
  "newsDays": 30
}'

People Search

exa-search people_search_exa '{
  "query": "Phil openclaw creator",
  "count": 10
}'

Deep Research (Two-Step)

# 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

Output Format

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)
  • Sometimes additional metadata like cost, duration, sources

Example 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..."
    }
  ]
}

Using in OpenClaw Agents

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"
  }
}

Notes

  • Rate limits apply based on your Exa plan
  • The MCP server uses Server-Sent Events (SSE) streaming; the wrapper handles this
  • All tools accept various optional parameters; see Exa docs for full schema
  • Errors are returned with proper exit codes and messages to stderr

Troubleshooting

"EXA_API_KEY not set"

  • Ensure the environment variable is exported in the same session where OpenClaw runs
  • If using systemd/systemctl, set the key in the service file or /etc/environment

"406 Not Acceptable"

  • The tool already sets the correct Accept header; this shouldn't occur in the wrapper

Empty or no results

References

Comments

Loading comments...