Skip to main content
Exa MCP connects AI assistants to Exa’s search capabilities, including web search, code search, Exa Agent, and Exa Connect. It is open-source and available on GitHub.

Installation

Exa’s Search MCP can be installed in any MCP client with the server URL: https://mcp.exa.ai/mcp

Install in Cursor

Exa MCP is available on Cursor.

Install in VS Code

Exa MCP is available on VSCode.
Run in terminal:
codex mcp add exa --url https://mcp.exa.ai/mcp

API Key

Get your Exa API key

Exa MCP has a generous free plan. To overcome free plan rate limits and enable production use, add your own API key:
{
  "exa": {
    "url": "https://mcp.exa.ai/mcp",
    "headers": {
      "x-api-key": "YOUR_EXA_API_KEY"
    }
  }
}

Available Tools

Enabled by default:
ToolDescription
web_search_exaSearch the web for any topic and get clean, ready-to-use content
web_fetch_exaRead a webpage’s full content as clean markdown from one or more URLs
Additional tools (enable via the tools parameter):
ToolDescription
web_search_advanced_exaAdvanced web search with full control over category filters, domain restrictions, date ranges, highlights, summaries, and subpage crawling
agent_toolsAlias that enables the Exa Agent tools for async research, list-building, and enrichment
Enable specific tools:
https://mcp.exa.ai/mcp?tools=web_fetch_exa
Enable all search tools (see Exa Agent below to add the Agent tools):
{
  "exa": {
    "url": "https://mcp.exa.ai/mcp?tools=web_search_exa,web_fetch_exa,web_search_advanced_exa",
    "headers": {
      "x-api-key": "YOUR_EXA_API_KEY"
    }
  }
}

Exa Agent

Exa Agent is now available within Exa MCP. Use it for multi-step research, list-building, enrichment, and structured output when a task needs more than a single search call. Agent runs are usage-based, so the Agent tools require authentication — connect with OAuth or pass your own Exa API key. Enable the Agent tools with the agent_tools alias:
https://mcp.exa.ai/mcp?tools=agent_tools
Or alongside the default search tools:
{
  "exa": {
    "url": "https://mcp.exa.ai/mcp?tools=web_search_exa,web_fetch_exa,agent_tools",
    "headers": {
      "x-api-key": "YOUR_EXA_API_KEY"
    }
  }
}

Agent tools

ToolDescription
agent_create_runStart an async Agent run for multi-step research, list-building, enrichment, or structured output. Returns an agent_run_... ID immediately
agent_wait_for_runPoll a run until it reaches a terminal status (completed, failed, or cancelled) or times out
agent_get_run_outputRetrieve completed output: text, structured JSON, grounding citations, usage, and cost
agent_cancel_runCancel a queued or running run

How it works

Agent runs are async and run-ID based. A typical loop:
  1. Create the run with agent_create_run. Include an outputSchema whenever you need repeatable, structured results. Returns an agent_run_... ID.
  2. Wait for completion with agent_wait_for_run, which polls until the run reaches a terminal status or times out. Call it again if the run is still going.
  3. Read the output with agent_get_run_output once the run is completed. You get output.text, output.structured (when a schema was provided), output.grounding citations, plus usage and costDollars.
  4. Continue or cancel. Pass previousRunId to agent_create_run to refine or extend a completed run, or use agent_cancel_run to stop a run that is clearly wrong.
agent_create_run accepts a natural-language query plus optional outputSchema, systemPrompt, input (data to enrich, exclusion to avoid), dataSources (Exa Connect providers, up to 5), previousRunId, and effort (low, medium, high, xhigh, or auto). See the Exa Agent guide for schema patterns, effort modes, Exa Connect data sources, and pricing.

Resources

  • GitHub - View Exa MCP source code
  • npm - Install Exa MCP npm package
Web Search
Search for recent developments in AI agents and summarize the key trends.
Code Search
Find Python examples for implementing OAuth 2.0 authentication.
Read a Page
Fetch the full content of https://exa.ai and summarize what the company does.
Rate limit error (429)You’ve hit the free plan rate limit. Add your own API key to continue:
{
  "exa": {
    "url": "https://mcp.exa.ai/mcp",
    "headers": {
      "x-api-key": "YOUR_EXA_API_KEY"
    }
  }
}
Get your API keyTools not appearingRestart your MCP client after updating the config file. Some clients require a full restart to detect new MCP servers.Claude Desktop not connectingUse the built-in Connector: click + (or Add connectors) → Connectors tab → search for Exa → click +.Config file not foundCommon config locations:
  • Cursor: ~/.cursor/mcp.json
  • VS Code: .vscode/mcp.json (in project root)
  • Claude Desktop (macOS): ~/Library/Application Support/Claude/claude_desktop_config.json
  • Claude Desktop (Windows): %APPDATA%\Claude\claude_desktop_config.json
Last modified on July 7, 2026