Data as of

Exa MCP Server for Cursor: Setup & Config

Exa MCP Server gives Cursor web search and readable page retrieval, with optional advanced search and agent research tools.

Exa MCP Server Cursor configuration

  1. Choose Cursor configuration scope

    For Exa MCP Server, open Project: .cursor/mcp.json User: ~/.cursor/mcp.json. Merge into mcpServers at project or user scope.

  2. Add Exa MCP Server to Cursor

    Use the exa-mcp-server entry below in mcpServers. Keep Exa MCP Server's documented stdio connection fields and your other Cursor entries.

  3. Check Exa MCP Server in Cursor

    Exa MCP Server: Enable in Cursor’s MCP settings; inspect tools.

Config file · Project: .cursor/mcp.json

User: ~/.cursor/mcp.json

JSON
{
  "mcpServers": {
    "exa-mcp-server": {
      "command": "npx",
      "args": [
        "-y",
        "exa-mcp-server"
      ],
      "env": {
        "EXA_API_KEY": "<your Exa API key>"
      }
    }
  }
}

Exa in Cursor: stdio checks

  • Cursor must find npx exa-mcp-server (Node.js/npm) for Exa MCP Server. Enable the project/user entry in MCP settings and inspect its tools.
  • Review EXA_API_KEY for Exa MCP Server before sharing project .cursor/mcp.json; project scope travels with the repository.
  • Exa MCP Server uses stdio here: Cursor must keep the configured process running; protocol output belongs on stdout and diagnostics on stderr.
Tools
web_search_exa, web_fetch_exa, web_search_advanced_exa

Exa MCP Server — details. Cursor guide

Frequently asked questions

Cursor's Exa MCP Server entry belongs under mcpServers in .cursor/mcp.json (project) or ~/.cursor/mcp.json (user). Confirm the active scope in MCP settings.

Cursor's exa-mcp-server example uses stdio.

Exa MCP Server's Cursor configuration invokes npx exa-mcp-server (Node.js/npm).

Cursor's Exa MCP Server example references EXA_API_KEY. Check these names if startup or authentication fails; the example alone does not distinguish required from optional values.

Exa MCP Server's stored list contains 7 tools, including web_search_exa, web_fetch_exa, web_search_advanced_exa. Compare those names with Cursor's connected tool list; the stored list is not a live check.