Tavily Search MCP Server

Tavily Search MCP Server

镜子 (jìng zi)

MCP-Mirror

研究与数据
访问服务器

README

Tavily Search MCP 服务器

一个集成了 Tavily Search API 的 MCP 服务器实现,为 LLM 提供优化的搜索能力。

<a href="https://glama.ai/mcp/servers/0kmdibf9t1"><img width="380" height="200" src="https://glama.ai/mcp/servers/0kmdibf9t1/badge" alt="tavily-search-mcp-server MCP server" /></a>

特性

  • 网页搜索: 执行针对 LLM 优化的网页搜索,可以控制搜索深度、主题和时间范围。
  • 内容提取: 从搜索结果中提取最相关的内容,优化质量和大小。
  • 可选特性: 包括图像、图像描述、简短的 LLM 生成的答案和原始 HTML 内容。
  • 域名过滤: 在搜索结果中包含或排除特定域名。

工具

  • tavily_search
    • 使用 Tavily Search API 执行网页搜索。
    • 输入:
      • query (字符串, 必需): 搜索查询。
      • search_depth (字符串, 可选): "basic" 或 "advanced" (默认: "basic")。
      • topic (字符串, 可选): "general" 或 "news" (默认: "general")。
      • days (数字, 可选): 新闻搜索的天数 (默认: 3)。
      • time_range (字符串, 可选): 时间范围过滤器 ("day", "week", "month", "year" 或 "d", "w", "m", "y")。
      • max_results (数字, 可选): 最大结果数 (默认: 5)。
      • include_images (布尔值, 可选): 包括相关图像 (默认: false)。
      • include_image_descriptions (布尔值, 可选): 包括图像的描述 (默认: false)。
      • include_answer (布尔值, 可选): 包括一个简短的 LLM 生成的答案 (默认: false)。
      • include_raw_content (布尔值, 可选): 包括原始 HTML 内容 (默认: false)。
      • include_domains (字符串数组, 可选): 要包含的域名。
      • exclude_domains (字符串数组, 可选): 要排除的域名。

设置指南 🚀

1. 前提条件

  • 在您的计算机上安装 Claude Desktop
  • 一个 Tavily API 密钥: a. 注册一个 Tavily API 帐户。 b. 选择一个计划 (提供免费层)。 c. 从 Tavily 仪表板生成您的 API 密钥。

2. 安装

  1. 将此存储库克隆到您计算机上的某个位置:

    git clone https://github.com/apappascs/tavily-search-mcp-server.git
    
  2. 安装依赖项并构建项目:

    cd tavily-search-mcp-server
    
    npm install
    
    npm run build
    

3. 与 Claude Desktop 集成

  1. 打开您的 Claude Desktop 配置文件:

    # 在 Mac 上:
    ~/Library/Application\ Support/Claude/claude_desktop_config.json
    
    # 在 Windows 上:
    %APPDATA%\Claude\claude_desktop_config.json
    
  2. 将以下其中一个添加到您的配置中的 mcpServers 对象中,具体取决于您是想使用 npm 还是 docker 运行服务器:

    选项 A: 使用 NPM (stdio 传输)

    {
        "mcpServers": {
            "tavily-search-server": {
                "command": "node",
                "args": [
                    "/Users/<username>/<FULL_PATH...>/tavily-search-mcp-server/dist/index.js"
                ],
                "env": {
                    "TAVILY_API_KEY": "your_api_key_here"
                }
            }
        }
    }
    

    选项 B: 使用 NPM (SSE 传输)

    {
        "mcpServers": {
            "tavily-search-server": {
                "command": "node",
                "args": [
                    "/Users/<username>/<FULL_PATH...>/tavily-search-mcp-server/dist/sse.js"
                ],
                "env": {
                    "TAVILY_API_KEY": "your_api_key_here"
                },
                "port": 3001
            }
        }
    }
    

    选项 C: 使用 Docker

    {
        "mcpServers": {
            "tavily-search-server": {
                "command": "docker",
                "args": [
                    "run",
                    "-i",
                    "--rm",
                    "-e",
                    "TAVILY_API_KEY",
                    "-v",
                    "/Users/<username>/<FULL_PATH...>/tavily-search-mcp-server:/app",
                    "tavily-search-mcp-server"
                ],
                "env": {
                    "TAVILY_API_KEY": "your_api_key_here"
                }
            }
        }
    }
    
  3. 重要步骤:

    • /Users/<username>/<FULL_PATH...>/tavily-search-mcp-server 替换为您克隆存储库的实际完整路径。
    • env 部分中添加您的 Tavily API 密钥。 最好始终将 API 密钥之类的秘密作为环境变量。
    • 即使在 Windows 上,也要确保在路径中使用正斜杠 (/)。
    • 如果您正在使用 docker,请确保首先使用 docker build -t tavily-search-mcp-server:latest . 构建镜像。
  4. 重新启动 Claude Desktop 以使更改生效。

