> ## Documentation Index
> Fetch the complete documentation index at: https://docs.langchain.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Tavily integrations

> Integrate with Tavily using LangChain JavaScript.

[Tavily](https://tavily.com/) is a search engine specifically designed for AI agents, providing search, extract, crawl, and map APIs so developers can connect their applications to real-time online information. Tavily's primary mission is to deliver factual and reliable information from trusted sources, enhancing the accuracy and reliability of AI-generated content and reasoning.

The `@langchain/tavily` package exposes Tavily Search, Extract, Crawl, Map, and Research endpoints as LangChain tools.

## Installation and setup

Install the Tavily integration package for LangChain JavaScript:

<CodeGroup>
  ```bash npm theme={"theme":{"light":"catppuccin-latte","dark":"catppuccin-mocha"}}
  npm install @langchain/tavily @langchain/core
  ```

  ```bash yarn theme={"theme":{"light":"catppuccin-latte","dark":"catppuccin-mocha"}}
  yarn add @langchain/tavily @langchain/core
  ```

  ```bash pnpm theme={"theme":{"light":"catppuccin-latte","dark":"catppuccin-mocha"}}
  pnpm add @langchain/tavily @langchain/core
  ```
</CodeGroup>

[Set up a Tavily API key](https://app.tavily.com) and set it as an environment variable named `TAVILY_API_KEY`:

```bash theme={"theme":{"light":"catppuccin-latte","dark":"catppuccin-mocha"}}
export TAVILY_API_KEY="your-api-key"
```

## Tools

### TavilySearch

A search tool that returns real-time, LLM-ready results from Tavily's Search API.

See a [usage example](/oss/javascript/integrations/tools/tavily_search).

```typescript theme={"theme":{"light":"catppuccin-latte","dark":"catppuccin-mocha"}}
import { TavilySearch } from "@langchain/tavily";
```

### TavilyExtract

A tool that returns the cleaned, parsed content of one or more URLs.

See a [usage example](/oss/javascript/integrations/tools/tavily_extract).

```typescript theme={"theme":{"light":"catppuccin-latte","dark":"catppuccin-mocha"}}
import { TavilyExtract } from "@langchain/tavily";
```

### TavilyCrawl

A tool that performs a structured web traversal from a base URL, with optional natural-language instructions and path/domain filters.

See a [usage example](/oss/javascript/integrations/tools/tavily_crawl).

```typescript theme={"theme":{"light":"catppuccin-latte","dark":"catppuccin-mocha"}}
import { TavilyCrawl } from "@langchain/tavily";
```

### TavilyMap

A tool that discovers the URL structure of a site without extracting page content.

See a [usage example](/oss/javascript/integrations/tools/tavily_map).

```typescript theme={"theme":{"light":"catppuccin-latte","dark":"catppuccin-mocha"}}
import { TavilyMap } from "@langchain/tavily";
```

### TavilyResearch

A tool that runs structured research tasks and returns synthesized results (optionally streamed).

```typescript theme={"theme":{"light":"catppuccin-latte","dark":"catppuccin-mocha"}}
import { TavilyResearch } from "@langchain/tavily";
```

### TavilyGetResearch

A tool that retrieves research output by `request_id` from a prior `TavilyResearch` invocation.

```typescript theme={"theme":{"light":"catppuccin-latte","dark":"catppuccin-mocha"}}
import { TavilyGetResearch } from "@langchain/tavily";
```

## Components reference

| Class               | Abstraction | Import path                                             | Description                                                             |
| ------------------- | ----------- | ------------------------------------------------------- | ----------------------------------------------------------------------- |
| `TavilySearch`      | Tool        | `import { TavilySearch } from "@langchain/tavily"`      | Returns search results from the Tavily Search API.                      |
| `TavilyExtract`     | Tool        | `import { TavilyExtract } from "@langchain/tavily"`     | Extracts cleaned content from one or more URLs.                         |
| `TavilyCrawl`       | Tool        | `import { TavilyCrawl } from "@langchain/tavily"`       | Crawls a site starting from a base URL with depth and breadth controls. |
| `TavilyMap`         | Tool        | `import { TavilyMap } from "@langchain/tavily"`         | Discovers the URL structure of a site without extracting page content.  |
| `TavilyResearch`    | Tool        | `import { TavilyResearch } from "@langchain/tavily"`    | Runs structured research tasks against the Tavily Research API.         |
| `TavilyGetResearch` | Tool        | `import { TavilyGetResearch } from "@langchain/tavily"` | Fetches research results by `request_id`.                               |

***

<div className="source-links">
  <Callout icon="terminal-2">
    [Connect these docs](/use-these-docs) to Claude, VSCode, and more via MCP for real-time answers.
  </Callout>

  <Callout icon="edit">
    [Edit this page on GitHub](https://github.com/langchain-ai/docs/edit/main/src/oss/javascript/integrations/providers/tavily.mdx) or [file an issue](https://github.com/langchain-ai/docs/issues/new/choose).
  </Callout>
</div>
