tavily-search-mcp-server

hybrid server

The server is able to function both locally and remotely, depending on the configuration or use case.

Tavily Search MCP サーバー

Tavily Search API を統合し、LLM に最適化された検索機能を提供する MCP サーバー実装。

特徴

  • **Web 検索:**検索の深さ、トピック、時間範囲を制御しながら、LLM 向けに最適化された Web 検索を実行します。
  • **コンテンツ抽出:**検索結果から最も関連性の高いコンテンツを抽出し、品質とサイズを最適化します。
  • **オプション機能:**画像、画像の説明、LLM によって生成された短い回答、生の HTML コンテンツを含めます。
  • **ドメイン フィルタリング:**検索結果に特定のドメインを含めるか除外します。

ツール

  • タビリー検索
    • Tavily Search API を使用して Web 検索を実行します。
    • 入力:
      • query (文字列、必須): 検索クエリ。
      • search_depth (文字列、オプション): "basic" または "advanced" (デフォルト: "basic")。
      • topic (文字列、オプション): "general" または "news" (デフォルト: "general")。
      • days (数値、オプション): ニュース検索を遡る日数 (デフォルト: 3)。
      • time_range (文字列、オプション): 時間範囲フィルター (「day」、「week」、「month」、「year」または「d」、「w」、「m」、「y」)。
      • max_results (数値、オプション): 結果の最大数 (デフォルト: 5)。
      • include_images (ブール値、オプション): 関連画像を含めます (デフォルト: false)。
      • include_image_descriptions (ブール値、オプション): 画像の説明を含めます (デフォルト: false)。
      • include_answer (ブール値、オプション): LLM によって生成された短い回答を含めます (デフォルト: false)。
      • include_raw_content (ブール値、オプション): 生の HTML コンテンツを含めます (デフォルト: false)。
      • include_domains (文字列[], オプション): 含めるドメイン。
      • exclude_domains (文字列[], オプション): 除外するドメイン。

セットアップガイド🚀

1. 前提条件

  • Claude Desktop がコンピュータにインストールされました。
  • Tavily API キー: a. Tavily API アカウントにサインアップします。b. プランを選択します (無料利用枠あり)。c. Tavily ダッシュボードから API キーを生成します。

2. インストール

  1. このリポジトリをコンピューターのどこかにクローンします:
    git clone https://github.com/apappascs/tavily-search-mcp-server.git
  2. 依存関係をインストールしてプロジェクトをビルドします。
    cd tavily-search-mcp-server
    npm install
    npm run build

3. Claude Desktopとの統合

  1. Claude Desktop 構成ファイルを開きます。
    # On Mac: ~/Library/Application\ Support/Claude/claude_desktop_config.json # On Windows: %APPDATA%\Claude\claude_desktop_config.json
  2. npmまたはdockerのどちらを使用してサーバーを実行するかに応じて、構成内のmcpServersオブジェクトに次のいずれかを追加します。オプション A: NPM (stdio トランスポート) を使用する
    { "mcpServers": { "tavily-search-server": { "command": "node", "args": [ "/Users/<username>/<FULL_PATH...>/tavily-search-mcp-server/dist/index.js" ], "env": { "TAVILY_API_KEY": "your_api_key_here" } } } }
    オプション B: NPM (SSE トランスポート) の使用
    { "mcpServers": { "tavily-search-server": { "command": "node", "args": [ "/Users/<username>/<FULL_PATH...>/tavily-search-mcp-server/dist/sse.js" ], "env": { "TAVILY_API_KEY": "your_api_key_here" }, "port": 3001 } } }
    オプションC: Dockerを使用する
    { "mcpServers": { "tavily-search-server": { "command": "docker", "args": [ "run", "-i", "--rm", "-e", "TAVILY_API_KEY", "-v", "/Users/<username>/<FULL_PATH...>/tavily-search-mcp-server:/app", "tavily-search-mcp-server" ], "env": { "TAVILY_API_KEY": "your_api_key_here" } } } }
  3. 重要な手順:
    • /Users/<username>/<FULL_PATH...>/tavily-search-mcp-serverを、リポジトリのクローンを作成した実際のフルパスに置き換えます。
    • envセクションに Tavily API キーを追加します。APIキーなどの秘密情報は環境変数として保存しておくことをお勧めします。
    • Windows の場合でも、パスには必ずスラッシュ ( / ) を使用してください。
    • docker を使用している場合は、まずdocker build -t tavily-search-mcp-server:latest .
  4. 変更を有効にするには、Claude Desktop を再起動してください。

Smithery経由でインストール

Smithery経由で Claude Desktop の Tavily Search を自動的にインストールするには:

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

環境設定(npm用)

  1. .env.example.envにコピーします。
    cp .env.example .env
  2. 実際の Tavily API キーを使用して.envファイルを更新します。
    TAVILY_API_KEY=your_api_key_here
    注意:実際のAPIキーをバージョン管理にコミットしないでください。.envファイル.envセキュリティ上の理由からGitによって無視されます。

NPMで実行する

Node.js を使用してサーバーを起動します。

node dist/index.js

SSE輸送の場合:

node dist/sse.js

Dockerで実行する

  1. Docker イメージをビルドします (まだビルドしていない場合)。
    docker build -t tavily-search-mcp-server:latest .
  2. 次のコマンドで Docker コンテナを実行します。stdio トランスポートの場合:
    docker run -it --rm -e TAVILY_API_KEY="your_api_key_here" tavily-search-mcp-server:latest
    SSE輸送の場合:
    docker run -it --rm -p 3001:3001 -e TAVILY_API_KEY="your_api_key_here" -e TRANSPORT="sse" tavily-search-mcp-server:latest
    より安全な方法として、シェルの環境変数を直接利用することもできます。
    docker run -it --rm -p 3001:3001 -e TAVILY_API_KEY=$TAVILY_API_KEY -e TRANSPORT="sse" tavily-search-mcp-server:latest
    注: 2番目のコマンドは-e TAVILY_API_KEY=$TAVILY_API_KEYを使用してTAVILY_API_KEY環境変数の値をDockerコンテナに渡すという推奨アプローチを示しています。これにより、APIキーがコマンド履歴に記録されなくなり、コマンドにシークレットをハードコーディングするよりも一般的に推奨されます。
  3. docker composeを使用する走る:
    docker compose up -d
    サーバーを停止するには:
    docker compose down

ライセンス

このMCPサーバーはMITライセンスに基づいてライセンスされています。つまり、MITライセンスの条件に従って、ソフトウェアを自由に使用、改変、配布することができます。詳細については、プロジェクトリポジトリのLICENSEファイルをご覧ください。

You must be authenticated.

A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

Tavily Search API を統合し、LLM に最適化された検索機能を提供する MCP サーバー実装。

  1. Features
    1. Tools
      1. Setup Guide 🚀
        1. 1. Prerequisites
        2. 2. Installation
        3. 3. Integration with Claude Desktop
        4. Installing via Smithery
      2. Environment Setup (for npm)
        1. Running with NPM
          1. Running with Docker
            1. License
              ID: 0kmdibf9t1