Skip to content
Download Longwave

Exa Search

Exa Search is an MCP server for Exa web search. Its connected implementation exposes 3 tools for finding relevant pages, filtering research, and returning page contents.

Add to Longwave

Install elsewhere

Install Exa Search

Choose a harness. These instructions connect to the hosted MCP endpoint shown on this page.

Claude Code

Run this in your terminal. It adds a user-scoped server; use --scope project instead if it should apply only to the current project.

terminal
claude mcp add --scope user --transport http exa 'https://mcp.exa.ai/mcp?tools=web_search_exa,web_fetch_exa,web_search_advanced_exa'

What it does

Exa MCP gives an agent web search for research that needs more than a list of links. Advanced search adds categories, filters, and focused research workflows.

  • Search the web with Exa's agent-focused search.
  • Run advanced searches with category, domain, date, and content filters.
  • Find pages that match a research question.
  • Retrieve page contents for the next step of a task.
  • Pass search parameters through explicit function arguments.
  • Inspect the live Exa function schemas before calling them.

Available functions

web_fetch_exa Read a webpage's full content as clean markdown. Use after web_search_exa when highlights are insufficient or to read any URL. Best for: Extracting full content from known URLs. Batch multiple URLs in one call. Returns: Clean text content and metadata from the page(s).

Arguments

maxCharacters
number Maximum characters to extract per page (default: 3000)
urls required
array URLs to read. Batch multiple URLs in one call.
web_search_advanced_exa Advanced web search with full control over filters, domains, dates, and content options. Best for: When you need specific filters like date ranges, domain restrictions, or category filters. Not recommended for: Simple searches - use web_search_exa instead. Returns: Search results with optional highlights, summaries, and subpage content.

Arguments

additionalQueries
array Additional query variations to expand search coverage
category
string Filter results to a specific category Allowed values: company, publication, news, pdf, github, personal site, people, financial report
contextMaxCharacters
number Max characters for context string (not included by default)
enableHighlights
boolean Enable highlights extraction
enableSummary
boolean Enable summary generation for results
endCrawlDate
string Only include results crawled before this date (ISO 8601: YYYY-MM-DD)
endPublishedDate
string Only include results published before this date (ISO 8601: YYYY-MM-DD)
excludeDomains
array Exclude results from these domains
excludeText
array Exclude results containing ANY of these text strings
highlightsMaxCharacters
number Maximum total characters across all highlights per URL. Preferred over highlightsNumSentences.
highlightsNumSentences
number Deprecated. Use highlightsMaxCharacters instead.
highlightsPerUrl
number Deprecated and ignored. Use highlightsMaxCharacters instead.
highlightsQuery
string Query for highlight relevance
includeDomains
array Only include results from these domains (e.g., ['arxiv.org', 'github.com'])
includeText
array Only include results containing ALL of these text strings
livecrawlTimeout
number Timeout in milliseconds for fetching fresh content when maxAgeHours triggers a live fetch
maxAgeHours
number Maximum age of cached content in hours. 0 = always fetch fresh content, omit = use cached content with fresh fetch fallback
moderation
boolean Filter out unsafe/inappropriate content
numResults
number Number of results (1-100, default: 10)
query required
string Search query - can be a question, statement, or keywords
startCrawlDate
string Only include results crawled after this date (ISO 8601: YYYY-MM-DD)
startPublishedDate
string Only include results published after this date (ISO 8601: YYYY-MM-DD)
subpages
number Number of subpages to crawl from each result (1-10)
subpageTarget
array Keywords to target when selecting subpages
summaryQuery
string Focus query for summary generation
textMaxCharacters
number Max characters for text extraction per result
type
string Search type - 'auto': high quality and works with all filters (recommended), 'fast': quick results, 'instant': fastest results Allowed values: auto, fast, instant
userLocation
string ISO country code for geo-targeted results (e.g., 'US', 'GB', 'DE')
web_search_exa Search the web for any topic and get clean, ready-to-use content. Best for: Finding current information, news, facts, people, companies, or answering questions about any topic. Returns: Clean text content from top search results. Query tips: describe the ideal page, not keywords. "blog post comparing React and Vue performance" not "React vs Vue". Use category:people / category:company to search through Linkedin profiles / companies respectively. If highlights are insufficient, follow up with web_fetch_exa on the best URLs.

Arguments

numResults
number Number of search results to return (default: 10).
objective required
string Goal for this search turn; say which documents should rank first, which should be excluded, and what specific facts or figures to pull from them.
query required
string Natural language search query. Should be a semantically rich description of the ideal page, not just keywords. Optionally include category:<type> (company, people) to focus results — e.g. 'category:people John Doe software engineer'.

