Skip to main content
Glama
online111111

Tavily Search MCP Server

by online111111

Tavily Search MCP Server

A Model Context Protocol (MCP) server for the Tavily Search API with automatic multi-key fallback. Built with FastMCP.

Features

  • 🔄 Multi-key auto fallback — automatically rotates through TAVILY_API_KEY_1, TAVILY_API_KEY_2, etc. when rate-limited

  • 🌐 Web searchtavily_search for general web search

  • 📄 Content extractiontavily_extract to get content from URLs

  • 🗺️ Crawl & Maptavily_crawl / tavily_map for website structure

  • 🔬 Deep Researchtavily_research_create / tavily_research_get for AI-powered research

  • 📊 Usage trackingtavily_usage to check API quota

Related MCP server: Tavily MCP Server

Quick Start

{
  "mcpServers": {
    "tavily-search": {
      "command": "uvx",
      "args": ["tavily-search-mcp-server"]
    }
  }
}

Environment Variables

Variable

Required

Description

TAVILY_API_KEY_1

Yes

Primary Tavily API key

TAVILY_API_KEY_2..5

No

Fallback keys for auto-rotation

The server automatically discovers TAVILY_API_KEY_* env vars and falls back through them on 429 errors. Also supports single TAVILY_API_KEY for backward compatibility.

Available Tools

Tool

Description

tavily_search

Search the web with configurable depth, topic, time range

tavily_extract

Extract content from one or more URLs

tavily_crawl

Crawl a website with depth/breadth control

tavily_map

Map website structure

tavily_search_context

Search with raw content results

tavily_research_create

Create a deep research task

tavily_research_get

Get research task status/results

tavily_usage

Check API usage/quota

License

MIT

Available Tools

8 tools
tavily_crawlC

爬取网站。多 API Key 自动轮换。

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYes
max_depthNo
max_breadthNo
limitNo
instructionsNo
extract_depthNobasic
formatNo
include_imagesNo
include_faviconNo
include_usageNo
chunks_per_sourceNo
select_pathsNo
select_domainsNo
exclude_pathsNo
exclude_domainsNo
allow_externalNo
timeoutNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.5/5.0
Behavior2/5

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

The description mentions '多 API Key 自动轮换' (multiple API keys auto-rotate), which is a behavioral trait beyond the schema. However, with no annotations provided, the description fails to disclose other critical behaviors such as rate limits, destructive potential, or authentication requirements. Minimal transparency is achieved.

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 extremely concise at two short sentences. It front-loads the primary purpose and adds one key behavioral detail. No filler or redundancy exists.

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?

With 17 parameters, no annotation, and an output schema present, the description is far too brief to provide complete context. Parameter meanings, usage patterns, and return behavior are not addressed, making the tool difficult to use correctly without external documentation.

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

Parameters1/5

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

Schema description coverage is 0%, and the description provides no explanation of any parameter. The 17 parameters (including url, max_depth, max_breadth, etc.) are entirely undocumented in the text, leaving the agent without semantics beyond the raw schema.

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 '爬取网站' (crawl website) clearly states the action and resource. It distinguishes from sibling tools like tavily_search or tavily_extract by using 'crawl' instead of 'search' or 'extract', though no explicit differentiation is provided.

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

Usage Guidelines1/5

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

No guidance on when to use this tool versus alternatives. No context, prerequisites, or when-not-to-use instructions are provided. The description only states what it does without any usage recommendations.

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

tavily_extractC

从 URL 提取内容。多 API Key 自动轮换。

ParametersJSON Schema
NameRequiredDescriptionDefault
urlsYes
extract_depthNobasic
include_imagesNo
formatNo
include_faviconNo
include_usageNo
queryNo
chunks_per_sourceNo
timeoutNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.6/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. It only mentions automatic API key rotation, but fails to disclose rate limits, error handling, or output characteristics.

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 very concise with two sentences, each providing distinct information. However, it may be under-specified for the complexity of the tool.

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 9 parameters and no schema descriptions, the description is incomplete. It does not cover parameter behavior, response format, or usage constraints beyond a basic extraction purpose.

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

Parameters1/5

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

