Skip to main content
Glama
tavily-ai

Tavily MCP Server

Official
by tavily-ai

Tavily Crawl ベータ版

GitHubリポジトリのスターnpm鍛冶屋のバッジ

🎉 v0.2.1 でtavily-crawl + tavily-mapを導入しました! 🎉

MCPデモ

モデル コンテキスト プロトコル (MCP) は、AI システムがさまざまなデータ ソースやツールとシームレスに対話し、安全な双方向接続を実現できるようにするオープン スタンダードです。

Anthropicが開発したモデルコンテキストプロトコル(MCP)により、ClaudeのようなAIアシスタントはTavilyの高度な検索・データ抽出機能とシームレスに統合できます。この統合により、AIモデルはWeb情報へのリアルタイムアクセスが可能になり、高度なフィルタリングオプションやドメイン固有の検索機能も利用できます。

Tavily MCP サーバーは以下を提供します。

  • 検索、抽出、マップ、クロールツール

  • tavily-searchツールによるリアルタイムウェブ検索機能

  • tavily-extractツールによるWebページからのインテリジェントなデータ抽出

  • ウェブサイトの構造化されたマップを作成する強力なウェブマッピングツール

  • ウェブサイトを体系的に探索するウェブクローラー

📚 役立つリソース

Related MCP server: Tavily MCP Server

前提条件🔧

始める前に、次のものを用意してください。

  • Tavily APIキー

    • Tavily APIキーをお持ちでない場合は、こちらから無料アカウントを登録できます。

  • クロードデスクトップまたはカーソル

  • Node.js (v20以上)

    • 次のコマンドを実行して、Node.js のインストールを確認できます。

      • node --version

  • Gitがインストールされている (Git インストール方法を使用する場合のみ必要)

    • macOSの場合: brew install git

    • Linuxの場合:

      • Debian/Ubuntu: sudo apt install git

      • RedHat/CentOS: sudo yum install git

    • Windowsの場合: Git for Windowsをダウンロード

Tavily MCP サーバーのインストール ⚡

NPXで実行

npx -y tavily-mcp@0.2.1  

Smithery経由でインストール

Smithery経由で Claude Desktop 用の Tavily MCP Server を自動的にインストールするには:

npx -y @smithery/cli install @tavily-ai/tavily-mcp --client claude

サーバーを単独で起動することもできますが、単独では特に役に立ちません。代わりに、MCPクライアントに統合することをお勧めします。以下は、Claudeデスクトップアプリをtavily-mcpサーバーと連携するように設定する方法の例です。

MCP クライアントの設定 ⚙️

このリポジトリでは、 VS Code 、カーソル、 Claude Desktop をtavily-mcp サーバーで動作するように構成する方法について説明します。

VS Code の設定 💻

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

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

手動インストール

まず、このセクションの上部に、ニーズに合ったインストールボタンがあるかどうかを確認してください。手動でインストールする場合は、次の手順に従ってください。

VS Codeのユーザー設定(JSON)ファイルに、以下のJSONブロックを追加します。Ctrl Ctrl + Shift + P (macOSの場合はCmd + Shift + P )を押し、 Preferences: Open User Settings (JSON)と入力することで実行できます。

{
  "mcp": {
    "inputs": [
      {
        "type": "promptString",
        "id": "tavily_api_key",
        "description": "Tavily API Key",
        "password": true
      }
    ],
    "servers": {
      "tavily": {
        "command": "npx",
        "args": ["-y", "tavily-mcp@0.2.1"],
        "env": {
          "TAVILY_API_KEY": "${input:tavily_api_key}"
        }
      }
    }
  }
}

オプションとして、ワークスペース内の.vscode/mcp.jsonというファイルに追加することもできます。

{
  "inputs": [
    {
      "type": "promptString",
      "id": "tavily_api_key",
      "description": "Tavily API Key",
      "password": true
    }
  ],
  "servers": {
    "tavily": {
      "command": "npx",
      "args": ["-y", "tavily-mcp@0.2.1"],
      "env": {
        "TAVILY_API_KEY": "${input:tavily_api_key}"
      }
    }
  }
}

