mcpField
M
mcp-exa

mcp-exa

Local
github.com/daedalusSearch0Updated 27w ago

About mcp-exa

mcp-exa is a Python MCP server for clients that need Exa web search, code examples, and URL content. It uses Exa’s public MCP endpoint and requires no API key.

Key features

  1. 01Web search
  2. 02Advanced filtered search
  3. 03Code context lookup
  4. 04Fetch content from a URL

Use cases

  1. 01Search for information on a topic
  2. 02Find code examples on GitHub or Stack Overflow
  3. 03Retrieve the full content of a URL

MCP support

Exposes Exa search capabilities to MCP clients through four tools: web search, advanced search, code context lookup, and URL crawling.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

mcp.json · Universal config
{
"mcpServers": {
"daedalus-mcp-exa": {
"command": "uvx",
"args": [
"mcp-exa"
]
}
}
}
Run commanduvx mcp-exa

Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.

Packages
pypimcp-exa0.1.1

Tools

9

Saved tool list · updated 2w ago

ParameterTypeRequiredDescription
typeanyNoSearch type - 'auto', 'fast', 'deep', 'deep-reasoning', or 'instant'.
flagsanyNoExperimental flags for Exa usage.
querystringYesThe search query string.
categoryanyNoData category to focus on (e.g., 'company', 'news', 'research_paper').
contentsanyNoOptions for retrieving page contents. Use False to disable.
moderationanyNoIf True, moderate search results for safety.
num_resultsanyNoNumber of search results to return (default: 10).
exclude_textanyNoStrings that must not appear in the page text.
include_textanyNoStrings that must appear in the page text.
output_schemaanyNoJSON schema for deep search structured output.
user_locationanyNoTwo-letter ISO country code for user location.
end_crawl_dateanyNoOnly links crawled before this date (YYYY-MM-DD).
exclude_domainsanyNoDomains to exclude from the search.
include_domainsanyNoDomains to include in the search.
start_crawl_dateanyNoOnly links crawled after this date (YYYY-MM-DD).
additional_queriesanyNoAlternative query formulations for deep search.
end_published_dateanyNoOnly links published before this date (YYYY-MM-DD).
start_published_dateanyNoOnly links published after this date (YYYY-MM-DD).

Details

From the project README

MCP Exa

A Python MCP server that exposes Exa search capabilities (no API key required)

PyPI Python Coverage Ruff

mcp-name: io.github.daedalus/mcp-exa

Install

pip install mcp-exa

Usage

No API key required. The server uses Exa's public MCP endpoint.

Run the MCP server:

mcp-exa

Or use as a module:

python -m mcp_exa

Configuration

Available Tools

The server exposes the following MCP tools:

ToolDescription
web_search_exaSearch the web for any topic
get_code_context_exaFind code examples from GitHub, Stack Overflow
crawling_exaGet full content from a specific URL
web_search_advanced_exaAdvanced search with filters

MCP Client Configuration

Claude Desktop

Add to your config file:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "exa": {
      "command": "mcp-exa"
    }
  }
}
OpenCode

Add to your opencode.json:

{
  "mcp": {
    "exa": {
      "type": "stdio",
      "command": "mcp-exa",
      "enabled": true
    }
  }
}

Development

git clone https://github.com/daedalus/mcp-exa.git
cd mcp-exa
pip install -e ".[test]"

# run tests
pytest

# format
ruff format src/ tests/

# lint
ruff check src/ tests/

# type check
mypy src/

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.