Resources

tools_list

exa://tools/list

List of available Exa tools and their descriptions

Prompts

web_search_help

Get help with web search using Exa

Questions people ask

Does Exa MCP need an API key?

Not in Longwave. Searches still bill the Exa account you sign in with.

  1. Click Add to Longwave on this page.
  2. Sign in to Exa when Longwave asks.
  3. Start a thread and pick a harness.
How do I use Exa MCP with Claude Code?

Claude Code can search the web through Exa.

  1. Click Add to Longwave on this page.
  2. Sign in to Exa when Longwave asks.
  3. Start a thread and pick Claude Code.
  4. Ask Claude Code to search the web.
How do I use Exa MCP in Cursor?

Cursor can search the web through Exa.

  1. Click Add to Longwave on this page.
  2. Sign in to Exa when Longwave asks.
  3. Start a thread and pick Cursor.
  4. Ask Cursor to search the web.
How much does Exa cost?

Exa bills the Exa account you sign in with. Longwave does not charge you for those searches.

  1. Open the Exa API pricing page .
  2. Check the current charge for the search or fetch calls you plan to use.
Can Exa return the full contents of a page?

Yes. Search finds pages, and fetch reads a URL you already have. Fetch defaults to 3000 characters per page.

  • Search for the page when you need to find it.
  • Pass the URL to fetch when you already have it.
Is Exa MCP the same as Exa Websets?

They serve different workflows. Longwave supports Exa search for research and advanced workflows, and you can add Websets for managed lists, enrichment, and monitoring.

  1. Open Marketplace and click Add.
  2. Paste the official Websets MCP endpoint .
  3. Provide an Exa API key when the server asks.
  4. Start a thread and ask the agent to create or manage a Webset.
Is Exa MCP the full Exa API?

Longwave supports the main Exa research workflows: search, page fetch, advanced filters, people and company categories, and structured result files. It does not mirror every REST endpoint as a separate MCP tool.

  • Use search to discover pages.
  • Use advanced search for categories, domains, dates, and content filters.
  • Use fetch when you already have a URL.
  • Use the similar-page workflow below for related pages.
  • Use the official Websets MCP endpoint for managed enrichment and monitoring.
Can Exa search for people or LinkedIn profiles?

Yes. Exa's legacy people-search tool is deprecated. Longwave uses Exa advanced search with people and company categories, and it returns public pages rather than a private people database.

  1. Click Add to Longwave on this page.
  2. Sign in to Exa when Longwave asks.
  3. Start a thread and pick a harness.
  4. Ask the agent to search for the person, role, or company.
  5. Tell it to use the `people` or `company` category.
  6. Review the returned profile and company pages.
Can Exa find pages similar to a URL I already have?

Yes. Longwave supports the same research goal through Exa fetch and advanced search. The agent reads the source page, builds a focused description, then finds and compares related pages.

  1. Give the agent the source URL.
  2. Ask it to fetch the page and identify its topic and selection criteria.
  3. Ask it to run advanced search for pages with the same topic.
  4. Ask it to exclude the source URL and compare the results.
How do I use an Exa query and objective together?

Yes. Longwave supports that research intent through Exa's query field and the objective in your agent request. Advanced search requires the query, while the objective tells the agent how to use the results.

  1. Describe the pages you want in the Exa query.
  2. State the research objective in the agent request.
  3. Tell the agent which category or domain filters to apply.
  4. Ask it to compare the returned pages against the objective.
How should I phrase a search so Exa doesn't burn credits?

A clear description helps Exa return relevant pages. Exa bills each call.

  1. Describe the page you want.
  2. State one clear search objective.
  3. Send one search before you add another.
What is the difference between Exa and Tavily?

Tavily is built to answer a question. Exa is built to find pages by meaning. Use Tavily for a short answer and Exa when you need the actual pages.

What is the difference between Exa and Firecrawl?

Exa finds pages. Firecrawl reads and crawls them. Use Exa to search and Firecrawl when you already have a URL or a whole site to extract.

What is the difference between Exa and Parallel?

Both are search APIs for agents. Exa is semantic web search with page fetch. Parallel is a separate search product. Pick one and see which results you trust for the job.

Should I use Exa or Context7 when the agent needs code examples?

Context7 is versioned library docs. Exa is the live web, including GitHub and Stack Overflow. Use Context7 for the official API and Exa for how people actually call it.

Give research a search engine built for agents.

Find the page first, then let the agent work from its contents.