Skip to main content
Glama

Tavily MCP Server

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 サイトから取得)

  • uv Python パッケージ マネージャー (推奨)

インストール

オプション1: pipまたはuvを使用する

# With pip pip install mcp-tavily # Or with uv (recommended) uv add mcp-tavily

次のような出力が表示されます。

Resolved packages: mcp-tavily, mcp, pydantic, python-dotenv, tavily-python [...] Successfully installed mcp-tavily-0.1.4 mcp-1.0.0 [...]

オプション2: ソースから

# Clone the repository git clone https://github.com/RamXX/mcp-tavily.git cd mcp-tavily # Create a virtual environment (optional but recommended) python -m venv .venv source .venv/bin/activate # On Windows: .venv\Scripts\activate # Install dependencies and build uv sync # Or: pip install -r requirements.txt uv build # Or: pip install -e . # To install with test dependencies: uv sync --dev # Or: pip install -r requirements-dev.txt

インストール中に、パッケージがビルドされ、依存関係とともにインストールされるのを確認できます。

VS Codeでの使用

素早くインストールするには、以下のワンクリック インストール ボタンのいずれかを使用します。

VS CodeでUVを使ってインストールする VS Code Insiders で UV を使用してインストールする

手動でインストールする場合は、VS Code のユーザー設定 (JSON) ファイルに次の JSON ブロックを追加します。Ctrl Ctrl + Shift + Pを押してPreferences: Open User Settings (JSON)と入力すると、このブロックを追加できます。

オプションとして、ワークスペース内の.vscode/mcp.jsonというファイルに追加することもできます。これにより、他のユーザーと設定を共有できるようになります。

.vscode/mcp.jsonファイルではmcpキーは必要ないことに注意してください。

{ "mcp": { "inputs": [ { "type": "promptString", "id": "apiKey", "description": "Tavily API Key", "password": true } ], "servers": { "tavily": { "command": "uvx", "args": ["mcp-tavily"], "env": { "TAVILY_API_KEY": "${input:apiKey}" } } } } }

構成

APIキーの設定

サーバーには Tavily API キーが必要です。これは次の 3 つの方法で提供できます。

  1. プロジェクト ディレクトリ内の.envファイルを通じて:

    TAVILY_API_KEY=your_api_key_here
  2. 環境変数として:

    export TAVILY_API_KEY=your_api_key_here
  3. コマンドライン引数として:

    python -m mcp_server_tavily --api-key=your_api_key_here

Claude.app 用に設定する

Claude 設定に追加:

"mcpServers": { "tavily": { "command": "python", "args": ["-m", "mcp_server_tavily"] }, "env": { "TAVILY_API_KEY": "your_api_key_here" } }

問題が発生した場合、Pythonインタープリターへのフルパスを指定する必要があるかもしれません。正確なパスを確認するには、 which pythonを実行してください。

使用例

通常のウェブ検索の場合:

Tell me about Anthropic's newly released MCP protocol

ドメイン フィルタリングを使用してレポートを生成するには:

Tell me about redwood trees. Please use MLA format in markdown syntax and include the URLs in the citations. Exclude Wikipedia sources.

直接回答を得るために回答検索モードを使用するには:

I want a concrete answer backed by current web sources: What is the average lifespan of redwood trees?

ニュース検索:

Give me the top 10 AI-related news in the last 5 days

テスト

このプロジェクトには包括的なテストスイートが含まれています。テストを実行するには、以下の手順に従ってください。

  1. テストの依存関係をインストールします。

    source .venv/bin/activate # If using a virtual environment uv sync --dev # Or: pip install -r requirements-dev.txt
  2. テストを実行します。

    ./tests/run_tests.sh

次のような出力が表示されます。

======================================================= test session starts ======================================================== platform darwin -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 rootdir: /Users/ramirosalas/workspace/mcp-tavily configfile: pyproject.toml plugins: cov-6.0.0, asyncio-0.25.3, anyio-4.8.0, mock-3.14.0 asyncio: mode=Mode.STRICT, asyncio_default_fixture_loop_scope=function collected 50 items tests/test_docker.py .. [ 4%] tests/test_integration.py ..... [ 14%] tests/test_models.py ................. [ 48%] tests/test_server_api.py ..................... [ 90%] tests/test_utils.py ..... [100%] ---------- coverage: platform darwin, python 3.13.3-final-0 ---------- Name Stmts Miss Cover ------------------------------------------------------- src/mcp_server_tavily/__init__.py 16 2 88% src/mcp_server_tavily/__main__.py 2 2 0% src/mcp_server_tavily/server.py 149 16 89% ------------------------------------------------------- TOTAL 167 20 88%

テストスイートには、データモデル、ユーティリティ関数、統合テスト、エラー処理、パラメータ検証のテストが含まれています。ドメインフィルターや様々な入力形式の処理を含め、すべてのAPI機能が正しく動作することを確認することに重点を置いています。

ドッカー

Docker イメージをビルドします。

make docker-build

あるいは、Docker で直接ビルドします。

docker build -t mcp_tavily .

デタッチされた Docker コンテナを実行します (デフォルト名はmcp_tavily_container 、ポートは 8000 → 8000)。

make docker-run

または手動で:

docker run -d --name mcp_tavily_container \ -e TAVILY_API_KEY=your_api_key_here \ -p 8000:8000 mcp_tavily

コンテナを停止して削除します。

make docker-stop

コンテナのログを追跡します:

make docker-logs

環境変数を設定することでデフォルトを上書きできます。

  • DOCKER_IMAGE: イメージ名(デフォルトはmcp_tavily

  • DOCKER_CONTAINER: コンテナ名(デフォルトはmcp_tavily_container

  • HOST_PORT: バインドするホストポート(デフォルトは8000

  • CONTAINER_PORT: コンテナポート(デフォルト8000

デバッグ

MCP インスペクタを使用してサーバーをデバッグできます。

# Using npx npx @modelcontextprotocol/inspector python -m mcp_server_tavily # For development cd path/to/mcp-tavily npx @modelcontextprotocol/inspector python -m mcp_server_tavily

貢献

mcp-tavily の改善に向けた貢献を歓迎します。ご協力いただける方法は次のとおりです:

  1. リポジトリをフォークする

  2. 機能ブランチを作成する ( git checkout -b feature/amazing-feature )

  3. 変更を加える

  4. テストを実行して合格することを確認する

  5. 変更をコミットします( git commit -m 'Add amazing feature'

  6. ブランチにプッシュする ( git push origin feature/amazing-feature )

  7. プルリクエストを開く

他の MCP サーバーと実装パターンの例については、https: //github.com/modelcontextprotocol/serversを参照してください。

ライセンス

mcp-tavily は MIT ライセンスに基づきます。詳細はLICENSEファイルをご覧ください。

-
security - not tested
A
license - permissive license
-
quality - not tested

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/RamXX/mcp-tavily'

If you have feedback or need assistance with the MCP directory API, please join our Discord server