agoda-mcp
by duythien0912
README.md
# Agoda Deal Search & Room Freshness Vision ML MCP Server
MCP Server tích hợp tìm kiếm deal khách sạn trên **Agoda** bằng **Playwright Stealth** (vượt rào cản Akamai Bot Manager) và ứng dụng **Vision ML** (Zero-Shot CLIP Classification trên Apple Silicon GPU/MPS) để tự động thẩm định và lọc các phòng khách sạn mới xây, mới nâng cấp hoặc nội thất hiện đại.
---
## 🌟 Tính năng chính
1. **Playwright Stealth & GraphQL Interception**:
- Vượt Akamai Bot Manager Premier trên Agoda.
- Bắt gói tin `/graphql/search` chứa dữ liệu chi tiết về khách sạn, phòng, giá deal, chiết khấu và danh sách ảnh gốc chất lượng cao từ CDN Agoda.
2. **Vision ML Room Freshness Evaluator**:
- Sử dụng model `openai/clip-vit-base-patch32` chạy tăng tốc trên GPU (Apple Silicon Metal / MPS).
- Phân tích chi tiết từng bức ảnh phòng để chấm điểm độ mới (Modernity / Freshness Score) và phân loại:
- `PHÒNG RẤT MỚI & HIỆN ĐẠI (Brand New / Newly Renovated)`
- `PHÒNG KHÁ MỚI & SẠCH SẼ (Modern / Contemporary)`
- `PHÒNG CŨ / NỘI THẤT XUỐNG CẤP (Dated / Aged)`
3. **Bộ Tools MCP hoàn chỉnh**:
- `search_agoda_hotels`: Tìm kiếm khách sạn theo điểm đến, số khách, khoảng giá, ngày check-in.
- `evaluate_room_quality`: Đánh giá chất lượng/độ mới của phòng qua URL ảnh bằng Vision ML.
- `search_and_find_newest_rooms`: Workflow all-in-one tự động tìm và xếp hạng phòng mới nhất.
---
## 🛠️ Cài đặt
```bash
cd /Users/thiennd/Desktop/agoda-mcp
# Tạo môi trường ảo với Python 3.11 hoặc 3.12 (khuyến nghị uv)
uv venv --python 3.12
source .venv/bin/activate
# Cài đặt dependencies
uv pip install -r requirements.txt
# hoặc
uv pip install -e .
```
---
## 🧪 Chạy Test Thật (Live Test)
Thực hiện truy vấn thực tế: **Vũng Tàu (Trung tâm), 4 người lớn, giá 1.000.000đ - 4.000.000đ**, và đánh giá ảnh phòng bằng Vision ML:
```bash
.venv/bin/python run_live_test.py
```
Kết quả chi tiết được lưu tại file `live_test_results.json`.
---
## 🔌 Cấu hình MCP Server vào Claude Desktop / Cursor
Thêm vào file cấu hình MCP (`claude_desktop_config.json` hoặc `.cursor/mcp.json`):
```json
{
"mcpServers": {
"agoda-mcp": {
"command": "/Users/thiennd/Desktop/agoda-mcp/.venv/bin/python",
"args": ["/Users/thiennd/Desktop/agoda-mcp/src/server.py"]
}
}
}
```
# agoda-mcp
This server cannot be deployed
Maintenance
ActivityMaintained
ResponsivenessNo issues