Yelp Fusion AI 服务器

Yelp Fusion AI 服务器为应用程序提供对话式智能,使用户能够通过自然语言提问,并基于 Yelp 的最新商业数据和评论获取实时、上下文相关的答案。

  • by Yelp
  • Python
  • 本地部署
  • 27 星标
  • 更新于
在 GitHub 查看 Yelp/yelp-mcp

使用说明

Yelp融合AI的MCP服务器

Yelp Fusion AI 为您的应用程序带来会话智能,使用户能够提出自然语言问题,并接收由Yelp最新业务数据和评论提供支持的实时、上下文相关的答案。

融合人工智能能力

  • 下一代搜索和发现 –使用自然语言搜索,发现并连接与上下文相关的业务。 (“寻找湾区最好的玉米饼”)
  • 多回合对话 –支持来回交互,并通过后续问题细化查询。 (“哪些选项有露天座位?”)
  • 直接业务查询 –无需事先搜索,即可提出有关企业的有针对性的问题。 (“瑞奇的塔可允许带宠物吗?”)
  • 会话式餐厅预订 –通过自然语言互动探索餐厅的可用性并预订餐桌。(请注意,这可在 仅限请求。如需预订,请 联系我们.) (“明天晚上8点在瑞奇家预订一张4人桌”)

工具:

此服务器公开了一个主要工具:

  • yelpagent:专为代理间通信而设计。该工具处理有关本地企业的自然语言请求,提供自然语言响应和结构化业务数据。它支持使用chat_id的后续问题。功能包括业务搜索、详细问题、比较、行程规划等,利用Yelp的数据集。 关键论点:
    • 自然语言查询 (str):您的查询(例如“找到湾区最好的玉米卷”)。
    • 搜索纬度 (float或null):特定位置搜索的纬度。
    • search_longitude (float或null):用于特定位置搜索的经度。
    • chat_id (str或null):用于继续之前对话的ID。

先决条件

你要么需要一个容器管理器(比如 码头工人 或 波德曼)或在本地安装以下内容:

  • python 3.10或更高版本(如pyproject.toml中指定的)。
  • 紫外线Python包管理器。您可以在以下网址找到安装说明 https://docs.astral.sh/uv/.

您还需要Yelp Fusion AI的API密钥。您可以通过 在此处创建应用程序,这将开始您的免费试用。如果您需要更多时间进行评估,请发送电子邮件至 fusion@yelp.com 延长您的试用期。

查找更多详细信息和 这里有关于Yelp Fusion AI的全面文档。

设置和安装

  1. 克隆存储库:
git clone <repository_url>
cd yelp-mcp
  1. 安装依赖关系:此命令将创建一个虚拟环境(如果不存在),安装pyproject.toml和uv.lock中定义的所有必要依赖关系,并将项目安装到uv环境中。
make install

构建Docker镜像(可选)

如果你更喜欢在容器中运行服务器,你可以构建一个Docker镜像:

docker build -t mcp-yelp-agent .

这将创建一个名为mcp-yelp-agent:latest的映像。

运行服务器

此存储库旨在作为 模型上下文协议服务器。您需要一个MCP客户端(如兼容版本的Claude、Cursor或支持MCP的VS Code)才能与之交互。

方法1:不使用Docker运行

确保您已完成“设置和安装”步骤,特别是安装项目,以便mcp-yelp代理脚本可用。

服务器配置

服务器支持多种传输协议,可以使用命令行参数进行配置。当 stdio 是大多数MCP客户端的主要传输方式,其他选项可用于不同的用例。

  • --transport:选择通信协议。
    • stdio (默认):标准输入/输出,非常适合本地工具。
    • streamable-http:流式HTTP。
    • sse:服务器发送的事件。
  • --host:要绑定的主机地址(例如。, 127.0.0.1 或 0.0.0.0).默认值为 127.0.0.1.
  • --port:要侦听的端口。默认值为 8000.

方法1:不使用Docker运行

使用以下JSON设置配置MCP客户端,以使用默认值运行服务器 stdio 运输。

{
  "mcpServers": {
    "yelp_agent": {
      "command": "uv",
      "args": [
        "--directory",
        "<PATH_TO_YOUR_CLONED_PROJECT_DIRECTORY>",
        "run",
        "mcp-yelp-agent"
      ],
      "env": {
        "YELP_API_KEY": "<YOUR_YELP_FUSION_API_KEY>"
      }
    }
  }
}

笔记:

  • 替换 <PATH_TO_YOUR_CLONED_PROJECT_DIRECTORY> 带有克隆此项目的绝对路径。
  • 替换 <YOUR_YELP_FUSION_API_KEY> 使用您的实际Yelp Fusion API密钥。
  • 如果您的MCP客户端在直接调用uv时遇到问题,您可能需要提供uv二进制文件的完整路径。你可以通过运行找到它 which uv 在你的终端。

方法2:使用Docker运行

确保你已经按照“构建Docker镜像”中的描述构建了Docker镜像。

使用以下JSON设置配置MCP客户端:

{
  "mcpServers": {
    "yelp_agent": {
      "command": "docker",
      "args": [
        "run",
        "-i",          // Interactive mode
        "--rm",        // Automatically remove the container when it exits
        "--init",      // Run an init process as PID 1 in the container
        "-e", "YELP_API_KEY=<YOUR_YELP_FUSION_API_KEY>",
        "mcp-yelp-agent:latest" // The image name built earlier
      ]
    }
  }
}

笔记:

  • 替换 <YOUR_YELP_FUSION_API_KEY> 使用您的实际Yelp Fusion API密钥。
  • 如果您的MCP客户端在从系统PATH调用docker时遇到问题,您可能需要提供其二进制文件的完整路径(例如,运行哪个docker)。