返回市场
Yelp MCP

Yelp MCP

作者:Yelp23 星标更新:2025-07-18

项目介绍

MCP Server for Yelp Fusion AI

Yelp Fusion AI 将对话智能带入您的应用程序,使用户能够以自然语言提问,并通过 Yelp 的最新业务数据和评论获得实时、上下文相关的答案。

Fusion AI 功能

  • 下一代搜索与发现 – 使用自然语言进行搜索,发现并连接到上下文相关的业务。 (例如:“在湾区找到最好的墨西哥卷饼”)
  • 多轮对话 – 支持来回互动,并通过后续问题细化查询。 (例如:“哪些选项有露天座位?”)
  • 直接业务查询 – 在无需先进行搜索的情况下,针对业务提出具体问题。 (例如:“Ricky’s Taco 是否允许宠物进入?”)
  • 对话式餐厅预订 – 通过自然语言交互探索可用性并预订餐厅的桌子。(请注意,此功能仅限于请求。如需启用预订,请联系我们。) (例如:“明天晚上8点在Ricky’s预订一个四人桌”)

工具:

该服务器提供了一个主要工具:

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

前提条件

您需要一个容器管理器(如 DockerPodman),或者以下内容已安装在本地:

  • Python:版本 3.10 或更高(如 pyproject.toml 中所指定)。
  • uv: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-agent 脚本可用。

服务器配置

服务器支持多种传输协议,并可通过命令行参数进行配置。虽然大多数 MCP 客户端的主要传输是 stdio,但其他选项可用于不同的用例。

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

方法 1:不使用 Docker 运行

使用默认的 stdio 传输配置您的 MCP 客户端,如下所示的 JSON 设置。

{
  "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",          // 交互模式
        "--rm",        // 容器退出时自动删除
        "--init",      // 在容器中作为 PID 1 运行初始化进程
        "-e", "YELP_API_KEY=<YOUR_YELP_FUSION_API_KEY>",
        "mcp-yelp-agent:latest" // 之前构建的镜像名称
      ]
    }
  }
}

注意事项:

  • <YOUR_YELP_FUSION_API_KEY> 替换为您实际的 Yelp Fusion API 密钥。
  • 如果您的 MCP 客户端无法从系统 PATH 调用 docker,您可能需要提供其可执行文件的完整路径(例如,运行 which docker)。