Skip to main content
Glama
Tavily Web Search MCP Server

Tavily Web Search MCP Server

by bakshidwarak

AI Makerspace: MCP Session Repo for Session 13

This project is a demonstration of the MCP (Model Context Protocol) server, which utilizes the Tavily API for web search capabilities. The server is designed to run in a standard input/output (stdio) transport mode.

Related MCP server: Tavily Web Search MCP Server

Project Overview

The MCP server is set up to handle web search queries using the Tavily API. It is built with the following key components:

  • TavilyClient: A client for interacting with the Tavily API to perform web searches.

Prerequisites

  • Python 3.13 or higher

  • A valid Tavily API key

⚠️NOTE FOR WINDOWS:⚠️

You'll need to install this on the Windows side of your OS.

This will require getting two CLI tool for Powershell, which you can do as follows:

  • winget install astral-sh.uv

  • winget install --id Git.Git -e --source winget

After you have those CLI tools, please open Cursor into Windows.

Then, you can clone the repository using the following command in your Cursor terminal:

git clone https://AI-Maker-Space/AIE8-MCP-Session.git

After that, you can follow from Step 2. below!

Installation

  1. Clone the repository:

    git clone <repository-url>
    cd <repository-directory>
  2. Configure environment variables: Copy the .env.sample to .env and add your Tavily API key:

    TAVILY_API_KEY=your_api_key_here
  3. 🏗️ Add a new tool to your MCP Server 🏗️

Create a new tool in the server.py file, that's it!

Running the MCP Server

To start the MCP server, you will need to add the following to your MCP Profile in Cursor:

NOTE: To get to your MCP config. you can use the Command Pallete (CMD/CTRL+SHIFT+P) and select "View: Open MCP Settings" and replace the contents with the JSON blob below.

{
    "mcpServers":  {
        "mcp-server": {
            "command" : "uv",
            "args" : ["--directory", "/PATH/TO/REPOSITORY", "run", "server.py"]
        }
    }
}

The server will start and listen for commands via standard input/output.

Usage

The server provides a web_search tool that can be used to search the web for information about a given query. This is achieved by calling the web_search function with the desired query string.

Activities:

There are a few activities for this assignment!

🏗️ Activity #1:

Choose an API that you enjoy using - and build an MCP server for it!

🏗️ Activity #2:

Build a simple LangGraph application that interacts with your MCP Server.

You can find details here!

Available Tools

3 tools
roll_diceC

Roll the dice with the given notation

Inputs: notation (required), num_rolls.

YOUR_TOOL_NAMED

YOUR_TOOL_DESCRIPTION

Inputs: query (required).

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    C2/5.0

    Scored across 3 tools

    Disambiguation5/5

    The three tools have completely distinct purposes: rolling dice, searching the web, and a placeholder tool. There is no overlap in functionality, and each tool's purpose is clearly differentiated from the others.

    Naming Consistency2/5

    The naming is inconsistent: 'roll_dice' uses snake_case with a verb-noun pattern, 'web_search' uses snake_case with a noun-verb pattern, and 'YOUR_TOOL_NAME' is a placeholder with a different style. There is no predictable convention across the set.

    Tool Count2/5

    With only 3 tools, including a placeholder ('YOUR_TOOL_NAME'), the set feels incomplete for a web search server. The scope is unclear, and the tools do not adequately cover typical web search operations beyond a basic search function.

    Completeness1/5

    The tool surface is severely incomplete for a web search server. There is only one functional tool ('web_search'), with a dice-rolling tool and a placeholder that do not contribute to the domain. Missing are tools for advanced search, result filtering, or other related operations.

    Maintenance

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • F
      license
      C
      quality
      D
      maintenance
      Enables web search capabilities through the Tavily API, allowing users to search the internet for information using natural language queries. Demonstrates MCP server implementation with external API integration.
      3
      -
    • F
      license
      Not graded
      quality
      D
      maintenance
      Enables web search capabilities through the Tavily API, allowing users to search the web for information using natural language queries. Demonstrates MCP server implementation with stdio transport mode for integration with LLM applications.
      -
    • F
      license
      B
      quality
      D
      maintenance
      Enables web search capabilities through the Tavily API, allowing users to search the internet for information using natural language queries. Serves as a demonstration and educational project for building MCP servers with external API integrations.
      3
      -
    • F
      license
      C
      quality
      D
      maintenance
      Enables web search capabilities through the Tavily API, allowing users to search the web for information using natural language queries. Demonstrates MCP (Model Context Protocol) server implementation with stdio transport mode.
      4
      -