Cline の設定 🤖

Cline で Tavily MCP サーバーをセットアップする最も簡単な方法は、マーケットプレイスから 1 回のクリックでセットアップすることです。

  1. VS CodeでClineを開く

  2. サイドバーのClineアイコンをクリックします

  3. 「MCPサーバー」タブ(4つの四角)に移動します

  4. 「Tavily」を検索し、「インストール」をクリックします

  5. プロンプトが表示されたら、Tavily APIキーを入力してください。

あるいは、Cline で Tavily MCP サーバーを手動で設定することもできます。

  1. Cline MCP 設定ファイルを開きます。

macOSの場合:

# Using Visual Studio Code
code ~/Library/Application\ Support/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json

# Or using TextEdit
open -e ~/Library/Application\ Support/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json

Windowsの場合:

code %APPDATA%\Code\User\globalStorage\saoudrizwan.claude-dev\settings\cline_mcp_settings.json
  1. Tavily サーバー構成をファイルに追加します。

    your-api-key-here実際のTavily API キーに置き換えます。

    {
      "mcpServers": {
        "tavily-mcp": {
          "command": "npx",
          "args": ["-y", "tavily-mcp@0.2.1"],
          "env": {
            "TAVILY_API_KEY": "your-api-key-here"
          },
          "disabled": false,
          "autoApprove": []
        }
      }
    }
  2. ファイルを保存し、Cline がすでに実行されている場合は再起動します。

  3. Cline をご利用の際に、Tavily MCP ツールにアクセスできるようになりました。会話の中で、Cline に tavily-search ツールと tavily-extract ツールを直接使用するよう指示できます。

カーソルの設定 🖥️

注: カーソルバージョン0.45.6以上が必要です

Cursor で Tavily MCP サーバーを設定するには:

  1. カーソル設定を開く

  2. 機能 > MCP サーバーに移動します

  3. 「+新しいMCPサーバーを追加」ボタンをクリックします。

  4. 以下の情報を入力してください。

    • 名前: サーバーのニックネームを入力します(例:「tavily-mcp」)

    • タイプ: タイプとして「コマンド」を選択します

    • コマンド: サーバーを実行するコマンドを入力します。

      env TAVILY_API_KEY=your-api-key npx -y tavily-mcp@0.2.1

      重要: your-api-key Tavily APIキーに置き換えてください。app.tavily.com/ homeで取得できます。

サーバーを追加すると、MCPサーバーのリストに表示されます。ツールリストを更新するには、MCPサーバーの右上にある更新ボタンを手動で押す必要がある場合があります。

Composer Agentは、クエリに関連する場合、自動的にTavily MCPツールを使用します。ツールの使用を明示的にリクエストする場合は、何をしたいのかを記述することをお勧めします(例:「AIに関する最新ニュースをWebで検索するには、ユーザーtavily-search」)。Macの場合は、command + Lを押してチャットを開き、画面上部のComposerオプションを選択します。送信ボタンの横にあるエージェントを選択し、準備ができたらクエリを送信してください。

カーソルインターフェースの例

Claude デスクトップ アプリの設定 🖥️

macOSの場合:

# Create the config file if it doesn't exist
touch "$HOME/Library/Application Support/Claude/claude_desktop_config.json"

# Opens the config file in TextEdit 
open -e "$HOME/Library/Application Support/Claude/claude_desktop_config.json"

# Alternative method using Visual Studio Code (requires VS Code to be installed)
code "$HOME/Library/Application Support/Claude/claude_desktop_config.json"

Windowsの場合:

code %APPDATA%\Claude\claude_desktop_config.json

Tavily サーバー構成を追加します。

your-api-key-here実際のTavily API キーに置き換えます。

{
  "mcpServers": {
    "tavily-mcp": {
      "command": "npx",
      "args": ["-y", "tavily-mcp@0.2.1"],
      "env": {
        "TAVILY_API_KEY": "your-api-key-here"
      }
    }
  }
}

