Tavily Search MCP サーバー
Tavily Search API を統合し、LLM に最適化された検索機能を提供する MCP サーバー実装。
特徴
**Web 検索:**検索の深さ、トピック、時間範囲を制御しながら、LLM 向けに最適化された Web 検索を実行します。
**コンテンツ抽出:**検索結果から最も関連性の高いコンテンツを抽出し、品質とサイズを最適化します。
**オプション機能:**画像、画像の説明、LLM によって生成された短い回答、生の HTML コンテンツを含めます。
**ドメイン フィルタリング:**検索結果に特定のドメインを含めるか除外します。
Related MCP server: MCP2Tavily
ツール
タビリー検索
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. インストール
このリポジトリをコンピューターのどこかにクローンします:
git clone https://github.com/apappascs/tavily-search-mcp-server.git依存関係をインストールしてプロジェクトをビルドします。
cd tavily-search-mcp-servernpm installnpm run build
3. Claude Desktopとの統合
Claude Desktop 構成ファイルを開きます。
# On Mac: ~/Library/Application\ Support/Claude/claude_desktop_config.json # On Windows: %APPDATA%\Claude\claude_desktop_config.jsonnpmまたは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" } } } }重要な手順:
/Users/<username>/<FULL_PATH...>/tavily-search-mcp-serverを、リポジトリのクローンを作成した実際のフルパスに置き換えます。envセクションに Tavily API キーを追加します。APIキーなどの秘密情報は環境変数として保存しておくことをお勧めします。Windows の場合でも、パスには必ずスラッシュ (
/) を使用してください。docker を使用している場合は、まず
docker build -t tavily-search-mcp-server:latest .
変更を有効にするには、Claude Desktop を再起動してください。
Smithery経由でインストール
Smithery経由で Claude Desktop の Tavily Search を自動的にインストールするには:
環境設定(npm用)
.env.exampleを.envにコピーします。cp .env.example .env実際の Tavily API キーを使用して
.envファイルを更新します。TAVILY_API_KEY=your_api_key_here注意:実際のAPIキーをバージョン管理にコミットしないでください。.envファイル
.envセキュリティ上の理由からGitによって無視されます。
NPMで実行する
Node.js を使用してサーバーを起動します。
SSE輸送の場合:
Dockerで実行する
Docker イメージをビルドします (まだビルドしていない場合)。
docker build -t tavily-search-mcp-server:latest .次のコマンドで Docker コンテナを実行します。
stdio トランスポートの場合:
docker run -it --rm -e TAVILY_API_KEY="your_api_key_here" tavily-search-mcp-server:latestSSE輸送の場合:
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キーがコマンド履歴に記録されなくなり、コマンドにシークレットをハードコーディングするよりも一般的に推奨されます。docker composeを使用する
走る:
docker compose up -dサーバーを停止するには:
docker compose down
ライセンス
このMCPサーバーはMITライセンスに基づいてライセンスされています。つまり、MITライセンスの条件に従って、ソフトウェアを自由に使用、改変、配布することができます。詳細については、プロジェクトリポジトリのLICENSEファイルをご覧ください。