Schema description coverage is 0%, yet the description adds no meaning to any parameter. It does not explain fields like extract_depth, include_images, or timeout, leaving the agent without guidance on parameter usage.

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 states 'Extract content from URLs', which clearly indicates the tool's purpose. It distinguishes from sibling tools like search or crawl, but does not specify what type of content extraction is performed.

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?

No guidance is provided on when to use this tool versus alternatives like tavily_crawl or tavily_search. The description lacks any context for decision-making.

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

tavily_mapC

绘制网站结构地图。多 API Key 自动轮换。

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYes
max_depthNo
max_breadthNo
limitNo
instructionsNo
select_pathsNo
select_domainsNo
exclude_pathsNo
exclude_domainsNo
allow_externalNo
include_imagesNo
include_usageNo
timeoutNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.4/5.0
Behavior2/5

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

No annotations are present, so the description carries the full burden. It only mentions multi API key rotation, which is an implementation detail, but does not disclose whether the tool is read-only, rate limits, or any behavioral traits beyond the basic purpose.

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

Conciseness3/5

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

The description is very concise (two sentences) but for a tool with 13 parameters, this brevity sacrifices needed detail. It is front-loaded with purpose but lacks structure for parameter guidance.

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

Completeness1/5

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

Given 13 parameters, 0% schema coverage, and an output schema (unseen), the description completely fails to explain the return format or parameter behavior. It is highly incomplete for effective agent usage.

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

Parameters1/5

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

Schema description coverage is 0% and the description does not explain any of the 13 parameters. The user gets no insight into how to configure url, max_depth, max_breadth, or other options.

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 '绘制网站结构地图' meaning 'draw website structure map', which is a specific verb+resource. It distinguishes from sibling tools like tavily_crawl (crawling) and tavily_search (searching) by focusing on mapping the site's structure.

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?

No guidance is provided on when to use this tool vs alternatives like tavily_crawl or tavily_extract. The description lacks context for appropriate usage scenarios.

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

tavily_research_createC

创建 Tavily 深度研究任务。多 API Key 自动轮换。

ParametersJSON Schema
NameRequiredDescriptionDefault
inputYes
modelNo
output_schemaNo
streamNo
citation_formatNonumbered
timeoutNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.4/5.0
Behavior2/5

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

With no annotations, the description carries the full burden. It only discloses automatic API key rotation, but fails to mention whether the task is synchronous or asynchronous, resource consumption, or potential side effects.

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

Conciseness3/5

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

Two short sentences are concise and front-loaded with the core purpose. However, the brevity sacrifices essential details, making it less effective than a slightly longer but more informative description.

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

Completeness1/5

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

With 6 parameters, zero schema descriptions, no annotations, and a complex domain (deep research task), the description fails to provide adequate context. It does not explain how to use the tool effectively or what differentiates it from similar tools.

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

Parameters1/5

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

Schema description coverage is 0%, yet the description provides no explanation for any of the 6 parameters (input, model, output_schema, stream, citation_format, timeout). The output schema exists but is not referenced.

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 it creates a Tavily deep research task and mentions automatic API key rotation. The verb 'create' distinguishes it from sibling tools like tavily_research_get (retrieve), but no explicit differentiation from other research tools.

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?

No guidance on when to use this tool versus alternatives like tavily_search or tavily_crawl. No context about prerequisites or typical use cases.

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

tavily_research_getC

查询 Tavily 深度研究任务状态/结果。多 API Key 自动轮换。

ParametersJSON Schema
NameRequiredDescriptionDefault
request_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.6/5.0
Behavior2/5

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

With no annotations, the description carries the full burden. The auto-rotate key behavior is mentioned, but there is no disclosure of rate limits, possible errors (e.g., task not found), or what happens if the task is still pending. The description is too brief for a mutation-like query tool.

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 very concise, consisting of two short sentences. Every word seems necessary, but the structure could slightly improve by separating the main purpose from the key rotation note. However, it is largely efficient and front-loaded.

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 the tool has only one parameter and an output schema, the description is minimal. It lacks context about typical use cases, expected behavior (e.g., poll interval), error handling, or relationship to the sibling tools like tavily_research_create. The auto-rotate detail is helpful but insufficient.

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

Parameters1/5

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

