# Exa MCP MCP

> Exa is an advanced semantic search MCP that finds web content based on meaning, not keywords. It lets your AI client query the entire web for context, extract clean text from specific URLs, and find articles semantically similar to a known document. Stop searching by topic; start asking questions and getting actionable data.

## Overview
- **Category:** ai-frontier
- **Price:** Free
- **Tags:** neural-search, semantic-similarity, web-data, contextual-search, content-curation, ai-search

## Description

Need to research something across dozens of sources? Exa helps your agent understand the intent behind a question, returning high-quality results even when you don't know the exact keywords. Instead of relying on standard searches that only match terms, this MCP uses neural embeddings to find web pages and articles that are conceptually similar to what you need. You can ask it to search within a specific domain for targeted documentation or pull clean text from multiple URLs at once. Since your keys pass through a zero-trust proxy when communicating with Exa, the credentials are used only in transit—they never sit on disk. This setup lets you build complex workflows that gather web data contextually before passing it to other tools in your agent chain.

## Tools

### answer
Requests the MCP to provide an AI-generated answer based on web search results for general queries.

### find_similar
Finds multiple web pages that are conceptually related to a provided URL, useful for competitive analysis.

### find_similar_with_contents
Identifies semantically similar pages and includes their actual readable text content in the results.

### get_contents
Pulls out clean, structured body text and metadata from one or more given web page IDs.

### search
Performs a standard AI-powered search across the web, returning titles, URLs, and relevance scores for matching pages.

### search_domain
Limits a general search query to only look within a specified website or domain name.

### search_keyword
Executes a basic, traditional keyword match search across the web's indexed content.

### search_neural
Runs an advanced semantic search ideal for complex concepts and research topics where keywords might fail.

### search_recent
Filters web searches to only return content that has been published or updated within the last few days.

### search_with_contents
Combines searching and extraction by returning both relevant links and their cleaned text content simultaneously.

## Prompt Examples

**Prompt:** 
```
Neural search for 'the latest breakthroughs in room-temperature superconductors'.
```

**Response:** 
```
I've performed a neural search for you. I found 10 high-quality links including recent pre-prints from arXiv, specialized science blogs, and official university press releases. Which source would you like me to extract the content from?
```

**Prompt:** 
```
Find 5 links similar to 'https://openai.com/blog/instruction-following'.
```

**Response:** 
```
Fetching similar content... I've identified 5 semantically related articles, including papers on RLHF from Anthropic, Google DeepMind's blog on fine-tuning, and technical breakdowns from HuggingFace. Shall I retrieve the metadata for these?
```

**Prompt:** 
```
Extract the cleaned text content from 'https://arxiv.org/abs/2312.00752'.
```

**Response:** 
```
Extraction complete! I've retrieved the cleaned text content for the arXiv paper (ID: 2312.00752). It contains the abstract, full body text, and author metadata. Would you like me to summarize the key findings for you?
```

## Capabilities

### Search by Conceptual Meaning
The MCP executes advanced semantic searches, understanding the intent of a query rather than matching isolated keywords.

### Find Related Web Pages
It locates web articles or pages that share deep conceptual similarity with a specific starting URL.

### Extract Clean Text Content
The MCP pulls clean, readable text and metadata from multiple URLs in a single request.

### Search Within Specific Domains
You can narrow the search scope to look only at defined websites or documentation sets.

### Identify Recent Topics
It performs searches specifically tuned for trending news and recently published content.

## Use Cases

### Assessing a Competitor's Strategy
A marketing manager wants to know what key publications are covering articles similar to theirs. They run `find_similar` against their own blog post URL, quickly identifying five other sources that hit the same semantic notes.

### Building a Technical Knowledge Base
An engineer needs to compile all internal documentation on 'Authentication Flow' from three different site sections. They use `search_domain` repeatedly across the company wiki, then pass all resulting URLs to `get_contents` for a single, clean text dump.

### Tracking Market Buzz
A financial analyst needs to know what breakthroughs happened this week. They use `search_recent` with 'quantum computing' and then pass the resulting links to `answer` to get a summarized overview of the current market conversation.

### Validating Research Claims
A student needs background material for a paper on 'pre-print physics'. They run `search_neural` to gather initial concepts, and then use `search_with_contents` on the top results to ensure they can pull accurate supporting text.

## Benefits

- Stop relying on simple keyword matching. Use `search_neural` to find articles that match the *intent* of your query, even if they use different terminology.
- When you need deep research, pair `find_similar` with `get_contents`. This lets you identify related sources and immediately extract their raw text for analysis.
- For documentation work, always start with `search_domain`. It scopes the search to a specific site, preventing irrelevant noise from pulling your agent off course.
- If timing matters, use `search_recent` instead of general search. This cuts out stale results and focuses only on current industry breakthroughs.
- The best approach is often using `search_with_contents`. It executes the web lookup and pulls the usable text in one step, saving multiple API calls.

## How It Works

The bottom line is you get structured web intelligence directly into your agent's workflow, eliminating manual copy-pasting of research findings.

1. Connect your AI client to this MCP using your Exa API key.
2. Instruct your agent to perform a search, specifying whether the query needs semantic context or if you are searching within a confined domain.
3. The MCP executes the search and returns structured data containing titles, URLs, relevance scores, and extracted content.

## Frequently Asked Questions

**How does Exa MCP handle conceptual searches? Use `search_neural`.**
`search_neural` powers advanced semantic search. It understands that 'big cats' and 'jaguars' mean the same thing, so it finds relevant articles even if they never use the exact keywords you provide.

**Can Exa MCP only pull text from one page?**
No. You can pass multiple URLs to `get_contents`, and the MCP will extract clean, readable body text and metadata for every single page ID in that batch request.

**Is there a way to limit my search results to one company's site?**
Yes. Use `search_domain` and provide the specific domain name. This locks your entire search effort down, so you only get results from that single source.

**What is the difference between `search` and `search_with_contents`?**
`search` returns links and scores for matching pages. `search_with_contents` does both: it gives you the relevant links *and* extracts a snippet of clean content from those results immediately.

**When I run a broad query using `search`, what kind of metadata does it return?**
The search results provide comprehensive data beyond just titles and URLs. You get relevance scores and specific resource IDs, which lets your agent instantly rank the quality of sources for you.

**Does my API key need to be refreshed every time I use `find_similar`?**
No, Vinkius handles credential security. Your keys pass through a zero-trust proxy and are never saved on disk. You connect your AI client once for access.

**If my workflow needs to run many times, is there a limit when using `search_keyword`?**
Vinkius manages underlying rate limits across all MCP calls. If you hit a cap, the agent receives an explicit error message, which allows your calling application to manage retries.

**Can I combine `find_similar` and `get_contents` in one automation?**
Yes, you can chain them. First, use `find_similar` to get a list of related URLs, and then feed those specific links into `get_contents` to extract the clean text bodies automatically.