Tavily Search MCP server

Integrates with Tavily search API to enable natural language web queries for retrieving up-to-date, contextual information from across the internet.
Back to servers
Setup instructions
Provider
Arben Ademi
Release date
Jan 08, 2025
Language
Python
Stats
1 star

This MCP server powered by the Tavily API enables high-quality information retrieval from business, news, finance, and politics through a robust interface. It delivers fast search responses with clean formatting, making it perfect for integration with Claude Desktop and other applications.

Quick Start

Installing via Smithery

To install Tavily Search for Claude Desktop automatically via Smithery:

npx -y @smithery/cli install mcp-tavily-search --client claude

Installing Manually

Get up and running in minutes:

# 1. Create environment
uv venv && .venv\Scripts\activate     # Windows
# OR
uv venv && source .venv/bin/activate  # Unix/MacOS

# 2. Install dependencies
uv pip install -e .

# 3. Set up configuration
echo TAVILY_API_KEY=your-key-here > .env

# 4. Start server
cd mcp_tavily_search && uv run server.py

Core Features

Performance & Reliability

  • Asynchronous request handling
  • Built-in error handling and automatic retries
  • Configurable request timeouts
  • Comprehensive logging system

Search Configuration

  • Configurable search depth (basic/advanced)
  • Adjustable result limits (1-20 results)
  • Clean markdown-formatted output
  • Snippet previews with source URLs
  • Optional image results
  • Specialized news search topic

Error Handling

  • API authentication validation
  • Rate limit detection
  • Network error recovery
  • Request timeout management

Integration Guide

Prerequisites

Claude Desktop Setup

Optimize your Claude Desktop experience with this configuration:

{
  "mcpServers": {
    "tavily-search": {
      "command": "uv",
      "args": [
        "--directory",
        "/path/to/mcp-tavily-search/mcp_tavily_search",
        "run",
        "server.py"
      ],
      "env": {
        "TAVILY_API_KEY": "YOUR-API-KEY"
      }
    }
  }
}

📁 Configuration paths:

  • Windows: %APPDATA%\Claude\claude_desktop_config.json
  • Unix/MacOS: ~/.config/Claude/claude_desktop_config.json

Usage Examples

Here are examples of how to use the search capabilities:

Basic Search

{
  "name": "search",
  "arguments": {
    "query": "Latest news on artificial intelligence"
  }
}

Advanced Search with Images

{
  "name": "search",
  "arguments": {
    "query": "Elon Musk SpaceX achievements",
    "search_depth": "advanced",
    "include_images": true,
    "max_results": 10
  }
}

News-Specific Search

{
  "name": "search",
  "arguments": {
    "query": "Climate change impact on agriculture",
    "topic": "news",
    "max_results": 5
  }
}

Search with Raw Content

{
  "name": "search",
  "arguments": {
    "query": "Python programming best practices",
    "include_raw_content": true,
    "max_results": 3
  }
}

Troubleshooting Guide

Connection Issues

If things don't work as expected, follow these steps:

  • Verify your configuration paths
  • Check the Claude Desktop logs:
# Windows
type %APPDATA%\Claude\logs\latest.log
# Unix/MacOS
cat ~/.config/Claude/logs/latest.log
  • Test the server manually using the quick start commands

API Troubleshooting

If you're experiencing API issues:

  • Validate your API key permissions
  • Check your network connection
  • Monitor the API response in the server logs

How to install this MCP server

For Claude Code

To add this MCP server to Claude Code, run this command in your terminal:

claude mcp add-json "tavily-search" '{"command":"uv","args":["--directory","/path/to/mcp-tavily-search/mcp_tavily_search","run","server.py"],"env":{"TAVILY_API_KEY":"YOUR-API-KEY"}}'

See the official Claude Code MCP documentation for more details.

For Cursor

There are two ways to add an MCP server to Cursor. The most common way is to add the server globally in the ~/.cursor/mcp.json file so that it is available in all of your projects.

If you only need the server in a single project, you can add it to the project instead by creating or adding it to the .cursor/mcp.json file.

Adding an MCP server to Cursor globally

To add a global MCP server go to Cursor Settings > Tools & Integrations and click "New MCP Server".

When you click that button the ~/.cursor/mcp.json file will be opened and you can add your server like this:

{
    "mcpServers": {
        "tavily-search": {
            "command": "uv",
            "args": [
                "--directory",
                "/path/to/mcp-tavily-search/mcp_tavily_search",
                "run",
                "server.py"
            ],
            "env": {
                "TAVILY_API_KEY": "YOUR-API-KEY"
            }
        }
    }
}

Adding an MCP server to a project

To add an MCP server to a project you can create a new .cursor/mcp.json file or add it to the existing one. This will look exactly the same as the global MCP server example above.

How to use the MCP server

Once the server is installed, you might need to head back to Settings > MCP and click the refresh button.

The Cursor agent will then be able to see the available tools the added MCP server has available and will call them when it needs to.

You can also explicitly ask the agent to use the tool by mentioning the tool name and describing what the function does.

For Claude Desktop

To add this MCP server to Claude Desktop:

1. Find your configuration file:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
  • Linux: ~/.config/Claude/claude_desktop_config.json

2. Add this to your configuration file:

{
    "mcpServers": {
        "tavily-search": {
            "command": "uv",
            "args": [
                "--directory",
                "/path/to/mcp-tavily-search/mcp_tavily_search",
                "run",
                "server.py"
            ],
            "env": {
                "TAVILY_API_KEY": "YOUR-API-KEY"
            }
        }
    }
}

3. Restart Claude Desktop for the changes to take effect

Want to 10x your AI skills?

Get a free account and learn to code + market your apps using AI (with or without vibes!).

Nah, maybe later