The input schema has zero description coverage for the only parameter (request_id). The description does not add any meaning beyond the parameter name; it merely restates that it queries status/results. The agent gains no additional insight about the parameter's format or constraints.

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 queries Tavily deep research task status/results, and along with the tool name and sibling tools, it is easy to understand its purpose. The phrase '多 API Key 自动轮换' adds a unique detail but not necessary for purpose clarity.

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?

There is no explicit guidance on when to use this tool versus alternatives. The description gives no context about prerequisites (e.g., requires a prior research_create call) or when not to use it. The implicit usage is for checking task results, but it is not stated.

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

tavily_search_contextC

搜索并返回带原始内容的上下文结果。多 API Key 自动轮换。

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYes
search_depthNobasic
topicNogeneral
daysNo
max_resultsNo
max_tokensNo
countryNo
include_faviconNo
include_domainsNo
exclude_domainsNo
timeoutNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.6/5.0
Behavior2/5

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

No annotations exist. The description mentions automatic API key rotation, a behavioral trait, but fails to disclose whether the tool is read-only, destructive, or any other important behaviors. The return of 'context results' is vague.

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 with two sentences. The primary purpose is front-loaded. However, it lacks detail and could be more structured without becoming verbose.

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 11 parameters, no schema descriptions, and no annotations, the description is severely incomplete. It does not explain what makes this tool different from tavily_search, how parameters affect behavior, or what the output schema contains. The agent cannot fully understand how to use the tool effectively.

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

Parameters1/5

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

With 0% schema coverage and 11 parameters, the description adds no meaning to any parameter. It does not explain key parameters like query, search_depth, topic, days, etc. The agent is left without guidance on how to fill these fields.

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 that the tool searches and returns contextual results with original content, and mentions automatic API key rotation. However, it does not distinguish itself from the sibling tool tavily_search, which likely offers a simpler search without content.

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?

No guidance is provided on when to use this tool instead of alternatives like tavily_search or tavily_extract. The description implies it is for getting context with content but does not specify use cases or exclusions.

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

tavily_usageA

查询 Tavily 使用量/额度。多 API Key 自动轮换。

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.9/5.0
Behavior3/5

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

Discloses automatic API key rotation ('多 API Key 自动轮换'), which is a behavioral trait beyond the name. However, with no annotations it does not address if it is read-only or any side effects.

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?

Two short sentences, front-loaded with purpose. Could be slightly more structured (e.g., separate usage and behavior), but is efficient.

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

Completeness4/5

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

Given zero parameters and an output schema, the description is largely complete. It explains the core function and a key behavior (key rotation). It does not address error cases or return format, but output schema likely covers that.

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?

No parameters exist (schema coverage 100%), so baseline 4 applies. The description adds no parameter detail, which is acceptable given no 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 '查询 Tavily 使用量/额度' (query Tavily usage/quota), specifying both the action and the resource. It distinguishes from sibling tools (crawl, extract, search, etc.) which have different purposes.

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?

No explicit guidance on when to use this tool versus alternatives. The purpose is self-evident but lacks context like 'use before heavy operations' or 'when to check limits'.

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

TDQS

B3.3/5.0
Disambiguation5/5

Each tool has a clearly distinct purpose: search, search with context, crawl, extract, map, research creation, research retrieval, and usage monitoring. No overlap or ambiguity.

Naming Consistency5/5

All tools follow the consistent 'tavily_<verb>' pattern, using clear action verbs like search, crawl, extract, map, research_create, research_get, and usage. No mixing of conventions.

Tool Count5/5

8 tools is appropriate for a web search and research service, covering core operations without being excessive or insufficient.

Completeness4/5

The tool surface covers search, crawling, extraction, site mapping, research tasks, and usage monitoring. Minor gap: no tool to list or cancel research tasks, but core workflows are covered.

Maintenance

ActivityInactive
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    F
    maintenance
    Provides AI-powered web search capabilities using Tavily's search API, enabling LLMs to perform sophisticated web searches, get direct answers to questions, and search recent news articles.
    72
    MIT
  • 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.
    20,899
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables AI assistants to perform real-time web searches, extract data from web pages, map website structures, and crawl websites using the Tavily API.
    92
    MIT
  • F
    license
    Not graded
    quality
    C
    maintenance
    Provides web search capabilities using the Tavily API, enabling AI models to search the internet and retrieve up-to-date information.

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/online111111/tavily-search-mcp-server'

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