Vibe coding should never have a bad vibe. exa-code is a huge step towards coding agents that never hallucinate.
When your coding agent makes a search query, exa-code searches over billions
of Github repos, docs pages, Stackoverflow posts, and more, to find the perfect, token-efficient context that the agent needs to code correctly. It's powered by the Exa search engine.
Examples of queries you can make with exa-code:
- use Exa search in python and make sure content is always livecrawled
- use correct syntax for vercel ai sdk to call gpt-5 nano asking it how are you
- how to set up a reproducible Nix Rust development environment
β¨ Works with Cursor and Claude Code! Use the HTTP-based configuration format:
{
"mcpServers": {
"exa": {
"type": "http",
"url": "https://mcp.exa.ai/mcp",
"headers": {}
}
}
}You can enable specific tool(s) using the tools parameter (if multiple, then with a comma-separated list):
https://mcp.exa.ai/mcp?tools=web_search_exa,get_code_context_exa
Or enable all tools:
https://mcp.exa.ai/mcp?tools=web_search_exa,get_code_context_exa,crawling_exa,company_research_exa,linkedin_search_exa,deep_researcher_start,deep_researcher_check
You may include your exa api key in the url like this:
https://mcp.exa.ai/mcp?exaApiKey=YOUREXAKEY
Note: By default, only web_search_exa and get_code_context_exa are enabled. Add other tools as needed using the tools parameter.
A Model Context Protocol (MCP) server that connects AI assistants like Claude to Exa AI's search capabilities, including web search, research tools, and our new code search feature.
Connect directly to Exa's hosted MCP server (instead of running it locally).
https://mcp.exa.ai/mcp
Add this to your Claude Desktop configuration file:
{
"mcpServers": {
"exa": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://mcp.exa.ai/mcp"
]
}
}
}For Cursor and Claude Code, use this HTTP-based configuration format:
{
"mcpServers": {
"exa": {
"type": "http",
"url": "https://mcp.exa.ai/mcp",
"headers": {}
}
}
}Open your Codex configuration file:
code ~/.codex/config.tomlAdd this configuration:
[mcp_servers.exa]
command = "npx"
args = ["-y", "mcp-remote", "https://mcp.exa.ai/mcp"]
env = { EXA_API_KEY = "your-api-key-here" }Replace your-api-key-here with your actual Exa API key from dashboard.exa.ai/api-keys.
The easiest way to get started with Exa in Claude Code, using plugins:
# Add the Exa marketplace
/plugin marketplace add exa-labs/exa-mcp-server
# Install the plugin
/plugin install exa-mcp-serverThen set your API key:
export EXA_API_KEY="your-api-key-here"Get your API key from dashboard.exa.ai/api-keys.
npm install -g exa-mcp-serverclaude mcp add exa -e EXA_API_KEY=YOUR_API_KEY -- npx -y exa-mcp-serverTo install the Exa MCP server via Smithery, head over to:
You can find claude_desktop_config.json inside the settings of Claude Desktop app:
Open the Claude Desktop app and enable Developer Mode from the top-left menu bar.
Once enabled, open Settings (also from the top-left menu bar) and navigate to the Developer Option, where you'll find the Edit Config button. Clicking it will open the claude_desktop_config.json file, allowing you to make the necessary edits.
OR (if you want to open claude_desktop_config.json from terminal)
- Open your Claude Desktop configuration:
code ~/Library/Application\ Support/Claude/claude_desktop_config.json- Open your Claude Desktop configuration:
code %APPDATA%\Claude\claude_desktop_config.json{
"mcpServers": {
"exa": {
"command": "npx",
"args": ["-y", "exa-mcp-server"],
"env": {
"EXA_API_KEY": "your-api-key-here"
}
}
}
}Replace your-api-key-here with your actual Exa API key from dashboard.exa.ai/api-keys.
The Exa MCP server includes powerful tools for developers and researchers:
- get_code_context_exa: Search and get relevant code snippets, examples, and documentation from open source libraries, GitHub repositories, and programming frameworks. Perfect for finding up-to-date code documentation, implementation examples, API usage patterns, and best practices from real codebases.
- web_search_exa: Performs real-time web searches with optimized results and content extraction.
- company_research: Comprehensive company research tool that crawls company websites to gather detailed information about businesses.
- crawling: Extracts content from specific URLs, useful for reading articles, PDFs, or any web page when you have the exact URL.
- linkedin_search: Search LinkedIn for companies and people using Exa AI. Simply include company names, person names, or specific LinkedIn URLs in your query.
- deep_researcher_start: Start a smart AI researcher for complex questions. The AI will search the web, read many sources, and think deeply about your question to create a detailed research report.
- deep_researcher_check: Check if your research is ready and get the results. Use this after starting a research task to see if it's done and get your comprehensive report.
Note: By default, only web_search_exa and get_code_context_exa are enabled. You can enable additional tools using the tools= parameter (see examples below).
{
"mcpServers": {
"exa": {
"command": "npx",
"args": [
"-y",
"exa-mcp-server",
"tools=get_code_context_exa"
],
"env": {
"EXA_API_KEY": "your-api-key-here"
}
}
}
}You can either enable all tools or any specfic tools. Use a comma-separated list to enable the tools you need:
{
"mcpServers": {
"exa": {
"command": "npx",
"args": [
"-y",
"exa-mcp-server",
"tools=get_code_context_exa,web_search_exa,company_research_exa,crawling_exa,linkedin_search_exa,deep_researcher_start,deep_researcher_check"
],
"env": {
"EXA_API_KEY": "your-api-key-here"
}
}
}
}If you prefer to run the server directly, you can use npx:
# Run with default tools only (web_search_exa and get_code_context_exa)
npx exa-mcp-server
# Enable specific tools only
npx exa-mcp-server tools=web_search_exa
# All tools
npx exa-mcp-server tools=web_search_exa,get_code_context_exa,crawling_exa,company_research_exa,linkedin_search_exa,deep_researcher_start,deep_researcher_checkBuilt with β€οΈ by team Exa