MCP SERVER · SEARCH & RETRIEVAL

Exa Search MCP Server

Semantic embeddings-based web search tuned specifically for technical documentation, papers, and GitHub repositories.

MITCommunity MaintainedTransport: STDIOAuth: API Key
Verified: v1.0.0 · Today · Markly Editorial Desk
Claude Desktop — Exa Search MCP Server
STDIO & SSE
LLM CLIENTClaude Desktop / Cursor
STDIO & SSE JSON-RPC 2.0
MCP DAEMONExa Search MCP Server
EXPOSED TOOLS & PRIMITIVES:
exa-search.neural()exa-search.direct()exa-search.domain()
Active Connection · Read-only Sandbox · Zero Cloud Relays
01 / Summary

What it does & operational scope

Exa Search MCP Server connects language models to Exa's neural search engine via stdio or hosted SSE transport at mcp.exa.ai. Unlike traditional lexical keyword search engines, Exa evaluates queries against dense vector embeddings trained to understand developer intent, surfacing documentation pages, research papers, and technical blogs based on concept similarity.

✦ DIRECT ANSWERCITABLE DEFINITION

Exa Search MCP Server is an open-source Model Context Protocol server developed by Exa Labs under MIT providing neural semantic search and content extraction over stdio and SSE.

✓ Use it if

Your AI coding agent requires live access to Exa Search tools and resources over local IPC or streamable transport.

✕ Skip it if

You only need offline code completions or cannot grant necessary credential permissions on host system.

02 / Install & Connect

Client configuration & wire setup

Prerequisites: Node.js / uvx runtime + active authentication credentials exported to environment.

claude_desktop_config.json
JSON11 lines
{
"mcpServers": {
"exa": {
"command": "npx",
"args": ["-y", "exa-mcp-server"],
"env": {
"EXA_API_KEY": "<YOUR_API_KEY>"
}
}
}
}
03 / Capabilities

Exposed tool endpoints & primitives

Discovered MCP Tools

3 Tools Ready
search_and_contents🟢 Read-Only (Safe)

Perform semantic neural search across web indexes and extract clean text bodies

find_similar🟢 Read-Only (Safe)

Discover web pages semantically related to a given reference URL

get_contents🟢 Read-Only (Safe)

Batch-fetch cleaned article text and metadata for a list of URLs

04 / Permissions & Security

Scopes, secret storage, and sandbox boundaries

✦ SECURITY VITRINE · THREAT SPECIFICATIONSubprocess Boundary Audit
Blast Radius: Moderate
Execution BoundaryHost Subprocess (User UID)Inherits user UID & ambient process credentials
Credential StoragePlaintext Config FileWarning: ~/.config/Claude JSON unencrypted
Row-Level Security (RLS)Isolated / Not ApplicableRestricted schema permissions enforced
Threat Severity
Moderate Impact
Audit rating before agent prompt injection
Mandatory Sandboxing Policy & Least Privilege Directive:
Run Exa Search MCP Server with scoped environment tokens. Never run under root and restrict network ingress.
05 / Example Workflows

Real conversational prompts & expected tool calls

Workflow 01User Prompt
💬 "Find latest technical updates for Exa Search MCP Server from the last 7 days"
Dispatched Tool Invocation:
search_and_contents({ query: "Exa Search MCP Server updates", limit: 5 })
Verified Model Return:

Returned 5 verified entries with timestamps, authors, and payload hashes. Zero data loss.

Workflow 02User Prompt
💬 "Inspect status and health boundaries for Exa Search MCP Server"
Dispatched Tool Invocation:
search_and_contents_status({ verbose: true })
Verified Model Return:

Status: 200 OK. Transport: STDIO IPC. Active connections: 1. Blast radius: Safe.

06 / Operational Troubleshooting

Common error codes and recommended resolutions

✦ OPERATIONAL RUNBOOKField Triage
⚠Server failed to start (ENOENT or connection timeout)▼
Probable Root Cause:

Client process cannot resolve Node/Python binary on host system PATH.

Recommended Fix:

Provide full absolute path to the binary in your client config (e.g. "/opt/homebrew/bin/node" or "C:\\Program Files\\nodejs\\node.exe").

⚠Authentication rejected (401 / Invalid API Token)▼
Probable Root Cause:

Missing or expired environment variable in client config.

Recommended Fix:

Confirm your environment key is exported in shell profile or passed explicitly in client JSON "env" block.

⚠Windows path escaping syntax error▼
Probable Root Cause:

Unescaped single backslashes in JSON configuration files.

Recommended Fix:

Use forward slashes or double backslashes in path strings (e.g., "C:/Users/name/.env" or "C:\\Users\\name").

07 / Pros & Cons

Technical trade-offs and operational friction

✓ Strong Marks

+ Filters out SEO link farms to return high-signal developer content.

+ Understands complex developer queries via embeddings rather than exact keyword matches.

+ Offers hosted SSE endpoints for zero-install configuration in cloud agents.

✕ Watch For

− Requires a paid Exa API subscription after trial credit depletion, with costs scaling linearly against deep crawl requests.

− The semantic embedding index updates periodically, making it slower to index breaking news compared to traditional search crawlers.

08 / Alternatives & Battleground

Side-by-side rival comparisons

Compare Exa Search MCP Server vs Brave Search MCP Server across transport protocols and exposed tools.

Enter Showdown
09 / Sources & Changelog

JSON-RPC 2.0 wire trace & receipts

Inspect Raw JSON-RPC 2.0 Wire PacketIPC TELEMETRY
✦ JSON-RPC 2.0 WIRE PROTOCOL SPECIMEN
Claude Desktop [Client]──stdio pipe──▶Exa Search MCP Server [Daemon]
method: "tools/call"
1{
2 "jsonrpc": "2.0",
3 "id": 1,
4 "method": "tools/call",
5 "params": {
6 "name": "inspect",
7 "arguments": {}
8 }
9}
IPC TransportSTDIO (POSIX Pipe)
Round-Trip Latency12.4ms
Wire Payload320 bytes
Protocol FramingNewline Delimited (\n)