pab1it0
MCP 服务配置
复制以下 JSON 到 OPClaw 或其他 MCP 客户端的配置文件中即可使用
{
"mcpServers": {
"tripadvisor": {
"args": [
"run",
"--rm",
"-i",
"-e",
"TRIPADVISOR_API_KEY",
"tripadvisor-mcp-server"
],
"command": "docker",
"env": {
"TRIPADVISOR_API_KEY": "your_api_key_here"
}
}
}
}
服务介绍
Tripadvisor MCP 服务器
一个用于 Tripadvisor 内容 API 的 模型上下文协议 (MCP) 服务器。
该服务通过标准化的 MCP 接口提供对 Tripadvisor 地点数据、评论和照片的访问,使 AI 助手能够搜索旅行目的地和体验。
特性
-
在 Tripadvisor 上搜索地点(酒店、餐厅、景点)
-
获取特定地点的详细信息
-
检索地点的评论和照片
-
基于坐标搜索附近的地点
-
API 密钥认证
-
支持 Docker 容器化
-
为 AI 助手提供交互工具
工具列表是可配置的,因此您可以选择要向 MCP 客户端提供的工具。
使用方法
-
从 Tripadvisor 开发者门户 获取您的 Tripadvisor 内容 API 密钥。
-
通过
.env文件或系统环境变量配置您的 Tripadvisor 内容 API 环境变量:
env
必须:Tripadvisor 内容 API 配置
TRIPADVISOR_API_KEY=your_api_key_here
- 将服务器配置添加到您的客户端配置文件中。例如,对于 Claude Desktop:
json
{
"mcpServers": {
"tripadvisor": {
"command": "uv",
"args": [
"--directory",
"<tripadvisor-mcp 目录的完整路径>",
"run",
"src/tripadvisor_mcp/main.py"
],
"env": {
"TRIPADVISOR_API_KEY": "your_api_key_here"
}
}
}
}
注意:如果您在 Claude Desktop 中看到
Error: spawn uv ENOENT错误,您可能需要指定uv的完整路径或在配置中设置环境变量NO_UV=1。
Docker 使用
此项目包含 Docker 支持,以便于部署和隔离。
构建 Docker 镜像
使用以下命令构建 Docker 镜像:
bash
docker build -t tripadvisor-mcp-server .
使用 Docker 运行
您可以使用多种方式通过 Docker 运行服务器:
直接使用 docker run:
bash
docker run -it --rm
-e TRIPADVISOR_API_KEY=your_api_key_here
tripadvisor-mcp-server
使用 docker-compose:
创建一个包含您的 Tripadvisor API 密钥的 .env 文件,然后运行:
bash
docker-compose up
在 Claude Desktop 中使用 Docker 运行
要在 Claude Desktop 中使用容器化的服务器,请更新配置以使用带有环境变量的 Docker:
json
{
"mcpServers": {
"tripadvisor": {
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"-e", "TRIPADVISOR_API_KEY",
"tripadvisor-mcp-server"
],
"env": {
"TRIPADVISOR_API_KEY": "your_api_key_here"
}
}
}
}
此配置通过仅使用变量名的 -e 标志,并在 env 对象中提供实际值,将环境变量从 Claude Desktop 传递给 Docker 容器。
开发
欢迎贡献!如果您有任何建议或改进,请打开问题或提交拉取请求。
该项目使用 uv 来管理依赖项。请按照您平台的说明安装 uv:
bash
curl -LsSf https://astral.sh/uv/install.sh | sh
然后,您可以创建一个虚拟环境并安装依赖项:
bash
uv venv
source .venv/bin/activate # 在 Unix/macOS 上
.venvScriptsactivate # 在 Windows 上
uv pip install -e .
项目结构
项目采用 src 目录结构组织:
tripadvisor-mcp/
├── src/
│ └── tripadvisor_mcp/
│ ├── init.py # 包初始化
│ ├── server.py # MCP 服务器实现
│ ├── main.py # 主应用程序逻辑
├── Dockerfile # Docker 配置
├── docker-compose.yml # Docker Compose 配置
├── .dockerignore # Docker 忽略文件
├── pyproject.toml # 项目配置
└── README.md # 此文件### 测试
该项目包含一个测试套件,以确保功能正常并帮助防止回归。
使用 pytest 运行测试:
bash
安装开发依赖
pip install -e ".[dev]"
运行测试
pytest
生成覆盖率报告运行
pytest --cov=src --cov-report=term-missing
工具
| 工具 | 类别 | 描述 |
|---|---|---|
search_locations |
搜索 | 根据查询文本、类别和其他过滤条件搜索位置 |
search_nearby_locations |
搜索 | 查找特定坐标附近的地点 |
get_location_details |
检索 | 获取某个地点的详细信息 |
get_location_reviews |
检索 | 获取某个地点的评论 |
get_location_photos |
检索 | 获取某个地点的照片 |
许可证
MIT