Tavily Search MCP Agent
🔍 My Tavily Search MCPエージェント
Tavily APIを活用した強力なモデルコンテキストプロトコル(MCP)サーバーを開発しました。これにより、ビジネス、ニュース、金融、政治など、高品質で信頼性の高い情報を、堅牢で開発者フレンドリーなインターフェースを通じて入手できるようになります。
🌟 Tavily Search MCPを構築した理由
今日のめまぐるしく変化するデジタル環境において、正確な情報に迅速にアクセスする必要があることに気づきました。そのため、シーケンシャルシンキングMCPサーバーと連携するウェブ検索ツールが必要でした。そこで、以下の優れた機能を備えたTavily Search MCPを開発しました。
⚡️ 超高速の非同期検索レスポンス
🛡️ 自動再試行機能を備えたフォールトトレランス機能を内蔵
🎯 クリーンなマークダウン形式の結果
🔍 スマートコンテンツスニペット
🛠️ 包括的なエラー処理
🖼️ オプションの画像結果
📰 専門ニュース検索
Related MCP server: MCP2Tavily
🚀 クイックスタート
Smithery経由でインストール
Smithery経由で Claude Desktop の Tavily Search を自動的にインストールするには:
npx -y @smithery/cli install mcp-tavily-search --client claude手動でインストールする
私のプロジェクトを数分で開始する方法は次のとおりです。
# 1. Create environment
uv venv && .venv\Scripts\activate # Windows
# OR
uv venv && source .venv/bin/activate # Unix/MacOS
# 2. Install dependencies
uv pip install -e .
# 3. Set up configuration
echo TAVILY_API_KEY=your-key-here > .env
# 4. Start server
cd mcp_tavily_search && uv run server.py💡 コア機能
⚡️ パフォーマンスと信頼性
非同期リクエスト処理を実装しました
組み込みのエラー処理と自動再試行
設定可能なリクエストタイムアウト
包括的なログシステム
🎯 検索設定
検索の深さを設定可能にしました(基本/詳細)
調整可能な結果制限(1~20件)
クリーンなマークダウン形式の出力
ソース URL 付きのスニペット プレビュー
オプションの画像結果
専門ニュース検索トピック
🛡️ エラー処理
API認証検証
レート制限検出
ネットワークエラー回復
リクエストタイムアウト管理
🛠️ 開発者統合
前提条件
Python 3.11以上
UV パッケージ マネージャー (インストール ガイド)
Tavily API キー (こちらから取得)
クロードデスクトップセットアップ
Claude デスクトップ エクスペリエンスを次の構成で最適化しました。
{
"mcpServers": {
"tavily-search": {
"command": "uv",
"args": [
"--directory",
"/path/to/mcp-tavily-search/mcp_tavily_search",
"run",
"server.py"
],
"env": {
"TAVILY_API_KEY": "YOUR-API-KEY"
}
}
}
}📁 構成パス:
Windows:
%APPDATA%\Claude\claude_desktop_config.jsonUnix/MacOS:
~/.config/Claude/claude_desktop_config.json
プロジェクトアーキテクチャ
開発を簡単にするために、クリーンでモジュール化された構造を設計しました。
mcp-tavily-search/
├── mcp_tavily_search/ # Core package
│ ├── server.py # Server implementation
│ ├── client.py # Tavily API client
│ ├── test_server.py # Server tests
│ ├── test_client.py # Client tests
│ └── __init__.py # Package initialization
├── .env # Environment configuration
├── README.md # Documentation
└── pyproject.toml # Project configuration主要コンポーネント
サーバー (server.py)
MCPプロトコルを実装しました
リクエストの処理とルーティング
エラー回復とヘルスモニタリング
クライアント (client.py)
Tavily API統合
指数バックオフによる再試行メカニズム
結果のフォーマットと処理
エラー処理とログ記録
テスト (test_server.py と test_client.py)
サーバーとクライアントの両方に対する包括的なユニットテスト
実装の信頼性と正確性を保証する
使用例
私が実装した拡張検索機能の使用方法の例をいくつか示します。
基本検索:
{
"name": "search",
"arguments": {
"query": "Latest news on artificial intelligence"
}
}画像を使った高度な検索:
{
"name": "search",
"arguments": {
"query": "Elon Musk SpaceX achievements",
"search_depth": "advanced",
"include_images": true,
"max_results": 10
}
}ニュースに特化した検索:
{
"name": "search",
"arguments": {
"query": "Climate change impact on agriculture",
"topic": "news",
"max_results": 5
}
}生のコンテンツで検索:
{
"name": "search",
"arguments": {
"query": "Python programming best practices",
"include_raw_content": true,
"max_results": 3
}
}トラブルシューティングガイド
接続の問題
期待どおりに動作しない場合は、次の手順に従ってください。
設定パスを確認する
Claude Desktop のログを確認します。
# Windows type %APPDATA%\Claude\logs\latest.log # Unix/MacOS cat ~/.config/Claude/logs/latest.logクイックスタートコマンドを使用して手動でサーバーをテストする
API トラブルシューティング
API の問題が発生した場合:
APIキーの権限を検証する
ネットワーク接続を確認してください
サーバーログでAPI応答を監視する
テストの実行
このプロジェクトの単体テストを実行するには、次の手順に従います。
開発依存関係をインストールします。
uv pip install -e ".[dev]"pytest を使用してテストを実行します。
pytest mcp_tavily_search
これにより、 test_client.pyとtest_server.py両方を含む、 mcp_tavily_searchディレクトリ内のすべてのテストが実行されます。
コミュニティとサポート
GitHubで問題を報告し、貢献することをお勧めします
実装と改善を共有する
ディスカッションに参加して他の人を助けましょう
セキュリティとベストプラクティス
私の実装ではセキュリティが最優先事項です。サーバーには以下が含まれます。
環境変数による安全な API キー処理
自動リクエストタイムアウト管理
包括的なエラー追跡とログ記録
ライセンス
このプロジェクトはMITライセンスです。詳細はLICENSEファイルをご覧ください。
謝辞
特に感謝したいのは、次の方々です。
革新的なTavily APIチーム
MCPプロトコルコミュニティ
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/arben-adm/tavily-mcp-search'
If you have feedback or need assistance with the MCP directory API, please join our Discord server