Tavily MCP サーバー
Tavilyの検索APIを活用したAIベースのウェブ検索機能を提供するモデルコンテキストプロトコル(CMP)サーバー。このサーバーにより、LLMは高度なウェブ検索を実行し、質問への直接的な回答を得たり、AIによって抽出された関連コンテンツを含む最近のニュース記事を検索したりすることが可能になります。
特徴
利用可能なツール
tavily_web_search- AI を活用したコンテンツ抽出により包括的な Web 検索を実行します。query(文字列、必須): 検索クエリmax_results(整数、オプション): 返される結果の最大数 (デフォルト: 5、最大: 20)search_depth(文字列、オプション): 「basic」または「advanced」の検索深度(デフォルト: 「basic」)include_domains(リストまたは文字列、オプション): 結果に具体的に含めるドメインのリストexclude_domains(リストまたは文字列、オプション): 結果から除外するドメインのリスト
tavily_answer_search- Web 検索を実行し、裏付けとなる証拠とともに直接的な回答を生成します。query(文字列、必須): 検索クエリmax_results(整数、オプション): 返される結果の最大数 (デフォルト: 5、最大: 20)search_depth(文字列、オプション): 「基本」または「詳細」の検索深度(デフォルト: 「詳細」)include_domains(リストまたは文字列、オプション): 結果に具体的に含めるドメインのリストexclude_domains(リストまたは文字列、オプション): 結果から除外するドメインのリスト
tavily_news_search- 公開日で最近のニュース記事を検索します。query(文字列、必須): 検索クエリmax_results(整数、オプション): 返される結果の最大数 (デフォルト: 5、最大: 20)days(整数、オプション):検索までの日数(デフォルト:3)include_domains(リストまたは文字列、オプション): 結果に具体的に含めるドメインのリストexclude_domains(リストまたは文字列、オプション): 結果から除外するドメインのリスト
プロンプト
サーバーは、各検索タイプに対してプロンプト テンプレートも提供します。
tavily_web_search - TavilyのAI搭載検索エンジンを使用してウェブを検索します
tavily_answer_search - ウェブを検索し、裏付けとなる証拠とともに AI が生成した回答を取得します
tavily_news_search - Tavilyのニュース検索で最近のニュース記事を検索
Related MCP server: Tavily MCP Server
前提条件
Python 3.11以降
Tavily API キー ( Tavily の Web サイトから取得)
uvPython パッケージ マネージャー (推奨)
インストール
オプション1: pipまたはuvを使用する
次のような出力が表示されます。
オプション2: ソースから
インストール中に、パッケージがビルドされ、依存関係とともにインストールされるのを確認できます。
VS Codeでの使用
素早くインストールするには、以下のワンクリック インストール ボタンのいずれかを使用します。
手動でインストールする場合は、VS Code のユーザー設定 (JSON) ファイルに次の JSON ブロックを追加します。Ctrl Ctrl + Shift + Pを押してPreferences: Open User Settings (JSON)と入力すると、このブロックを追加できます。
オプションとして、ワークスペース内の.vscode/mcp.jsonというファイルに追加することもできます。これにより、他のユーザーと設定を共有できるようになります。
.vscode/mcp.jsonファイルではmcpキーは必要ないことに注意してください。
構成
APIキーの設定
サーバーには Tavily API キーが必要です。これは次の 3 つの方法で提供できます。
プロジェクト ディレクトリ内の
.envファイルを通じて:TAVILY_API_KEY=your_api_key_here環境変数として:
export TAVILY_API_KEY=your_api_key_hereコマンドライン引数として:
python -m mcp_server_tavily --api-key=your_api_key_here
Claude.app 用に設定する
Claude 設定に追加:
問題が発生した場合、Pythonインタープリターへのフルパスを指定する必要があるかもしれません。正確なパスを確認するには、 which pythonを実行してください。
使用例
通常のウェブ検索の場合:
ドメイン フィルタリングを使用してレポートを生成するには:
直接回答を得るために回答検索モードを使用するには:
ニュース検索:
テスト
このプロジェクトには包括的なテストスイートが含まれています。テストを実行するには、以下の手順に従ってください。
テストの依存関係をインストールします。
source .venv/bin/activate # If using a virtual environment uv sync --dev # Or: pip install -r requirements-dev.txtテストを実行します。
./tests/run_tests.sh
次のような出力が表示されます。
テストスイートには、データモデル、ユーティリティ関数、統合テスト、エラー処理、パラメータ検証のテストが含まれています。ドメインフィルターや様々な入力形式の処理を含め、すべてのAPI機能が正しく動作することを確認することに重点を置いています。
ドッカー
Docker イメージをビルドします。
あるいは、Docker で直接ビルドします。
デタッチされた Docker コンテナを実行します (デフォルト名はmcp_tavily_container 、ポートは 8000 → 8000)。
または手動で:
コンテナを停止して削除します。
コンテナのログを追跡します:
環境変数を設定することでデフォルトを上書きできます。
DOCKER_IMAGE: イメージ名(デフォルトは
mcp_tavily)DOCKER_CONTAINER: コンテナ名(デフォルトは
mcp_tavily_container)HOST_PORT: バインドするホストポート(デフォルトは
8000)CONTAINER_PORT: コンテナポート(デフォルト
8000)
デバッグ
MCP インスペクタを使用してサーバーをデバッグできます。
貢献
mcp-tavily の改善に向けた貢献を歓迎します。ご協力いただける方法は次のとおりです:
リポジトリをフォークする
機能ブランチを作成する (
git checkout -b feature/amazing-feature)変更を加える
テストを実行して合格することを確認する
変更をコミットします(
git commit -m 'Add amazing feature')ブランチにプッシュする (
git push origin feature/amazing-feature)プルリクエストを開く
他の MCP サーバーと実装パターンの例については、https: //github.com/modelcontextprotocol/serversを参照してください。
ライセンス
mcp-tavily は MIT ライセンスに基づきます。詳細はLICENSEファイルをご覧ください。