---
title: Exa
slug: /bundles-exa
---

import Icon from "@site/src/components/icon";
import { GraduatedBundleInstall } from '@site/docs/_partial-bundle-graduated-install.mdx';

<GraduatedBundleInstall packageName="exa" />

<Icon name="Blocks" aria-hidden="true" /> [**Bundles**](/components-bundle-components) contain custom components that support specific third-party integrations with Langflow.

This page describes the components that are available in the **Exa** bundle.

## Exa Search

This component provides an [Exa](https://exa.ai/) toolkit for search and content retrieval, for use by a Langflow [**Agent** component](/agents) or an [MCP client](/mcp-client).

It exposes two tools:

- `search` — search the web with Exa and return results, including highlights by default.
- `get_contents` — fetch highlights and/or full text for one or more result IDs returned by `search`.

Get an API key from the [Exa dashboard](https://dashboard.exa.ai/api-keys). For details on the underlying API and best practices, see the [Exa Search API guide](https://docs.exa.ai/reference/search-api-guide).

The output is exclusively [`Tools`](/data-types#tool).

### Exa Search parameters

| Name | Type | Description |
|------|------|-------------|
| Exa API Key (`exa_api_key`) | SecretString | Input parameter. Your Exa API key. |
| Search type (`search_type`) | Dropdown | Input parameter. One of `auto`, `fast`, `instant`, or `deep`. `auto` is the default and recommended for most use cases. |
| Number of results (`search_num_results`) | Integer | Input parameter. Maximum number of results to return for `search`. Default: `10`. |
| Include highlights (`include_highlights`) | Boolean | Input parameter. Return token-efficient highlights with each result. Default: `true`. |
| Highlights max characters (`highlights_max_characters`) | Integer | Input parameter. Optional cap on the length of each highlight, in characters. `0` leaves it at Exa's default. |
| Include full text (`include_text`) | Boolean | Input parameter. Return full page text. Default: `false`. Prefer highlights for token efficiency. |
| Category (`category`) | Dropdown | Input parameter. Optional. Restrict results to one of `company`, `people`, `research paper`, `news`, `personal site`, or `financial report`. |
| Max age (hours) (`max_age_hours`) | Integer | Input parameter. Optional. Max age of cached content (in hours) before refetching. `0` = always refetch. `-1` = never refetch (use cache only). |
| Include domains (`include_domains`) | String | Input parameter. Optional. Comma-separated allowlist of domains. |
| Exclude domains (`exclude_domains`) | String | Input parameter. Optional. Comma-separated denylist of domains. |
| Start published date (`start_published_date`) | String | Input parameter. Optional. ISO date (`YYYY-MM-DD`). Only return results published on or after this date. |
| End published date (`end_published_date`) | String | Input parameter. Optional. ISO date (`YYYY-MM-DD`). Only return results published on or before this date. |