2. Gitのインストール

  1. リポジトリをクローンします。

git clone https://github.com/tavily-ai/tavily-mcp.git
cd tavily-mcp
  1. 依存関係をインストールします:

npm install
  1. プロジェクトをビルドします。

npm run build

Claude デスクトップ アプリの設定 ⚙️

以下の JSON 構成を使用して、上記の「Claude デスクトップ アプリの構成」セクションで概説されている構成手順に従います。

your-api-key-hereを実際のTavily API キーに置き換え、 /path/to/tavily-mcpをシステム上でリポジトリをクローンした実際のパスに置き換えます。

{
  "mcpServers": {
    "tavily": {
      "command": "npx",
      "args": ["/path/to/tavily-mcp/build/index.js"],
      "env": {
        "TAVILY_API_KEY": "your-api-key-here"
      }
    }
  }
}

Claude デスクトップアプリでの使用 🎯

インストールが完了し、Claude デスクトップアプリの設定が完了したら、Claude デスクトップアプリを完全に閉じて再度開き、tavily-mcp サーバーを確認してください。アプリの左下にハンマーアイコンが表示され、利用可能な MCP ツールが表示されます。ハンマーアイコンをクリックすると、tavily-search ツールと tavily-extract ツールの詳細が表示されます。

代替テキスト

これで、claude は tavily-mcp サーバーへの完全なアクセス権(tavily-search ツールと tavily-extract ツールを含む)を取得できるようになります。以下の例を Claude デスクトップアプリに挿入すると、tavily-mcp サーバーツールの動作を確認できます。

Tavily検索の例

  1. 一般的なウェブ検索:

Can you search for recent developments in quantum computing?
  1. ニュース検索:

Search for news articles about AI startups from the last 7 days.
  1. ドメイン固有の検索:

Search for climate change research on nature.com and sciencedirect.com

Tavily抽出例

  1. 記事の内容を抽出:

Extract the main content from this article: https://example.com/article

✨ 検索と抽出を組み合わせる ✨

tavily-search ツールと tavily-extract ツールを組み合わせて、より複雑なタスクを実行することもできます。

Search for news articles about AI startups from the last 7 days and extract the main content from each article to generate a detailed report.

トラブルシューティング 🛠️

よくある問題

  1. サーバーが見つかりません

    • npm --verisonを実行して npm のインストールを確認します。

    • code ~/Library/Application\ Support/Claude/claude_desktop_config.jsonを実行して、Claude Desktop の構成構文を確認します。

    • node --versionを実行して Node.js が正しくインストールされていることを確認します。

  2. NPX関連の問題

  • npxに関連するエラーが発生した場合は、代わりに npx 実行可能ファイルへのフルパスを使用する必要がある場合があります。

  • このパスを見つけるには、ターミナルでwhich npxを実行し、構成内の"command": "npx"行を"command": "/full/path/to/npx"に置き換えます。

  1. APIキーの問題

    • Tavily APIキーが有効であることを確認してください

    • APIキーが設定で正しく設定されていることを確認してください

    • APIキーの周囲にスペースや引用符がないことを確認してください

謝辞✨

Available Tools

4 tools
tavily-crawlA

