ExaApi
Description: Tools that enable LLMs to interact directly with the Exa.ai Search API.
Author: Arcade
Auth: API Key
ExaApi is a Starter MCP Server: each tool mirrors one HTTP endpoint and offers LLMs a way to interact with the low-level API.
Differently from Optimized MCP Servers, Starter tools are heavily influenced by the original API design, which is not usually optimized for LLM usage. For this reason, we recommend thoroughly evaluating the tools with your Agents or chatbots before using it in production. Read more about Optimized vs Starter tools.
The ExaApi MCP Server offers a comprehensive suite of tools for conducting searches, managing websets, and handling research requests.
Available Tools
| Tool Name | Description |
|---|---|
| ExaApi.PerformExaSearch | Conduct a search using Exa and retrieve relevant results. |
| ExaApi.FindSimilarLinks | Find similar links to a given link. |
| ExaApi.GetContentDetails | Retrieve details about specific content. |
| ExaApi.GenerateAnswerSummary | Retrieve direct answers or detailed summaries with citations. |
| ExaApi.ListResearchRequests | Retrieve a paginated list of research requests. |
| ExaApi.CreateResearchRequest | Create a new research request. |
| ExaApi.GetResearchById | Retrieve research information using a specific ID. |
| ExaApi.CreateWebset | Create a new Webset with optional configurations. |
| ExaApi.ListWebsets | Retrieve a list of available websets. |
| ExaApi.GetWebsetDetails | Retrieve detailed information about a specific webset. |
| ExaApi.UpdateWebset | Update details of an existing webset. |
| ExaApi.DeleteWebset | Deletes a Webset and its associated items. |
| ExaApi.CancelWebsetOperations | Cancel all operations on a specified Webset. |
| ExaApi.PreviewSearchDecomposition | Preview and analyze search query decomposition. |
| ExaApi.GetWebsetItem | Retrieve a specific Webset Item by ID. |
| ExaApi.DeleteWebsetItem | Delete an item from a webset and cancel its enrichment process. |
| ExaApi.ListWebsetItems | Retrieve a list of items from a specific webset. |
| ExaApi.CreateWebsetEnrichment | Create an enrichment for a specified webset. |
| ExaApi.UpdateWebsetEnrichment | Update an enrichment configuration for a webset. |
| ExaApi.GetEnrichmentDetails | Retrieve detailed information about a specific enrichment. |
| ExaApi.DeleteEnrichment | Delete an enrichment and cancel running processes. |
| ExaApi.CancelEnrichmentProcess | Cancel a running enrichment process. |
| ExaApi.CreateWebhookForNotifications | Create webhooks to receive event notifications. |
| ExaApi.GetWebhooksList | Retrieve a paginated list of all webhooks in your account. |
| ExaApi.GetWebhookInfo | Retrieve details of a webhook using its ID. |
| ExaApi.UpdateWebhookSettings | Update a webhook's settings for events, URL, and metadata. |
| ExaApi.RemoveWebhook | Remove a webhook from your account. |
| ExaApi.ListWebhookAttempts | Retrieve and list all webhook attempt records. |
| ExaApi.ListSystemEvents | Retrieve a list of all system events. |
| ExaApi.GetEventById | Retrieve details of an event using its ID. |
| ExaApi.CreateWebsetSearch | Create a new search for a specified webset. |
| ExaApi.GetSearchById | Retrieve a search by its ID. |
| ExaApi.CancelRunningSearch | Cancels a currently running search operation. |
| ExaApi.CreateMonitorForWebsets | Create a scheduled monitor to update Websets with fresh data. |
| ExaApi.ListWebsiteMonitors | Fetch all monitors associated with a website. |
| ExaApi.GetSpecificMonitor | Retrieve details of a specific monitor using its ID. |
| ExaApi.UpdateMonitorConfiguration | Update the configuration of a monitor. |
| ExaApi.DeleteMonitor | Deletes a specified monitor using its ID. |
| ExaApi.ListMonitorRuns | Lists all runs for a given monitor. |
| ExaApi.GetSpecificMonitorRun | Retrieve details of a specific monitor run. |
| ExaApi.CreateDataImport | Initiates a new data import for uploading data into Websets. |
| ExaApi.ListImports | Retrieve all import entries for the Webset. |
| ExaApi.GetSpecificImport | Retrieve details of a specific import. |
| ExaApi.UpdateImportsConfiguration | Update an import configuration with new settings. |
| ExaApi.DeleteImport | Delete an import by its ID. |
If you need to perform an action that’s not listed here, you can get in touch with us to request a new tool, or create your own tools.
ExaApi.PerformExaSearch
Conduct a search using Exa and retrieve relevant results.
Parameters
- mode (
EnumToolMode, required) Operation mode: ‘get_request_schema’ returns the OpenAPI spec for the request body, ‘execute’ performs the actual operation - request_body (
string, optional) Stringified JSON representing the request body. Required when mode is ‘execute’, ignored when mode is ‘get_request_schema’
Secrets
This tool requires the following secrets: EXA_API_KEY (learn how to configure secrets)
ExaApi.FindSimilarLinks
Find similar links to a given link.
Parameters
- mode (
EnumToolMode, required) Operation mode: ‘get_request_schema’ returns the OpenAPI spec for the request body, ‘execute’ performs the actual operation - request_body (
string, optional) Stringified JSON representing the request body. Required when mode is ‘execute’, ignored when mode is ‘get_request_schema’
Secrets
This tool requires the following secrets: EXA_API_KEY (learn how to configure secrets)
ExaApi.GetContentDetails
Retrieve details about specific content.
Parameters
- mode (
EnumToolMode, required) Operation mode: ‘get_request_schema’ returns the OpenAPI spec for the request body, ‘execute’ performs the actual operation - request_body (
string, optional) Stringified JSON representing the request body. Required when mode is ‘execute’, ignored when mode is ‘get_request_schema’
Secrets
This tool requires the following secrets: EXA_API_KEY (learn how to configure secrets)
ExaApi.GenerateAnswerSummary
Retrieve direct answers or detailed summaries with citations.
Parameters
- search_query (
string, required) The question or query to be answered or summarized. - enable_streaming_response (
boolean, optional) Return the response as a server-sent events (SSE) stream if set to true. - include_full_text (
boolean, optional) If true, the response includes full text content in the search results.
Secrets
This tool requires the following secrets: EXA_API_KEY (learn how to configure secrets)
ExaApi.ListResearchRequests
Retrieve a paginated list of research requests.
Parameters
- pagination_cursor (
string, optional) A string representing the position in the paginated results to continue retrieving data from. - results_limit (
number, optional) Specifies the number of research requests to return in the response. Helps manage pagination effectively.
Secrets
This tool requires the following secrets: EXA_API_KEY (learn how to configure secrets)
ExaApi.CreateResearchRequest
Create a new research request.
Parameters
- research_request_details (
json, required) JSON object containing details of the research request including parameters and criteria.
Secrets
This tool requires the following secrets: EXA_API_KEY (learn how to configure secrets)
ExaApi.GetResearchById
Retrieve research information using a specific ID.
Parameters
- enable_streaming (
string, required) Set to ‘true’ to receive real-time streaming updates of the research information. - event_filter (
string, required) Specify the events to filter for in the research retrieval. Accepts a comma-separated list of event types. - research_id (
string, required) A string representing the unique identifier of the research to be retrieved.
Secrets
This tool requires the following secrets: EXA_API_KEY (learn how to configure secrets)
ExaApi.CreateWebset
Create a new Webset with optional configurations.
Parameters
- webset_configuration (
json, required) A JSON object detailing optional search, import, and enrichment configurations for the Webset. Include any necessary identifiers likeexternalId.
Secrets
This tool requires the following secrets: EXA_API_KEY (learn how to configure secrets)
ExaApi.ListWebsets
Retrieve a list of available websets.
Parameters
- pagination_cursor (
string, optional) A string used to paginate through the list of Websets. - websets_return_limit (
number, optional) Specify the maximum number of Websets to return in the response.
Secrets
This tool requires the following secrets: EXA_API_KEY (learn how to configure secrets)
ExaApi.GetWebsetDetails
Retrieve detailed information about a specific webset.
Parameters
- webset_identifier (
string, required) The unique identifier or external ID for the Webset to retrieve. - resources_to_expand (
array[string], optional) A list of resources to include in the response for additional details.
Secrets
This tool requires the following secrets: EXA_API_KEY (learn how to configure secrets)
ExaApi.UpdateWebset
Update details of an existing webset.
Parameters
- webset_details (
json, required) A JSON object containing the details to update for the webset. This includes any attributes that need to be changed. - webset_id (
string, required) The unique id or externalId of the Webset to be updated. Ensure it matches a valid Webset.
Secrets
This tool requires the following secrets: EXA_API_KEY (learn how to configure secrets)
ExaApi.DeleteWebset
Deletes a Webset and its associated items.
Parameters
- webset_identifier (
string, required) The unique identifier or external ID of the Webset to delete.
Secrets
This tool requires the following secrets: EXA_API_KEY (learn how to configure secrets)
ExaApi.CancelWebsetOperations
Cancel all operations on a specified Webset.
Parameters
- webset_identifier (
string, required) The ID or external ID of the Webset to cancel operations on.
Secrets
This tool requires the following secrets: EXA_API_KEY (learn how to configure secrets)
ExaApi.PreviewSearchDecomposition
Preview and analyze search query decomposition.
Parameters
- search_query_details (
json, required) A JSON object detailing the search query to preview. It includes elements like the search string and any additional parameters for analysis.
Secrets
This tool requires the following secrets: EXA_API_KEY (learn how to configure secrets)
ExaApi.GetWebsetItem
Retrieve a specific Webset Item by ID.
Parameters
- webset_identifier (
string, required) The ID or external ID of the Webset to identify the desired Webset from which the item is to be retrieved. - webset_item_id (
string, required) The unique identifier of the Webset item to retrieve.
Secrets
This tool requires the following secrets: EXA_API_KEY (learn how to configure secrets)
ExaApi.DeleteWebsetItem
Delete an item from a webset and cancel its enrichment process.
Parameters
- webset_identifier (
string, required) The ID or external ID of the Webset from which the item will be deleted. - webset_item_id (
string, required) The unique identifier of the item to be deleted from the webset.
Secrets
This tool requires the following secrets: EXA_API_KEY (learn how to configure secrets)
ExaApi.ListWebsetItems
Retrieve a list of items from a specific webset.
Parameters
- webset_identifier (
string, required) The ID or external ID of the Webset to retrieve items from. - pagination_cursor (
string, optional) A string used to paginate through the results. Pass this to retrieve the next set of items in the webset. - result_limit (
number, optional) Specify the number of results to return. This controls the size of the page in a paginated response. - source_id (
string, optional) The unique identifier for the source from which to retrieve items.
Secrets
This tool requires the following secrets: EXA_API_KEY (learn how to configure secrets)
ExaApi.CreateWebsetEnrichment
Create an enrichment for a specified webset.
Parameters
- enrichment_details (
json, required) A JSON object containing the details required to create the enrichment for the webset. - webset_identifier (
string, required) The ID or external ID of the webset to enrich.
Secrets
This tool requires the following secrets: EXA_API_KEY (learn how to configure secrets)
ExaApi.UpdateWebsetEnrichment
Update an enrichment configuration for a webset.
Parameters
- enrichment_configuration_details (
json, required) A JSON object containing the details of the enrichment configuration to update. - enrichment_configuration_id (
string, required) The unique identifier of the enrichment configuration to be updated. - webset_identifier (
string, required) The identifier of the webset to be updated. Provide the specific name or ID of the webset.
Secrets
This tool requires the following secrets: EXA_API_KEY (learn how to configure secrets)
ExaApi.GetEnrichmentDetails
Retrieve detailed information about a specific enrichment.
Parameters
- enrichment_id (
string, required) The unique identifier for the specific enrichment you want to retrieve within the webset. - webset_identifier (
string, required) The ID or external ID of the webset to retrieve enrichment details for.
Secrets
This tool requires the following secrets: EXA_API_KEY (learn how to configure secrets)
ExaApi.DeleteEnrichment
Delete an enrichment and cancel running processes.
Parameters
- enrichment_id (
string, required) The unique identifier of the enrichment to be deleted. - webset_id (
string, required) The ID or external ID of the Webset to identify which enrichment to delete.
Secrets
This tool requires the following secrets: EXA_API_KEY (learn how to configure secrets)
ExaApi.CancelEnrichmentProcess
Cancel a running enrichment process.
Parameters
- enrichment_id (
string, required) The unique identifier of the enrichment process to be canceled. - webset_id (
string, required) The ID or external ID of the Webset to identify which enrichment process to cancel.
Secrets
This tool requires the following secrets: EXA_API_KEY (learn how to configure secrets)
ExaApi.CreateWebhookForNotifications
Create webhooks to receive event notifications.
Parameters
- webhook_configuration (
json, required) A JSON object detailing the events to monitor and the destination URL for notifications.
Secrets
This tool requires the following secrets: EXA_API_KEY (learn how to configure secrets)
ExaApi.GetWebhooksList
Retrieve a paginated list of all webhooks in your account.
Parameters
- pagination_cursor (
string, optional) The cursor used to navigate through pages of results for webhooks. - results_per_page (
number, optional) The number of webhooks to return per page, up to a maximum of 200.
Secrets
This tool requires the following secrets: EXA_API_KEY (learn how to configure secrets)
ExaApi.GetWebhookInfo
Retrieve details of a webhook using its ID.
Parameters
- webhook_id (
string, required) The unique identifier for the webhook you want details about.
Secrets
This tool requires the following secrets: EXA_API_KEY (learn how to configure secrets)
ExaApi.UpdateWebhookSettings
Update a webhook’s settings for events, URL, and metadata.
Parameters
- webhook_id (
string, required) The unique identifier of the webhook to be updated. - webhook_update_request_body (
json, required) JSON object containing webhook updates, such as events list, new URL, and metadata.
Secrets
This tool requires the following secrets: EXA_API_KEY (learn how to configure secrets)
ExaApi.RemoveWebhook
Remove a webhook from your account.
Parameters
- webhook_id (
string, required) The unique identifier of the webhook to remove. This is necessary for specifying which webhook to delete.
Secrets
This tool requires the following secrets: EXA_API_KEY (learn how to configure secrets)
ExaApi.ListWebhookAttempts
Retrieve and list all webhook attempt records.
Parameters
- webhook_id (
string, required) The unique identifier for the webhook to retrieve attempt records for. - event_type_filter (
string, optional) Filter webhook attempts by specifying the type of event, such as ‘webset.created’ or ‘monitor.run.completed’. - filter_by_successful_attempts (
boolean, optional) Use ‘true’ to filter for successful webhook attempts and ‘false’ for unsuccessful ones. - pagination_cursor (
string, optional) A string used to paginate through the webhook attempt results. - results_limit (
number, optional) Specify the maximum number of webhook attempt records to return.
Secrets
This tool requires the following secrets: EXA_API_KEY (learn how to configure secrets)
ExaApi.ListSystemEvents
Retrieve a list of all system events.
Parameters
- created_after (
string, optional) Filter events created after or at this timestamp. Use a valid ISO 8601 datetime string in UTC. - event_types_filter (
array[string], optional) Filter events by specifying an array of event type names. - filter_created_before (
string, optional) Filter events created before or at this timestamp (inclusive). Provide a valid ISO 8601 datetime string in UTC. - pagination_cursor (
string, optional) Cursor for paginating through event results. Use it to navigate through pages of events. - results_limit (
number, optional) Specify the number of event results to return. This controls the size of the result set for a single request.
Secrets
This tool requires the following secrets: EXA_API_KEY (learn how to configure secrets)
ExaApi.GetEventById
Retrieve details of an event using its ID.
Parameters
- event_id (
string, required) The unique identifier of the event to retrieve details for.
Secrets
This tool requires the following secrets: EXA_API_KEY (learn how to configure secrets)
ExaApi.CreateWebsetSearch
Create a new search for a specified webset.
Parameters
- search_criteria (
json, required) JSON object representing new search criteria for the webset. This specifies the parameters or conditions for the new search. - webset_id (
string, required) The unique identifier for the Webset you want to create a search in.
Secrets
This tool requires the following secrets: EXA_API_KEY (learn how to configure secrets)
ExaApi.GetSearchById
Retrieve a search by its ID.
Parameters
- search_id (
string, required) The ID of the search to retrieve details for. - webset_id (
string, required) The ID of the Webset to retrieve the specific search.
Secrets
This tool requires the following secrets: EXA_API_KEY (learn how to configure secrets)
ExaApi.CancelRunningSearch
Cancels a currently running search operation.
Parameters
- search_id (
string, required) The ID of the search to cancel. Provide the unique string identifier for the targeted search operation. - webset_id (
string, required) The ID of the Webset where the search is executing. Use this to specify the Webset to be canceled.
Secrets
This tool requires the following secrets: EXA_API_KEY (learn how to configure secrets)
ExaApi.CreateMonitorForWebsets
Create a scheduled monitor to update Websets with fresh data.
Parameters
- monitor_configuration (
json, required) JSON object describing the configuration for the new monitor, including schedule, search and refresh operations.
Secrets
This tool requires the following secrets: EXA_API_KEY (learn how to configure secrets)
ExaApi.ListWebsiteMonitors
Fetch all monitors associated with a website.
Parameters
- pagination_cursor (
string, optional) The cursor for paginating through the monitor results. - results_limit (
number, optional) Specifies the maximum number of monitor results to return. Use for pagination. - webset_id (
string, optional) The unique identifier for the Webset to retrieve monitors for. This is required to specify which website’s monitors you want to list.
Secrets
This tool requires the following secrets: EXA_API_KEY (learn how to configure secrets)
ExaApi.GetSpecificMonitor
Retrieve details of a specific monitor using its ID.
Parameters
- monitor_id (
string, required) The unique identifier of the monitor to retrieve details for.
Secrets
This tool requires the following secrets: EXA_API_KEY (learn how to configure secrets)
ExaApi.UpdateMonitorConfiguration
Update the configuration of a monitor.
Parameters
- monitor_configuration_details (
json, required) A JSON object containing the new configuration settings for the monitor. - monitor_id (
string, required) The unique identifier for the monitor to update.
Secrets
This tool requires the following secrets: EXA_API_KEY (learn how to configure secrets)
ExaApi.DeleteMonitor
Deletes a specified monitor using its ID.
Parameters
- monitor_id (
string, required) The unique identifier for the monitor to be deleted.
Secrets
This tool requires the following secrets: EXA_API_KEY (learn how to configure secrets)
ExaApi.ListMonitorRuns
Lists all runs for a given monitor.
Parameters
- monitor_id (
string, required) The ID of the monitor to list all associated runs.
Secrets
This tool requires the following secrets: EXA_API_KEY (learn how to configure secrets)
ExaApi.GetSpecificMonitorRun
Retrieve details of a specific monitor run.
Parameters
- monitor_id (
string, required) The unique identifier of the monitor to retrieve the run for. - run_id (
string, required) The unique identifier of the specific run to retrieve details for.
Secrets
This tool requires the following secrets: EXA_API_KEY (learn how to configure secrets)
ExaApi.CreateDataImport
Initiates a new data import for uploading data into Websets.
Parameters
- data_import_details (
json, required) The JSON object containing data to import for Websets. This includes details for enrichment, search, or exclusion processes.
Secrets
This tool requires the following secrets: EXA_API_KEY (learn how to configure secrets)
ExaApi.ListImports
Retrieve all import entries for the Webset.
Parameters
- pagination_cursor (
string, optional) String used for paginating through results. Pass it to retrieve the next set of results. - results_limit (
number, optional) Specify the maximum number of import results to return.
Secrets
This tool requires the following secrets: EXA_API_KEY (learn how to configure secrets)
ExaApi.GetSpecificImport
Retrieve details of a specific import.
Parameters
- import_id (
string, required) The unique identifier for the specific import to retrieve details about.
Secrets
This tool requires the following secrets: EXA_API_KEY (learn how to configure secrets)
ExaApi.UpdateImportsConfiguration
Update an import configuration with new settings.
Parameters
- import_configuration_details (
json, required) JSON object containing the new settings for the import configuration. Include all necessary fields that need to be updated. - import_id (
string, required) The identifier for the import configuration to be updated.
Secrets
This tool requires the following secrets: EXA_API_KEY (learn how to configure secrets)
ExaApi.DeleteImport
Delete an import by its ID.
Parameters
- import_id (
string, required) The unique identifier of the import to be deleted.
Secrets
This tool requires the following secrets: EXA_API_KEY (learn how to configure secrets)
Reference
Below is a reference of enumerations used by some of the tools in the ExaApi MCP Server:
ToolMode
- GET_REQUEST_SCHEMA:
get_request_schema - EXECUTE:
execute