diff --git a/app/en/mcp-servers/search/exa-api/page.mdx b/app/en/mcp-servers/search/exa_api/exa-api/page.mdx similarity index 100% rename from app/en/mcp-servers/search/exa-api/page.mdx rename to app/en/mcp-servers/search/exa_api/exa-api/page.mdx diff --git a/app/en/mcp-servers/search/exa_api/page.mdx b/app/en/mcp-servers/search/exa_api/page.mdx new file mode 100644 index 000000000..27e5b89e5 --- /dev/null +++ b/app/en/mcp-servers/search/exa_api/page.mdx @@ -0,0 +1,1519 @@ +# ExaApi + +import StarterToolInfo from "@/app/_components/starter-tool-info"; +import ToolInfo from "@/app/_components/tool-info"; +import Badges from "@/app/_components/badges"; +import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; +import TableOfContents from "@/app/_components/table-of-contents"; +import ToolFooter from "@/app/_components/tool-footer"; +import { Callout } from "nextra/components"; + + + + + + + +The ExaApi MCP Server offers a comprehensive suite of tools for conducting searches, managing websets, and handling research requests. + +## Available Tools + + + + + If you need to perform an action that's not listed here, you can [get in touch + with us](mailto:contact@arcade.dev) to request a new tool, or [create your own + tools](/home/build-tools/create-a-mcp-server). + + +## ExaApi.PerformExaSearch + +
+ + +Conduct a search using Exa and retrieve relevant results. + +**Parameters** + +- **mode** (`Enum` [ToolMode](#toolmode), 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](/home/build-tools/create-a-tool-with-secrets)) + +## ExaApi.FindSimilarLinks + +
+ + +Find similar links to a given link. + +**Parameters** + +- **mode** (`Enum` [ToolMode](#toolmode), 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](/home/build-tools/create-a-tool-with-secrets)) + +## ExaApi.GetContentDetails + +
+ + +Retrieve details about specific content. + +**Parameters** + +- **mode** (`Enum` [ToolMode](#toolmode), 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](/home/build-tools/create-a-tool-with-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](/home/build-tools/create-a-tool-with-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](/home/build-tools/create-a-tool-with-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](/home/build-tools/create-a-tool-with-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](/home/build-tools/create-a-tool-with-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 like `externalId`. + +**Secrets** + +This tool requires the following secrets: `EXA_API_KEY` (learn how to [configure secrets](/home/build-tools/create-a-tool-with-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](/home/build-tools/create-a-tool-with-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](/home/build-tools/create-a-tool-with-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](/home/build-tools/create-a-tool-with-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](/home/build-tools/create-a-tool-with-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](/home/build-tools/create-a-tool-with-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](/home/build-tools/create-a-tool-with-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](/home/build-tools/create-a-tool-with-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](/home/build-tools/create-a-tool-with-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](/home/build-tools/create-a-tool-with-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](/home/build-tools/create-a-tool-with-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](/home/build-tools/create-a-tool-with-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](/home/build-tools/create-a-tool-with-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](/home/build-tools/create-a-tool-with-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](/home/build-tools/create-a-tool-with-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](/home/build-tools/create-a-tool-with-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](/home/build-tools/create-a-tool-with-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](/home/build-tools/create-a-tool-with-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](/home/build-tools/create-a-tool-with-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](/home/build-tools/create-a-tool-with-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](/home/build-tools/create-a-tool-with-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](/home/build-tools/create-a-tool-with-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](/home/build-tools/create-a-tool-with-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](/home/build-tools/create-a-tool-with-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](/home/build-tools/create-a-tool-with-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](/home/build-tools/create-a-tool-with-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](/home/build-tools/create-a-tool-with-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](/home/build-tools/create-a-tool-with-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](/home/build-tools/create-a-tool-with-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](/home/build-tools/create-a-tool-with-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](/home/build-tools/create-a-tool-with-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](/home/build-tools/create-a-tool-with-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](/home/build-tools/create-a-tool-with-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](/home/build-tools/create-a-tool-with-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](/home/build-tools/create-a-tool-with-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](/home/build-tools/create-a-tool-with-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](/home/build-tools/create-a-tool-with-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](/home/build-tools/create-a-tool-with-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` + + diff --git a/make_toolkit_docs/docs_builder.py b/make_toolkit_docs/docs_builder.py index 18fb1aadc..a03014c7d 100644 --- a/make_toolkit_docs/docs_builder.py +++ b/make_toolkit_docs/docs_builder.py @@ -63,7 +63,7 @@ def build_toolkit_mdx_dir_path( "en", "mcp-servers", docs_section, - f"{toolkit_name.lower().replace('_', '-')}", + f"{toolkit_name.lower().replace('-', '_')}", ) if ensure_exists: