项目简介

本项目是一个实现了 Model Context Protocol (MCP) 的服务器,旨在为AI助手提供访问 Tripadvisor 内容 API 的标准化接口。通过此服务器,AI助手可以轻松地搜索旅行地点、获取详细信息、检索用户评价和照片,从而增强其在旅行和本地信息查询方面的能力。

主要功能点

  • 地点搜索:支持通过关键词、分类、电话、地址、经纬度等多种条件搜索 Tripadvisor 上的酒店、餐厅、景点等地点。
  • 地点详情:获取特定地点的详细信息,包括地址、联系方式、描述等。
  • 用户评价:检索特定地点的用户评价,帮助AI助手理解用户对地点的反馈。
  • 地点照片:获取地点的高质量照片,为AI助手提供更直观的地点信息。
  • 附近地点搜索:根据给定的经纬度坐标,搜索附近的地点。
  • API 密钥认证:通过 Tripadvisor API 密钥进行身份验证,保障数据安全访问。
  • Docker 容器化:支持 Docker 部署,方便用户快速部署和运行服务器。

安装步骤

  1. 获取 Tripadvisor API 密钥

  2. 配置环境变量

    • 在项目根目录下创建 '.env' 文件,或在系统环境变量中设置 'TRIPADVISOR_API_KEY' 变量,将步骤1中获取的 API 密钥填入。
    TRIPADVISOR_API_KEY=your_api_key_here
  3. 安装依赖

    • 确保已安装 'uv' (可以使用 'curl -LsSf https://astral.sh/uv/install.sh | sh' 安装)。
    • 在项目根目录下,使用 'uv' 创建虚拟环境并安装项目依赖:
      uv venv
      source .venv/bin/activate   # Linux/macOS
      .venv\Scripts\activate      # Windows
      uv pip install -e .

服务器配置

要将此 MCP 服务器配置到 MCP 客户端(例如 Claude Desktop),您需要提供服务器的启动命令和参数。以下是配置示例,请根据您的实际情况修改路径和 API 密钥:

{
  "mcpServers": {
    "tripadvisor": {
      "command": "uv",
      "args": [
        "--directory",
        "<tripadvisor-mcp 仓库的完整路径>",  // 将这里替换为 tripadvisor-mcp 仓库在您电脑上的完整路径,例如 "/Users/yourname/tripadvisor-mcp"
        "run",
        "src/tripadvisor_mcp/main.py"
      ],
      "env": {
        "TRIPADVISOR_API_KEY": "your_api_key_here" // 您也可以将 API 密钥直接填在这里,但不推荐,更推荐使用 .env 文件或系统环境变量
      }
    }
  }
}

Docker 部署配置示例:

如果您选择使用 Docker 部署,可以使用以下配置:

{
  "mcpServers": {
    "tripadvisor-docker": {
      "command": "docker",
      "args": [
        "run",
        "--rm",
        "-i",
        "-e", "TRIPADVISOR_API_KEY",
        "tripadvisor-mcp-server"
      ],
      "env": {
        "TRIPADVISOR_API_KEY": "your_api_key_here" // 您也可以将 API 密钥直接填在这里,但不推荐
      }
    }
  }
}

注意: 'tripadvisor-mcp-server' 是 Docker 镜像名称,请确保您已根据仓库 'README.md' 中的 Docker 说明构建了镜像。

基本使用方法

配置完成后,您的 MCP 客户端即可连接到 Tripadvisor MCP 服务器。AI助手可以通过调用服务器提供的工具来查询 Tripadvisor 的数据。

可用的工具包括:

  • 'search_locations': 搜索地点
  • 'search_nearby_locations': 搜索附近地点
  • 'get_location_details': 获取地点详情
  • 'get_location_reviews': 获取地点评价
  • 'get_location_photos': 获取地点照片

具体工具的使用方法和参数,请参考仓库 'src/tripadvisor_mcp/server.py' 文件中每个工具函数的详细注释。

信息

分类

网页与API