PluginBench
MCP Server
Active
MIT

io.github.tavily-ai/tavily-mcp MCP Server

io.github.tavily-ai/tavily-mcp

Real-time web search, extraction, mapping, and crawling powered by Tavily API

What is the io.github.tavily-ai/tavily-mcp MCP server?

The Tavily MCP server provides Claude and Cursor with advanced web search capabilities through the Tavily API. It exposes search, extract, map, and crawl tools for intelligent data retrieval and website exploration.

Access real-time web search, intelligent data extraction from web pages, structured website mapping, and systematic web crawling. Use it to research topics, gather current information, extract specific data from pages, understand website structure, and explore linked content—all integrated directly into your AI assistant.

How to install io.github.tavily-ai/tavily-mcp

Copy-paste configuration for popular MCP clients.

transport: stdio
Config generated by PluginBench — verify against the source before use.
Environment / auth
  • TAVILY_API_KEY
    required
    secret

    Your Tavily API key from tavily.com

  • DEFAULT_PARAMETERS

    JSON string with default search parameters (e.g., {"include_images": true, "max_results": 15})

~/Library/Application Support/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "tavily-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "tavily-mcp"
      ],
      "env": {
        "TAVILY_API_KEY": "<YOUR_TAVILY_API_KEY>",
        "DEFAULT_PARAMETERS": "<YOUR_DEFAULT_PARAMETERS>"
      }
    }
  }
}

Tools & capabilities

Tools this server exposes to the agent.

  • tavily-search — Real-time web search capability to find and retrieve current information from the web
  • tavily-extract — Intelligent data extraction tool that pulls structured information from web pages
  • tavily-map — Powerful web mapping tool that creates a structured map of website architecture and content
  • tavily-crawl — Web crawler that systematically explores websites and follows links

Use cases

  • Research current events, news, and real-time information for reports or analysis
  • Extract specific data or structured information from web pages automatically
  • Map and understand the structure and content organization of websites
  • Crawl and explore linked content across multiple pages of a website
  • Gather competitive intelligence or monitor web content for changes

io.github.tavily-ai/tavily-mcp MCP server FAQ

What is the Tavily MCP server?

It's an MCP server that integrates Tavily's web search and data extraction APIs into Claude and Cursor, providing search, extract, map, and crawl tools for accessing real-time web information.

Is Tavily free to use?

Tavily offers a free account tier. Sign up at tavily.com to get an API key and start using the service.

How do I install this in Cursor?

Click the 'Add to Cursor' button in the README, then edit your mcp.json to add your Tavily API key in the URL parameter: `?tavilyApiKey=<your-api-key>`. Alternatively, use OAuth authentication without embedding the key.

How do I install this in Claude?

Use the Claude Code CLI with `claude mcp add --transport http tavily https://mcp.tavily.com/mcp/?tavilyApiKey=<your-api-key>` or authenticate via OAuth by omitting the API key and completing the auth flow.

Do I need to run this locally?

No. You can use the remote MCP server at https://mcp.tavily.com/mcp/ directly, or run it locally with `npx -y tavily-mcp@latest` if you prefer.

What authentication methods are supported?

API key authentication (in URL or Authorization header) and OAuth authentication flow. OAuth is recommended for security; you can also set a default API key named 'mcp_auth_default' in your Tavily account.

README (reference)

Source of truth, from the repository.

Tavily MCP Server

GitHub Repo stars npm smithery badge

The Tavily MCP server provides:

  • search, extract, map, crawl tools
  • Real-time web search capabilities through the tavily-search tool
  • Intelligent data extraction from web pages via the tavily-extract tool
  • Powerful web mapping tool that creates a structured map of website
  • Web crawler that systematically explores websites

📚 Helpful Resources

  • Tutorial on combining Tavily MCP with Neo4j MCP server
  • Tutorial on integrating Tavily MCP with Cline in VS Code

Remote MCP Server

Connect directly to Tavily's remote MCP server instead of running it locally. This provides a seamless experience without requiring local installation or configuration.

Simply use the remote MCP server URL with your Tavily API key:

https://mcp.tavily.com/mcp/?tavilyApiKey=<your-api-key> 

Get your Tavily API key from tavily.com.

Alternatively, you can pass your API key through an Authorization header if the MCP client supports this:

Authorization: Bearer <your-api-key>

Note: When using the remote MCP, you can specify default parameters for all requests by including a DEFAULT_PARAMETERS header containing a JSON object with your desired defaults. Example:

{"include_images":true, "search_depth": "basic", "max_results": 10}

Connect to Claude Code

Claude Code is Anthropic's official CLI tool for Claude. You can add the Tavily MCP server using the claude mcp add command. There are two ways to authenticate:

Option 1: API Key in URL

Pass your API key directly in the URL. Replace <your-api-key> with your actual Tavily API key:

claude mcp add --transport http tavily https://mcp.tavily.com/mcp/?tavilyApiKey=<your-api-key>

Option 2: OAuth Authentication Flow

Add the server without an API key in the URL:

claude mcp add --transport http tavily https://mcp.tavily.com/mcp

After adding, you'll need to complete the authentication flow:

  1. Run claude to start Claude Code
  2. Type /mcp to open the MCP server management
  3. Select the Tavily server and complete the authentication process

Tip: Add --scope user to either command to make the Tavily MCP server available globally across all your projects:

claude mcp add --transport http --scope user tavily https://mcp.tavily.com/mcp/?tavilyApiKey=<your-api-key>

