Tavily MCP Server について
Tavily MCP Serverは、FastAPIベースのリモートSSEサーバーを通じてTavily検索とURLからのコンテンツ抽出を提供します。APIキー認証を備え、ウェブ検索を必要とするMCPクライアント向けです。
主な機能
- 01深度やトピックを指定したTavily検索
- 02期間やドメインによる検索結果の絞り込み
- 03画像や生コンテンツの任意取得
- 04URLからのコンテンツ抽出
活用シーン
- 01一般テーマやニュースの検索
- 02期間やドメインを指定した検索結果の絞り込み
- 03指定URLからのコンテンツ取得
MCP 対応
fastapi-mcpを使い、Tavily APIのエンドポイントをリモートSSE MCPサーバーとして公開します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Tavily MCP Server
Tavily API と連携するためのエンドポイントを提供する、FastAPI ベースの基本的なサーバーアプリケーションです。API キー認証を備えており、fastapi-mcp ライブラリを使用して、リモート SSE MCP サーバーを作成します。
インストール
プロジェクトの依存関係をインストールするには、次のコマンドを実行します。
pip install -r requirements.txt
使い方
サーバーを起動するには、次のコマンドを使用します。
uvicorn server:app --host 0.0.0.0 --port 8000 --reload
サーバーは http://127.0.0.1:8000 で利用できます。
API キー
このサーバーでは、2 つの API キーが必要です。
API_KEY:サーバーのエンドポイントにアクセスするための API キーです。TAVILY_API_KEY:Tavily API にアクセスするための API キーです。
サーバーを起動する前に、これらの API キーを環境変数として設定してください。
エンドポイント
/tavily-search
Tavily API を使用して検索を実行します。
- メソッド:POST
- リクエストボディ:
TavilySearchRequestquery(str):検索クエリです。search_depth(Literal["basic", "advanced"], optional):検索の深度です。デフォルトは "basic" です。topic(Literal["general", "news"], optional):検索トピックです。デフォルトは "general" です。days(int, optional):検索対象の日数です。デフォルトは 3 です。time_range(Literal["day", "week", "month", "year", "d", "w", "m", "y"], optional):検索対象の期間です。デフォルトは "day" です。max_results(int, optional):返す結果の最大数です。デフォルトは 10 です。include_images(bool, optional):結果に画像を含めるかどうかです。デフォルトは False です。include_image_descriptions(bool, optional):結果に画像の説明を含めるかどうかです。デフォルトは False です。include_raw_content(bool, optional):結果に生のコンテンツを含めるかどうかです。デフォルトは False です。include_domains(list[str], optional):検索対象に含めるドメインのリストです。デフォルトは空のリストです。exclude_domains(list[str], optional):検索対象から除外するドメインのリストです。デフォルトは空のリストです。
- レスポンス:
TavilyResponse
/tavily-extract
Tavily API を使用して URL からコンテンツを抽出します。
- メソッド:POST
- リクエストボディ:
TavilyExtractRequesturls(list[str]):コンテンツを抽出する URL のリストです。extract_depth(Literal["basic", "advanced"], optional):抽出の深度です。デフォルトは "basic" です。include_images(bool, optional):抽出結果に画像を含めるかどうかです。デフォルトは False です。
- レスポンス:
TavilyResponse
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。