---
title: "Tavily MCP Server: Search, Extract, Map and Crawl the Web"
url: "https://mcpshelf.co/servers/tavily"
description: "Tavily's official server gives an assistant web search, page extraction, site maps and crawling through the Tavily API. Hosted URL, npx setup and defaults."
updated: "2026-10-27"
site: "MCP Shelf"
---

# Tavily MCP

> Tavily's search, page extraction, site mapping and crawling for agents.

## At a glance

Tavily is a search API built for AI agents, and this is the company's own server. Its search tool returns cleaned-up results with optional images and answer text, the extract tool pulls the readable content out of given pages, map lists the pages on a site, crawl walks a site and returns what it finds, and research gathers several sources into one written answer.

You need a Tavily API key, which you can get by signing up for a free account. Tavily also hosts the server at mcp.tavily.com, which you can sign into with OAuth instead of pasting a key.

|  |  |
| --- | --- |
| Made by | Tavily |
| GitHub | https://github.com/tavily-ai/tavily-mcp |
| Licence | MIT |
| npm package | [tavily-mcp](https://www.npmjs.com/package/tavily-mcp) 0.2.22 (5 Aug 2026) |
| GitHub stars | 2.5K |
| Last commit | 22 Oct 2026 |
| Tools | 5 |
| Runs on | Your computer or hosted |
| Install check | Started in our test |
| Category | [Browser and web data](https://mcpshelf.co/categories/browser-and-web) |

**Our check:** We ran this exact config on 27 Oct 2026: it started and answered with 5 tools.

## Tools

We listed 5 tools on 27 Oct 2026. 0 only read; the rest can change things or run commands.

| Tool | Kind | What it is for |
| --- | --- | --- |
| `tavily_search` | changes | Searches the web and returns snippets and links, with options for depth, topic, dates and images. |
| `tavily_extract` | changes | Pulls the readable content out of one or more URLs as Markdown or text. |
| `tavily_crawl` | changes | Crawls a site from a URL and returns the content of the pages it reaches. |
| `tavily_map` | changes | Lists the pages on a site, starting from a URL. |
| `tavily_research` | changes | Researches a question across many sources and writes up the answer. |

### How clearly it describes its tools

5 of 5 tools have a description and 0 of 5 say whether they change things. The tool list takes at least ~400 tokens of context. No tool says whether it only reads or can change things, so your client treats them all alike: keep approvals on.

## Set it up

### Claude Desktop

Where: claude_desktop_config.json (Settings → Developer → Edit Config)

```json
{
  "mcpServers": {
    "tavily": {
      "command": "npx",
      "args": [
        "-y",
        "tavily-mcp@latest"
      ],
      "env": {
        "TAVILY_API_KEY": "YOUR_API_KEY"
      }
    }
  }
}
```

### Claude Code

Where: Your terminal, in the project folder

```bash
claude mcp add-json tavily '{"command":"npx","args":["-y","tavily-mcp@latest"],"env":{"TAVILY_API_KEY":"YOUR_API_KEY"}}'
```

### Cursor

Where: ~/.cursor/mcp.json, or .cursor/mcp.json in a project

```json
{
  "mcpServers": {
    "tavily": {
      "command": "npx",
      "args": [
        "-y",
        "tavily-mcp@latest"
      ],
      "env": {
        "TAVILY_API_KEY": "YOUR_API_KEY"
      }
    }
  }
}
```

### VS Code

Where: .vscode/mcp.json in your project

```json
{
  "servers": {
    "tavily": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "tavily-mcp@latest"
      ],
      "env": {
        "TAVILY_API_KEY": "YOUR_API_KEY"
      }
    }
  }
}
```

### Windsurf

Where: ~/.codeium/windsurf/mcp_config.json

```json
{
  "mcpServers": {
    "tavily": {
      "command": "npx",
      "args": [
        "-y",
        "tavily-mcp@latest"
      ],
      "env": {
        "TAVILY_API_KEY": "YOUR_API_KEY"
      }
    }
  }
}
```

### ChatGPT

Where: Not supported

ChatGPT only connects to remote servers by URL. This one runs on your computer, so use Claude, Cursor or VS Code.

Set DEFAULT_PARAMETERS in env to a JSON object, such as {"search_depth": "advanced", "max_results": 10}, to change what every search asks for.

### Remote option

Hosted by Tavily. Sign in with OAuth, or add ?tavilyApiKey= with your key to the address.

```
https://mcp.tavily.com/mcp/
```

## Settings

| Setting | Kind | Required | What it does |
| --- | --- | --- | --- |
| `TAVILY_API_KEY` | env | yes | Your key from app.tavily.com. Example: `tvly-...` |
| `DEFAULT_PARAMETERS` | env | no | A JSON object of defaults applied to every search. The hosted server takes the same as a header. Example: `{"search_depth": "advanced", "max_results": 10}` |
| `TAVILY_HUMAN_ID` | env | no | An ID for the person the requests are for, sent to Tavily for per-user analytics. Tavily hashes it before storing it. |
| `?tavilyApiKey=` | config | no | Your key as a query string on the hosted URL, for clients without OAuth or header support. Example: `https://mcp.tavily.com/mcp/?tavilyApiKey=tvly-...` |

## What it can touch

**It can read**

- The public web, through Tavily's search, extraction and crawling

**It can change**

- Your Tavily credit balance

**Safer setup:** It does not change anything outside your Tavily account. Keep crawl limits low, since large crawls use more credits.

## Before you start

- A Tavily API key
- Node.js 20 or newer, for the local version

## Good for

- Giving a chat or coding assistant up-to-date web search
- Reading the text of a list of pages without a browser
- Mapping or crawling a documentation site

## If it does not work

**Calls fail with an authentication error**
Check TAVILY_API_KEY in the env block, or the key in the hosted URL.

**The OAuth sign-in uses the wrong key**
Name the key you want mcp_auth_default in your Tavily account. A personal key with that name wins over a team key.

**OAuth gets stuck after a change**
Clear the stored tokens with rm -rf ~/.mcp-auth and sign in again.

## Similar servers

| Server | Tools | Runs on | Stars |
| --- | --- | --- | --- |
| [DuckDuckGo Search MCP](https://mcpshelf.co/servers/duckduckgo) | 3 | Your computer | 1.6K |
| [Brave Search MCP](https://mcpshelf.co/servers/brave-search) | 8 | Your computer | 1.5K |
| [Playwright MCP](https://mcpshelf.co/servers/playwright) | 25 | Your computer | 38.7K |
| [Firecrawl](https://mcpshelf.co/servers/firecrawl) | 28 | Your computer | 7.7K |

## Questions

### Is it free?

The server is MIT licensed. Tavily's API has a free tier, with paid plans for more use.

### Local or hosted?

The tools are the same. The hosted server at mcp.tavily.com needs no Node.js and supports OAuth sign-in.

### Tavily or Exa or Firecrawl?

All three search and read the web for agents. Tavily keeps it to five general tools; Firecrawl goes deeper on scraping and Exa on semantic search.

### Is this the official server?

Yes. Tavily publishes it in tavily-ai/tavily-mcp.

Full docs on GitHub: https://github.com/tavily-ai/tavily-mcp

---

From [MCP Shelf](https://mcpshelf.co/): A short shelf of MCP servers that are worth installing. Index for agents: https://mcpshelf.co/llms.txt