A powerful web crawler that initiates a structured web crawl starting from a specified base URL. The crawler expands from that point like a graph, following internal links across pages. You can control how deep and wide it goes, and guide it to focus on specific sections of the site.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesThe root URL to begin the crawl
max_depthNoMax depth of the crawl. Defines how far from the base URL the crawler can explore.
max_breadthNoMax number of links to follow per level of the tree (i.e., per page)
limitNoTotal number of links the crawler will process before stopping
instructionsNoNatural language instructions for the crawler. Instructions specify which types of pages the crawler should return.
select_pathsNoRegex patterns to select only URLs with specific path patterns (e.g., /docs/.*, /api/v1.*)
select_domainsNoRegex patterns to restrict crawling to specific domains or subdomains (e.g., ^docs\.example\.com$)
allow_externalNoWhether to return external links in the final response
extract_depthNoAdvanced extraction retrieves more data, including tables and embedded content, with higher success but may increase latencybasic
formatNoThe format of the extracted web page content. markdown returns content in markdown format. text returns plain text and may increase latency.markdown
include_faviconNoWhether to include the favicon URL for each result

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It explains the crawler's graph-like expansion and control over depth/breadth, but omits behavioral details such as asynchronicity, rate limits, or side effects. It provides adequate but not comprehensive transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is three sentences long, front-loads the core purpose, and contains no redundant information. Every sentence contributes meaning.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite 100% schema coverage and no output schema, the description is somewhat light for a complex 11-parameter tool. It does not mention the output format or any operational constraints (e.g., timeouts, error handling), leaving some gaps in completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The description adds meaningful context beyond the schema by describing the crawler's graph expansion and ability to focus on sections, which enhances understanding of how parameters like max_depth and max_breadth work together.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it is a web crawler that starts from a base URL and expands like a graph, distinguishing it from sibling tools like extract, map, and search. It specifies the core action (initiates a structured crawl) and the resource (URL).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for structured web crawling but does not explicitly state when to use it versus alternatives (e.g., tavily-search). It lacks explicit when-not or alternative suggestions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

tavily-extractC

A powerful web content extraction tool that retrieves and processes raw content from specified URLs, ideal for data collection, content analysis, and research tasks.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlsYesList of URLs to extract content from
extract_depthNoDepth of extraction - 'basic' or 'advanced', if usrls are linkedin use 'advanced' or if explicitly told to use advancedbasic
include_imagesNoInclude a list of images extracted from the urls in the response
formatNoThe format of the extracted web page content. markdown returns content in markdown format. text returns plain text and may increase latency.markdown
include_faviconNoWhether to include the favicon URL for each result
queryNoUser intent query for reranking extracted chunks based on relevance

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden for behavioral disclosure. It mentions the tool 'retrieves and processes raw content' but doesn't disclose critical behavioral traits: whether it requires authentication, rate limits, error handling, pagination, or what the response structure looks like. The description adds minimal context beyond the basic operation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is appropriately sized with two concise sentences. The first sentence states the core functionality, and the second provides use cases. There's no wasted text, though it could be slightly more front-loaded with sibling differentiation.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 6 parameters, no annotations, and no output schema, the description is incomplete. It doesn't explain what the tool returns, error conditions, or behavioral constraints. For a web extraction tool with multiple configuration options and no structured output documentation, the description should provide more context about the extraction results and limitations.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all 6 parameters thoroughly. The description doesn't add any parameter-specific information beyond what's in the schema. It mentions general purpose but no parameter semantics. Baseline 3 is appropriate when schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'retrieves and processes raw content from specified URLs' with specific verbs and resource. It mentions use cases like 'data collection, content analysis, and research tasks' which helps understanding. However, it doesn't explicitly differentiate from sibling tools like tavily-crawl or tavily-search, which likely have overlapping web-related functionality.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus its siblings (tavily-crawl, tavily-map, tavily-search). It mentions the tool is 'ideal for data collection, content analysis, and research tasks' but doesn't specify contexts where alternatives might be better. There's no explicit when/when-not guidance or named alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

tavily-mapB

A powerful web mapping tool that creates a structured map of website URLs, allowing you to discover and analyze site structure, content organization, and navigation paths. Perfect for site audits, content discovery, and understanding website architecture.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesThe root URL to begin the mapping
max_depthNoMax depth of the mapping. Defines how far from the base URL the crawler can explore
max_breadthNoMax number of links to follow per level of the tree (i.e., per page)
limitNoTotal number of links the crawler will process before stopping
instructionsNoNatural language instructions for the crawler
select_pathsNoRegex patterns to select only URLs with specific path patterns (e.g., /docs/.*, /api/v1.*)
select_domainsNoRegex patterns to restrict crawling to specific domains or subdomains (e.g., ^docs\.example\.com$)
allow_externalNoWhether to return external links in the final response

