网页搜索服务

基于Tavily API的网页搜索服务,提供多种工具功能,适用于信息检索和数据分析。

  • by rach16
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 rach16/AIE8-MCP-Session13

使用说明

AI创客空间:MCP第13场会议代表

该项目是MCP(模型上下文协议)服务器的演示,该服务器利用Tavily API进行网络搜索功能。服务器设计为在标准输入/输出(stdio)传输模式下运行。

项目概述

MCP服务器设置为使用Tavily API处理网络搜索查询。它由以下关键部件组成:

  • TavilyClient:用于与Tavily API交互以执行网络搜索的客户端。

先决条件

  • Python 3.13或更高版本
  • 有效的Tavily API密钥

⚠️WINDOWS注意事项:⚠️

您需要在 视窗 操作系统的侧面。

这将需要为Powershell获取两个CLI工具,具体操作如下:

  • winget install astral-sh.uv
  • winget install --id Git.Git -e --source winget

拥有这些CLI工具后,请打开Cursor 进入Windows.

然后,您可以在Cursor终端中使用以下命令克隆存储库:

git clone https://AI-Maker-Space/AIE8-MCP-Session.git

之后,您可以从步骤2开始。在......下面

安装

  1. 克隆存储库:

    git clone <repository-url>
    cd <repository-directory>
    
  2. 配置环境变量: 创建一个 .env 文件并添加您的API密钥:

    TAVILY_API_KEY=your_tavily_api_key_here
    NEWS_API_KEY=your_news_api_key_here
    
    • 获取Tavilly API密钥:https://tavily.com/
    • 获取免费的NewsAPI密钥:https://newsapi.org/register
  3. 🏗️ 向MCP服务器添加新工具 🏗️

在中创建新工具 server.py 文件,就是这样!

运行MCP服务器

要启动MCP服务器,您需要在Cursor中的MCP配置文件中添加以下内容:

注意:要访问MCP配置。您可以使用命令托盘(CMD/CTRL+SHIFT+P)并选择“查看:打开MCP设置”,然后用下面的JSON blob替换内容。

{
    "mcpServers":  {
        "mcp-server": {
            "command" : "uv",
            "args" : ["--directory", "/PATH/TO/REPOSITORY", "run", "server.py"]
        }
    }
}

服务器将启动并通过标准输入/输出监听命令。

用法

服务器为不同的功能提供了多种工具:

可用工具:

  1. web_search(query: str) -使用Tavily API在网络上搜索关于给定查询的信息
  2. roll_dice(notation: str, num_rolls: int) -使用自定义符号掷骰子(例如“2d6”、“1d20”)
  3. get_marketing_news(company: str, category: str, num_articles: int) -从ZoomInfo、6sense、HubSpot等公司获取最新的营销和商业新闻。
  4. get_company_news(company: str, num_articles: int) -获取特定公司的具体新闻

示例用法:

  • get_marketing_news() -获取一般营销技术新闻
  • get_marketing_news(company="ZoomInfo") -获取ZoomInfo的具体新闻
  • get_company_news(company="6sense") -获取6sense公司新闻
  • roll_dice("2d6", 3) -掷2个六面骰子3次

活动:

这项任务有一些活动!

🏗️ 活动#1:

选择您喜欢使用的API,并为其构建MCP服务器!

🏗️ 活动#2:

构建一个与MCP服务器交互的简单LangGraph应用程序。

活动#2的文件:

  • langgraph_app.py -集成MCP的LangGraph应用程序

要测试活动#2:

uv run langgraph_app.py