amex-travel

Search the Amex travel portal for cash, points, IAP, and FHR/THC pricing via Patchright.

650|67|Updated Mar 21, 2026
One-click install
npx skills add https://github.com/borski/travel-hacking-toolkit --skill amex-travel
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: amex-travel
Source: https://github.com/borski/travel-hacking-toolkit/tree/main/plugins/travel-hacking-toolkit/skills/amex-travel
Command: npx skills add https://github.com/borski/travel-hacking-toolkit --skill amex-travel

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires patchright, and includes scripts (resource) components.

What problem does it solve?

Comparing American Express portal pricing against award flights and cash fares requires manually logging into the Amex travel portal, navigating 2FA and captcha gates, and reading results scattered across a Next.js interface. This Skill automates that search so you can evaluate pay-with-points value, IAP discounts, and FHR/THC hotel benefits in one step.

Core Features & Use Cases

  • Flight Search with IAP Detection: Returns cash prices, Membership Rewards points pricing, and Platinum-only International Airline Program discounted fares with per-segment details.
  • Hotel Search with FHR/THC Benefits: Extracts per-night and total pricing, points cost, and Fine Hotels & Resorts / The Hotel Collection benefits like breakfast, credits, and upgrades.
  • Session Management: Handles cookie injection, email 2FA via file or command hook, and a human-in-the-loop refresh script for the captcha-protected travel login gate.
  • Use Case: Ask whether booking a business class SFO-CDG flight through the Amex portal with MR points beats transferring points to an airline, and get a markdown table comparing cash, IAP, and points pricing.

Quick Start

Ask the AI to search the Amex travel portal for a business class flight from SFO to CDG on your travel dates and compare the MR points pricing against award alternatives.

Frequently Asked Questions about amex-travel

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I search Amex travel portal flights from the command line?

Run scripts/search_flights.py with --origin, --dest, and --depart arguments, optionally adding --return, --cabin, and --json. It requires AMEX_USERNAME and AMEX_PASSWORD environment variables and a Patchright Chromium install, or you can run the provided Docker image instead.

How do I find Amex FHR and THC hotel benefits programmatically?

Run search_flights.py with --hotel, --dest, --checkin, and --checkout flags. The script parses hotel offer cards via data-testid attributes and flags Fine Hotels & Resorts or The Hotel Collection properties along with benefits like breakfast, credits, and upgrades.

Does Amex travel portal automation work headless?

No, Amex detects headless browsers, so the script must run headed. On macOS a Chrome window briefly appears; for background operation use the provided Docker image with xvfb, mounting ~/.amex-travel-profiles for persistent sessions.

Why does the Amex travel login gate fail after submitting a search?

Amex routes searches through a separate captcha-protected travel login gate that sometimes rejects automated logins. When the script prints AMEX_HUMAN_LOGIN_NEEDED, run scripts/refresh_login.py locally to log in manually once, after which the warm session works in Docker.

What are the limitations of scraping the Amex travel portal?

Each search takes about 45 seconds, requires a Platinum card for IAP fares and FHR benefits, and depends on DOM data-testid selectors that can break when Amex changes its UI. The skill finds flights and hotels but does not complete bookings.