TDQS

B3.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description must cover behavioral traits. It mentions 'crawler' but does not disclose how it handles JavaScript, rate limits, robot.txt, or data retention. The description is insufficient for an agent to understand side effects or constraints.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise, consisting of two sentences that efficiently convey the tool's value. However, it could be structured to front-load the core action more clearly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 8 parameters, no output schema, and no annotations, the description should explain the output structure (e.g., tree vs. list) and how the map is presented. It omits these critical details, making it incomplete for effective use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so baseline is 3. The description adds no additional meaning beyond the schema, simply restating the overall purpose without elaborating on parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it creates a structured map of website URLs for discovering site structure, content organization, and navigation paths. It distinguishes from siblings (crawl, extract, search) by focusing on mapping and analysis.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides some usage context ('Perfect for site audits, content discovery, and understanding website architecture') but lacks explicit guidance on when not to use or how it compares to siblings, leaving the agent to infer.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 4 tool updatesv1.0.0
    • First observedtavily-crawl
    • First observedtavily-extract
    • First observedtavily-map
    • First observedtavily-search

TDQS

A3.7/5.0

Scored across 4 tools

Disambiguation5/5

Each tool has a clearly distinct purpose: crawling (tavily-crawl) focuses on structured exploration from a base URL, extraction (tavily-extract) retrieves raw content from specific URLs, mapping (tavily-map) analyzes site structure, and search (tavily-search) provides real-time web results. There is no overlap in functionality, making tool selection straightforward for an agent.

Naming Consistency5/5

All tool names follow a consistent 'tavily-' prefix with a descriptive action suffix (crawl, extract, map, search), using a uniform hyphenated style. This predictable pattern enhances readability and reduces confusion, with no deviations in naming conventions.

Tool Count5/5

With 4 tools, the server is well-scoped for its web-related domain, covering key operations like crawling, extraction, mapping, and search without bloat. Each tool earns its place by addressing a distinct aspect of web interaction, making the count appropriate and manageable.

Completeness5/5

The tool set provides complete coverage for web-based tasks, including discovery (crawl, map), content retrieval (extract, search), and analysis. There are no obvious gaps; agents can perform end-to-end workflows from finding sites to extracting and analyzing content without dead ends.

Maintenance

ActivityActive
ResponsivenessUnresponsive

Related MCP Connectors

  • The Octagon MCP server provides specialized AI-powered financial research and analysis by integrating with the Octagon Market Intelligence API. It enables users to analyze public market data (SEC filings, earnings transcripts, financial metrics, and stock data for 8000+ companies), private market data (3M+ companies, 500k+ funding rounds, 2M+ M&A/IPO transactions), and conduct deep research including web scraping capabilities. The server also features autonomous research agents that search hundreds of sources and return fully cited reports in approximately one minute.

  • Driflyte MCP server which lets AI assistants query topic-specific knowledge from web and GitHub.

  • Web search, browser automation, scraping, crawling and CAPTCHA solving for AI agents.

  • The Dappier MCP server connects LLMs and AI agents to real-time, rights-cleared, proprietary data from trusted sources across various domains. It provides specialized knowledge through real-time web search, financial stock market and crypto data access, AI-powered content recommendations from premium publishers, and structured outputs with sub-300ms response times, enabling AI systems to respond to current events and trends.

Related MCP Servers

  • A
    license
    B
    quality
    D
    maintenance
    This server allows users to perform web searches using Perplexity AI, providing a tool for retrieving search results through a simple API interface.
    1
    88 npm
    3
    Apache 2.0
  • A
    license
    Not graded
    quality
    D
    maintenance
    Provides AI assistants with real-time web search, intelligent data extraction from web pages, website mapping, and web crawling capabilities through Tavily's API. Enables comprehensive web research and content analysis through natural language interactions.
    26,297 npm
    MIT