Once configured, you'll have access to the Tavily search, extract, map, and crawl tools.

Connect to Cursor

Install MCP Server

Click the ⬆️ Add to Cursor ⬆️ button, this will do most of the work for you but you will still need to edit the configuration to add your API-KEY. You can get a Tavily API key here.

once you click the button you should be redirect to Cursor ...

Step 1

Click the install button

cursor step1

Step 2

You should see the MCP is now installed, if the blue slide is not already turned on, manually turn it on. You also need to edit the configuration to include your own Tavily API key. cursor step2

Step 3

You will then be redirected to your mcp.json file where you have to add your-api-key.

{
  "mcpServers": {
    "tavily-remote-mcp": {
      "command": "npx -y mcp-remote https://mcp.tavily.com/mcp/?tavilyApiKey=<your-api-key>",
      "env": {}
    }
  }
}

Remote MCP Server OAuth Flow

The Tavily Remote MCP server supports secure OAuth authentication, allowing you to connect and authorize seamlessly with compatible clients.

How to Set Up OAuth Authentication

A. Using MCP Inspector:

  • Open the MCP Inspector and click "Open Auth Settings".
  • Select the OAuth flow and complete these steps:
    1. Metadata discovery
    2. Client registration
    3. Preparing authorization
    4. Request authorization and obtain the authorization code
    5. Token request
    6. Authentication complete

Once finished, you will receive an access token that lets you securely make authenticated requests to the Tavily Remote MCP server.

B. Using other MCP Clients (Example: Cursor):

You can configure your MCP client to use OAuth without including your Tavily API key in the URL. For example, in your mcp.json:

{
  "mcpServers": {
    "tavily-remote-mcp": {
      "command": "npx mcp-remote https://mcp.tavily.com/mcp",
      "env": {}
    }
  }
}

If you need to clear stored OAuth credentials and reauthenticate, run:

rm -rf ~/.mcp-auth

Note:

  • OAuth authentication is optional. You can still use API key authentication at any time by including your Tavily API key in the URL query parameter (?tavilyApiKey=...) or by setting it in the Authorization header, as described above.

Selecting Which API Key Is Used for OAuth

After successful OAuth authentication, you can control which API key is used by naming it mcp_auth_default:

  • If you set a key named mcp_auth_default in your personal account, that key will be used for the auth flow.
  • If you are part of a team that has a key named mcp_auth_default, that key will be used for the auth flow.
  • If you have both a personal key and a team key named mcp_auth_default, the personal key will be prioritized.
  • If no mcp_auth_default key is set, the default key in your personal account will be used. If no default key is set, the first available key will be used.

Local MCP

Prerequisites 🔧

Before you begin, ensure you have:

  • Tavily API key
    • If you don't have a Tavily API key, you can sign up for a free account here
  • Claude Desktop or Cursor
  • Node.js (v20 or higher)
    • You can verify your Node.js installation by running:
      • node --version
  • Git installed (only needed if using Git installation method)
    • On macOS: brew install git
    • On Linux:
      • Debian/Ubuntu: sudo apt install git
      • RedHat/CentOS: sudo yum install git
    • On Windows: Download Git for Windows

Running with NPX

npx -y tavily-mcp@latest 

Default Parameters Configuration ⚙️

You can set default parameter values for the tavily-search tool using the DEFAULT_PARAMETERS environment variable. This allows you to configure default search behavior without specifying these parameters in every request.

Example Configuration

export DEFAULT_PARAMETERS='{"include_images": true}'

Example usage from Client

{
  "mcpServers": {
    "tavily-mcp": {
      "command": "npx",
      "args": ["-y", "tavily-mcp@latest"],
      "env": {
        "TAVILY_API_KEY": "your-api-key-here",
        "DEFAULT_PARAMETERS": "{\"include_images\": true, \"max_results\": 15, \"search_depth\": \"advanced\"}"
      }
    }
  }
}

Identifying the End User (Optional)

You can optionally identify the end user on whose behalf requests are being made by setting the TAVILY_HUMAN_ID environment variable. When set, Tavily MCP forwards it as the X-Human-Id header on every API call, enabling per-user analytics.

This is entirely optional — leave it unset and behavior is unchanged.

{
  "mcpServers": {
    "tavily-mcp": {
      "command": "npx",
      "args": ["-y", "tavily-mcp@latest"],
      "env": {
        "TAVILY_API_KEY": "your-api-key-here",
        "TAVILY_HUMAN_ID": "your-user-id"
      }
    }
  }
}

Privacy note: Tavily hashes human_id server-side (SHA-256) before storage, so the raw value is never persisted. Even so, prefer opaque identifiers (e.g. an internal user ID) over raw PII like emails when possible.

Acknowledgments ✨

Related MCP servers

Run code in multiple programming languages inside a secure WebAssembly sandbox via MCP.

770
TypeScript
MIT
View repository →

Control the Unity Editor from MCP hosts through a local Rust server and C# Unity bridge.

1
C#
MIT
View repository →

Context management, todo persistence, and multi-AI perspectives for Claude Code

3
Python
MIT
View repository →
TATayPE MCP logo

TayPE MCP

Active

Control the TayPE desktop DAW locally via MCP.

2
HTML
View repository →
CRCrawl Census logo

Crawl Census

Maintained

Ask before you fetch: will this domain serve your crawler, refuse it, or charge it?

0
JavaScript
View repository →

Google Workspace MCP server for Gmail, Drive, Calendar, Docs, Sheets, Slides, Forms, Tasks, Chat.