
AI-generated answer with web citations. Supports exa and exa-pro models. Optional system prompt and structured output via output_schema (JSON Schema Draft 7).
Code-focused search across GitHub, docs, Stack Overflow. Returns code snippets and documentation relevant to the query. Max 100000 output tokens.
Extract text, highlights, and summaries from URLs. Supports livecrawl for fresh content. Returns per-URL status tracking for partial failures.
Start an async deep research job. Returns a researchid to poll with getresearch_status. Models: exa-research-fast (quick), exa-research (balanced), exa-research-pro (most capable).
Poll a research job for status and results. Status: pending, running, completed, failed, canceled. Output available when completed.
Semantic/keyword web search. Supports neural, fast, auto, deep, instant types. Filter by domain, date, text, category. Include text/highlights/summaries via contents.
Find pages similar to a URL. Same filters as search plus excludesourcedomain. Returns ranked results with optional content extraction.
Validate Exa API key by making a lightweight search call.
Create a persistent search collection with enrichments. Define a search query and enrichment configs to extract structured data from results.
List websets with cursor pagination. Use cursor from page_info for next page. Returns webset IDs, statuses, and search/enrichment configs.
Get webset details by ID including status, search configs, and enrichments. Use list_websets to find valid IDs.
Delete a webset permanently. This cannot be undone. Use list_websets to find valid IDs.
List items in a webset with cursor pagination. Returns items with URLs, titles, and enrichment results. Use get_webset to verify the webset exists.

In an mcp.json file, add the configuration below, and restart Cursor.
Learn more in the official documentation ↗
1{
2 "mcpServers": {
3 "agent-handler": {
4 "url": "https://ah-api-develop.merge.dev/api/v1/tool-packs/{TOOL_PACK_ID}/registered-users/{REGISTERED_USER_ID}/mcp",
5 "headers": {
6 "Authorization": "Bearer yMt*****"
7 }
8 }
9 }
10}
11Open your Claude Desktop configuration file and add the server configuration below. You'll also need to restart the application for the changes to take effect.
Make sure Claude is using the Node v20+.
Learn more in the official documentation ↗
1{
2 "mcpServers": {
3 "agent-handler": {
4 "command": "npx",
5 "args": [
6 "-y",
7 "mcp-remote@latest",
8 "https://ah-api-develop.merge.dev/api/v1/tool-packs/{TOOL_PACK_ID}/registered-users/{REGISTERED_USER_ID}/mcp",
9 "--header",
10 "Authorization: Bearer ${AUTH_TOKEN}"
11 ],
12 "env": {
13 "AUTH_TOKEN": "yMt*****"
14 }
15 }
16 }
17}Open your Windsurf MCP configuration file and add the server configuration below.
Click on the refresh button in the top right of the Manage MCP server page or in the top right of the chat box in the box icon.
Learn more in the official documentation ↗
1{
2 "mcpServers": {
3 "agent-handler": {
4 "command": "npx",
5 "args": [
6 "-y",
7 "mcp-remote@latest",
8 "https://ah-api.merge.dev/api/v1/tool-packs/<tool-pack-id>/registered-users/<registered-user-id>/mcp",
9 "--header",
10 "Authorization: Bearer ${AUTH_TOKEN}"
11 ],
12 "env": {
13 "AUTH_TOKEN": "<ah-production-access-key>"
14 }
15 }
16 }
17 }In Command Palette (Cmd+Shift+P on macOS, Ctrl+Shift+P on Windows), run "MCP: Open User Configuration".
You can then add the configuration below and press "start" right under servers. Enter the auth token when prompted.
Learn more in the official documentation ↗
1{
2 "inputs": [
3 {
4 "type": "promptString",
5 "id": "agent-handler-auth",
6 "description": "Agent Handler AUTH_TOKEN", // "yMt*****" when prompt
7 "password": true
8 }
9 ],
10 "servers": {
11 "agent-handler": {
12 "type": "stdio",
13 "command": "npx",
14 "args": [
15 "-y",
16 "mcp-remote@latest",
17 "https://ah-api-develop.merge.dev/api/v1/tool-packs/{TOOL_PACK_ID}/registered-users/{REGISTERED_USER_ID}/mcp",
18 "--header",
19 "Authorization: Bearer ${input:agent-handler-auth}"
20 ]
21 }
22 }
23}It’s an MCP server that lets your agents access data and functionality from Exa via tools. Your agents can use these tools to answer questions and provide web citations, perform semantic web searches, run deep research jobs, and more.
Exa offers its own “official” MCP server. You can also use 3rd-party MCP servers from a variety of platforms, including Merge Agent Handler.
Here are a few ways you can use the server:
Merge Agent Handler provides additional infrastructure around MCP connectors that improves reliability, security, and observability.
Yes, Merge Agent Handler includes a security gateway with data loss protection (DLP) that evaluates tool inputs and outputs before they are sent to third-party systems.
Here are some examples:
You can take the following steps:
1. Decide the Exa use case you are enabling (e.g., semantic web search, deep research jobs, or generating answers with web citations).
2. Create an Agent Handler account or sign in.
3. Add the Exa MCP connector in Merge Agent Handler.
4. Set up authentication / credentials for Exa inside Agent Handler so your agent can call Exa without you building a separate credential layer.
5. Put the Exa tools into a Tool Pack so you can expose Exa only to the agents and environments that should have it.
6. Configure Security Gateway (DLP) rules for Exa tool calls, if needed (block, redact, or mask sensitive data in tool inputs and outputs).
7. Test the connector end-to-end by running realistic prompts and verifying both the tool outputs and the enforcement of your security rules.
8. Monitor tool calls in logs once you roll it out, using Agent Handler’s audit logging / observability to debug and review Exa usage over time.
Whether you're an engineer experimenting with agents or a product manager looking to add tools, you can get started for free now