api.md•5.41 kB
# Exa MCP Server API Documentation
## Overview
The Exa MCP Server provides powerful search and research capabilities through the Model Context Protocol. It integrates with Exa AI's neural search API to enable real-time web searching, company research, content extraction, and more.
## Available Tools
### 1. web_search_exa
Perform advanced web searches using Exa AI's neural search capabilities.
**Parameters:**
- `query` (string, required): Search query for finding information on the web
- `num_results` (number, optional): Number of results to return (default: 10, max: 100)
- `include_domains` (array, optional): Only include results from these domains
- `exclude_domains` (array, optional): Exclude results from these domains
- `start_crawl_date` (string, optional): Start date for crawled content (YYYY-MM-DD)
- `end_crawl_date` (string, optional): End date for crawled content (YYYY-MM-DD)
- `start_published_date` (string, optional): Start date for published content (YYYY-MM-DD)
- `end_published_date` (string, optional): End date for published content (YYYY-MM-DD)
- `use_autoprompt` (boolean, optional): Let Exa AI optimize the search query (default: true)
- `type` (string, optional): Search type - 'keyword', 'neural', or 'magic' (default: 'neural')
- `category` (string, optional): Filter by content category (news, blog, research, etc.)
- `include_text` (boolean, optional): Include extracted text content from pages
- `include_highlights` (boolean, optional): Include highlighted snippets from pages
- `include_summary` (boolean, optional): Include AI-generated summaries of pages
### 2. company_research_exa
Research companies and organizations comprehensively.
**Parameters:**
- `company_name` (string, required): Name of the company to research
- `include_news` (boolean, optional): Include recent news and announcements (default: true)
- `include_overview` (boolean, optional): Include company overview and description (default: true)
- `include_competitors` (boolean, optional): Include information about competitors (default: false)
- `include_reviews` (boolean, optional): Include customer reviews and feedback (default: false)
- `max_results_per_category` (number, optional): Maximum results per category (default: 5)
### 3. crawling_exa
Extract and analyze content from specific URLs.
**Parameters:**
- `urls` (array, required): List of URLs to crawl and extract content from
- `include_text` (boolean, optional): Include extracted text content (default: true)
- `include_highlights` (boolean, optional): Include key highlights from the content
- `include_summary` (boolean, optional): Include AI-generated summary
- `summary_query` (string, optional): Custom query for generating summaries
### 4. linkedin_search_exa
Search LinkedIn profiles and company pages.
**Parameters:**
- `query` (string, required): Search query for LinkedIn profiles or companies
- `search_type` (string, optional): Type of LinkedIn search - 'people', 'companies', or 'both' (default: 'both')
- `num_results` (number, optional): Number of results to return (default: 10)
- `include_bios` (boolean, optional): Include bio/description text (default: true)
- `include_summaries` (boolean, optional): Include AI-generated summaries
### 5. deep_researcher_start
Start a comprehensive AI-powered research task on any topic.
**Parameters:**
- `topic` (string, required): Research topic or question
- `research_type` (string, optional): Type of research - 'comprehensive', 'news', 'academic', or 'market' (default: 'comprehensive')
- `max_results` (number, optional): Maximum total results to collect (default: 50)
- `time_range` (string, optional): Time range for research - 'week', 'month', 'quarter', 'year', or 'all'
### 6. deep_researcher_check
Check the status and retrieve results of a deep research task.
**Parameters:**
- `task_id` (string, required): Task ID returned from deep_researcher_start
## Transport Modes
The server supports two transport modes:
### STDIO Transport (Default)
Used for local development and direct MCP client connections.
```bash
node dist/index.js
```
### HTTP Transport
Used for cloud deployment and remote connections.
```bash
node dist/index.js --port 3000
```
## Configuration
Set the following environment variables in your `.env` file:
- `EXA_API_KEY`: Your Exa AI API key (required)
- `PORT`: Port for HTTP server (optional, default: 3000)
- `DEBUG`: Enable debug logging (optional, default: false)
- `ENABLED_TOOLS`: Comma-separated list of tools to enable (optional, all enabled by default)
## Example Usage
### Web Search
```json
{
"tool": "web_search_exa",
"arguments": {
"query": "latest AI breakthroughs 2024",
"num_results": 5,
"type": "neural",
"include_summary": true
}
}
```
### Company Research
```json
{
"tool": "company_research_exa",
"arguments": {
"company_name": "OpenAI",
"include_news": true,
"include_competitors": true
}
}
```
### LinkedIn Search
```json
{
"tool": "linkedin_search_exa",
"arguments": {
"query": "machine learning engineer San Francisco",
"search_type": "people",
"num_results": 10
}
}
```
## Response Format
All tools return structured responses with relevant information extracted and formatted for easy consumption. Responses include titles, URLs, summaries, highlights, and other relevant metadata based on the tool and parameters used.