环境设置 (对于 npm)

  1. .env.example 复制到 .env:

    cp .env.example .env
    
  2. 使用您的实际 Tavily API 密钥更新 .env 文件:

    TAVILY_API_KEY=your_api_key_here
    

    注意: 永远不要将您的实际 API 密钥提交到版本控制。 出于安全原因,.env 文件会被 git 忽略。

使用 NPM 运行

使用 Node.js 启动服务器:

node dist/index.js

对于 sse 传输:

node dist/sse.js

使用 Docker 运行

  1. 构建 Docker 镜像 (如果您尚未构建):

    docker build -t tavily-search-mcp-server:latest .
    
  2. 使用以下命令运行 Docker 容器:

    对于 stdio 传输:

    docker run -it --rm -e TAVILY_API_KEY="your_api_key_here" tavily-search-mcp-server:latest
    

    对于 sse 传输:

    docker run -it --rm -p 3001:3001 -e TAVILY_API_KEY="your_api_key_here" -e TRANSPORT="sse" tavily-search-mcp-server:latest
    

    您还可以直接利用 shell 的环境变量,这是一种更安全的做法:

     docker run -it --rm -p 3001:3001 -e TAVILY_API_KEY=$TAVILY_API_KEY -e TRANSPORT="sse" tavily-search-mcp-server:latest
    

    注意: 第二个命令演示了使用 -e TAVILY_API_KEY=$TAVILY_API_KEYTAVILY_API_KEY 环境变量的值传递到 Docker 容器中的推荐方法。 这使您的 API 密钥不会出现在您的命令历史记录中,并且通常优于在命令中硬编码密钥。

  3. 使用 docker compose

    运行:

    docker compose up -d
    

    停止服务器:

    docker compose down
    

许可证

此 MCP 服务器是在 MIT 许可证下获得许可的。 这意味着您可以自由使用、修改和分发该软件,但须遵守 MIT 许可证的条款和条件。 有关更多详细信息,请参阅项目存储库中的 LICENSE 文件。

推荐服务器

Crypto Price & Market Analysis MCP Server

Crypto Price & Market Analysis MCP Server

一个模型上下文协议 (MCP) 服务器,它使用 CoinCap API 提供全面的加密货币分析。该服务器通过一个易于使用的界面提供实时价格数据、市场分析和历史趋势。 (Alternative, slightly more formal and technical translation): 一个模型上下文协议 (MCP) 服务器,利用 CoinCap API 提供全面的加密货币分析服务。该服务器通过用户友好的界面,提供实时价格数据、市场分析以及历史趋势数据。

精选
TypeScript
MCP PubMed Search

MCP PubMed Search

用于搜索 PubMed 的服务器(PubMed 是一个免费的在线数据库,用户可以在其中搜索生物医学和生命科学文献)。 我是在 MCP 发布当天创建的,但当时正在度假。 我看到有人在您的数据库中发布了类似的服务器,但还是决定发布我的服务器。

精选
Python
mixpanel

mixpanel

连接到您的 Mixpanel 数据。 从 Mixpanel 分析查询事件、留存和漏斗数据。

精选
TypeScript
Sequential Thinking MCP Server

Sequential Thinking MCP Server

这个服务器通过将复杂问题分解为顺序步骤来促进结构化的问题解决,支持修订,并通过完整的 MCP 集成来实现多条解决方案路径。

精选
Python
Nefino MCP Server

Nefino MCP Server

为大型语言模型提供访问德国可再生能源项目新闻和信息的能力,允许按地点、主题(太阳能、风能、氢能)和日期范围进行筛选。

官方
Python
Vectorize

Vectorize

将 MCP 服务器向量化以实现高级检索、私有深度研究、Anything-to-Markdown 文件提取和文本分块。

官方
JavaScript
Mathematica Documentation MCP server

Mathematica Documentation MCP server

一个服务器,通过 FastMCP 提供对 Mathematica 文档的访问,使用户能够从 Wolfram Mathematica 检索函数文档和列出软件包符号。

本地
Python
kb-mcp-server

kb-mcp-server

一个 MCP 服务器,旨在实现便携性、本地化、简易性和便利性,以支持对 txtai “all in one” 嵌入数据库进行基于语义/图的检索。任何 tar.gz 格式的 txtai 嵌入数据库都可以被加载。

本地
Python
Research MCP Server

Research MCP Server

这个服务器用作 MCP 服务器,与 Notion 交互以检索和创建调查数据,并与 Claude Desktop Client 集成以进行和审查调查。

本地
Python
Cryo MCP Server

Cryo MCP Server

一个API服务器,实现了模型补全协议(MCP),用于Cryo区块链数据提取,允许用户通过任何兼容MCP的客户端查询以太坊区块链数据。

本地
Python