메뉴
HN
Hacker News 57일 전

AI 기반 마일리지 항공권 및 여행 최적화 툴킷

IMP
7/10
핵심 요약

해커뉴스에 AI 코딩 에이전트(OpenCode, Claude Code)를 활용해 항공권 마일리지, 포인트, 현금 결제 가격을 비교하고 최적의 여행 경로를 탐색하는 '여행 해킹 툴킷'이 소개되었습니다. 이 오픈소스는 5개의 무료 MCP 서버와 다양한 여행 API 스킬을 제공하여, 사용자가 자연어로 복잡한 항공권 예약 및 최적 가격을 찾을 수 있도록 돕습니다. 개발자와 실무자들은 기존의 복잡한 마일리지 검색 과정을 자동화하고 합리적인 소비 결정을 내리는 데 이 프로젝트를 유용하게 활용할 수 있습니다.

번역된 본문

AI 기반 여행 해킹 툴킷 소개

Travel Hacking Toolkit은 포인트, 마일리지, 보너스 항공권(Award flights)을 활용한 AI 기반 여행 해킹 도구입니다. OpenCode와 Claude Code에 즉시 적용 가능한 스킬(Skills)과 MCP 서버를 제공합니다. AI에게 "도쿄행 60,000마일리지 비즈니스석 항공권을 찾아줘"라고 요청해 보세요. AI가 25개 이상의 항공사 마일리지 프로그램에서 좌석을 검색하고, 현금 결제 가격과 비교하며, 보유한 포인트 잔액을 확인한 뒤 최적의 선택지를 추천해 줍니다.

빠른 시작(Quick Start)

git clone https://github.com/borski/travel-hacking-toolkit.git
cd travel-hacking-toolkit
./scripts/setup.sh

설치 스크립트는 전체 과정을 안내합니다. 사용할 도구(OpenCode, Claude Code 또는 둘 다)를 선택하고, API 키 설정 파일을 생성하며, 종속성을 설치하고, 필요에 따라 스킬을 시스템 전체에 설치합니다.

5개의 무료 MCP 서버(Skiplagged, Kiwi, Trivago, Ferryhopper, Airbnb)는 API 키 없이도 즉시 작동합니다. 완전한 기능을 경험하려면 최소한 다음 두 가지를 추가하세요.

  • SEATS_AERO_API_KEY: 보너스 항공권 검색을 위한 핵심 기능. 무료 플랜 없음 (Pro 약 $8/월)
  • SERPAPI_API_KEY: "포인트 vs 현금" 결정을 돕는 현금 가격 비교용. 무료 플랜 있음 (월 100회 검색)

그런 다음 도구를 실행합니다.

# OpenCode 실행
opencode

# Claude Code 실행
claude --strict-mcp-config --mcp-config .mcp.json

--strict-mcp-config 플래그는 Claude Code에게 설정 파일에서 직접 MCP 서버를 로드하도록 지시합니다. 이는 자동 감지 방식보다 안정적으로 작동합니다(이미 알려진 이슈).

포함된 항목

1. MCP 서버 (실시간 도구)

  • Skiplagged: 히든 시티(Hidden city) 요금을 포함한 항공권 검색 (API 키 없음 / 무료)
  • Kiwi.com: 가상 환승(Virtual interlining)을 통한 항공사 간 창의적 경로 연결 검색 (API 키 없음 / 무료)
  • Trivago: 여러 예약 사이트의 호텔 메타 검색 (API 키 없음 / 무료)
  • Ferryhopper: 33개국, 190개 이상의 운영사에 걸친 페리 노선 검색 (API 키 없음 / 무료)
  • Airbnb: 에어비앤비 숙소, 상세 정보, 가격 검색. 지오코딩 수정 및 숙소 유형 필터가 적용됨 (API 키 없음 / 무료)
  • LiteAPI: 실시간 요금 및 예약이 포함된 호텔 검색 (LiteAPI 키 필요)

2. 스킬 (AI를 위한 API 지식)

  • duffel: Duffel API를 통한 항공사별 실시간 항공권 검색 (Duffel 키 필요)
  • seats-aero: 25개 이상의 마일리지 프로그램에 걸친 보너스 항공권 좌석 검색 (Seats.aero Pro/Partner 키 필요)
  • awardwallet: 포인트 프로그램 잔액, 우수 회원 자격, 내역 확인 (AwardWallet Business 키 필요)
  • serpapi: 구글 플라이트(Google Flights) 현금 가격, 호텔, 목적지 탐색 (SerpAPI 키 필요)
  • rapidapi: 구글 플라이트 Live 및 Booking.com을 통한 2차 가격 비교 (RapidAPI 키 필요)
  • atlas-obscura: 목적지 근처의 숨겨진 명소 탐색 (API 키 없음 / 무료)
  • scandinavia-transit: 노르웨이/스웨덴/덴마크의 기차, 버스, 페리 정보 (Entur + Trafiklab 키 필요)
  • wheretocredit: 항공사 및 예약 클래스에 따라 50개 이상의 마일리지 프로그램에 대한 적립률 확인 (API 키 없음 / 무료)

작동 방식

  • 스킬(Skills): 스킬은 AI에게 여행 API 호출 방법을 알려주는 마크다운 파일입니다. 엔드포인트 문서, curl 예제, 유용한 jq 필터 및 워크플로우 가이드가 포함되어 있습니다. OpenCode와 Claude Code 모두 스킬을 기본적으로 지원합니다. skills/ 디렉토리가 원본 소스입니다. 설치 스크립트는 이를 도구의 글로벌 스킬 디렉토리(~/.config/opencode/skills/ 또는 ~/.claude/skills/)로 복사하거나, 해당 디렉토리에서 작업할 때 로드되도록 프로젝트 수준의 심볼릭 링크를 생성합니다.
  • MCP 서버: MCP(Model Context Protocol) 서버는 AI가 직접 호출할 수 있는 실시간 도구를 제공합니다. 설정은 opencode.json(OpenCode용) 및 .mcp.json(Claude Code용) 파일에 저장됩니다. Skiplagged, Kiwi.com, Trivago, Ferryhopper, Airbnb는 설정이 전혀 필요하지 않습니다. LiteAPI는 원격 서버이지만 설정에 API 키가 필요합니다.

여행 해킹 워크플로우

핵심 질문: "포인트를 소진해야 할까요, 현금으로 지불해야 할까요?"

  1. 보너스 좌석 검색: Seats.aero를 통해 25개 이상의 프로그램 탐색
  2. 현금 가격 검색: SerpAPI(구글 플라이트) 또는 Skiplagged 활용
  3. 포털 가치 추정: 이제 포털 환율이 동적으로 변합니다. 체이스의 경우 특정 예약에 대해 1.5~2.0cpp를 제공하지만 고정 요금이 아닙니다. Amex/Capital One은 약 1.0cpp 수준입니다. 정확한 예약을 위해 실제 포털을 확인하세요.
  4. 비교: 더 낮은 비용(가치)을 선택합니다.
  5. 잔액 확인: AwardWallet을 통해 충분한 포인트가 있는지 확인합니다.
  6. 예약: Seats.aero나 Duffel에서 제공하는 예약 링크를 사용합니다.

예시 프롬프트

  • "8월에 SFO(샌프란시스코)에서 도쿄로 가는 가장 저렴한 비즈니스석 보너스 항공권을 찾아줘"
  • "다음 주 제주도행 항공권에 대해 포인트 사용과 현금 결제 중 뭐가 더 이득인지 비교해 줘" (원문: Compare points vs cash for...)
원문 보기
원문 보기 (영어)
Travel Hacking Toolkit AI-powered travel hacking with points, miles, and award flights. Drop-in skills and MCP servers for OpenCode and Claude Code . Ask your AI to find you a 60,000-mile business class flight to Tokyo. It'll search award availability across 25+ programs, compare against cash prices, check your loyalty balances, and tell you the best play. Quick Start git clone https://github.com/borski/travel-hacking-toolkit.git cd travel-hacking-toolkit ./scripts/setup.sh The setup script walks you through everything: picks your tool (OpenCode, Claude Code, or both), creates your API key config files, installs dependencies, and optionally installs skills system-wide. The 5 free MCP servers (Skiplagged, Kiwi, Trivago, Ferryhopper, Airbnb) work immediately with zero API keys. For the full experience, add at minimum: Key Why Free Tier SEATS_AERO_API_KEY Award flight search. The main event. No (Pro ~$8/mo) SERPAPI_API_KEY Cash price comparison for "points or cash?" decisions Yes (100 searches/mo) Then launch your tool: # OpenCode opencode # Claude Code claude --strict-mcp-config --mcp-config .mcp.json The --strict-mcp-config flag tells Claude Code to load MCP servers from the config file directly. This is more reliable than auto-discovery ( known issue ). What's Included MCP Servers (real-time tools) Server What It Does API Key Skiplagged Flight search with hidden city fares None (free) Kiwi.com Flights with virtual interlining (creative cross-airline routing) None (free) Trivago Hotel metasearch across booking sites None (free) Ferryhopper Ferry routes across 33 countries, 190+ operators None (free) Airbnb Search Airbnb listings, property details, pricing. Patched with geocoding fix and property type filter. None (free) LiteAPI Hotel search with live rates and booking LiteAPI Skills (API knowledge for your AI) Skill What It Does API Key duffel Real-time flight search across airlines via Duffel API Duffel seats-aero Award flight availability across 25+ mileage programs Seats.aero Pro/Partner awardwallet Loyalty program balances, elite status, history AwardWallet Business serpapi Google Flights cash prices, hotels, destination discovery SerpAPI rapidapi Secondary prices via Google Flights Live + Booking.com RapidAPI atlas-obscura Hidden gems near any destination None (free) scandinavia-transit Trains, buses, ferries in Norway/Sweden/Denmark Entur + Trafiklab wheretocredit Mileage earning rates by airline and booking class across 50+ FF programs None (free) How It Works Skills Skills are markdown files that teach your AI how to call travel APIs. They contain endpoint documentation, curl examples, useful jq filters, and workflow guidance. Both OpenCode and Claude Code support skills natively. The skills/ directory is the canonical source. The setup script either: Copies them to your tool's global skills directory ( ~/.config/opencode/skills/ or ~/.claude/skills/ ) Or creates project-level symlinks so they load when you work from this directory MCP Servers MCP (Model Context Protocol) servers give your AI real-time tools it can call directly. The configs are in: opencode.json for OpenCode .mcp.json for Claude Code Skiplagged, Kiwi.com, Trivago, Ferryhopper, and Airbnb need no setup at all. LiteAPI is also a remote server but needs an API key configured in your settings. The Travel Hacking Workflow The core question: "Should I burn points or pay cash?" Search award availability — Seats.aero across 25+ programs Search cash prices — SerpAPI (Google Flights) or Skiplagged Estimate portal value — Portal rates are dynamic now. Chase "Points Boost" (June 2025) offers 1.5 to 2.0cpp on select bookings, not a flat rate. Amex/Capital One ~1.0cpp. Check the actual portal for your specific booking. Compare — Lower number wins Check balances — AwardWallet confirms you have enough Book it — Use booking links from Seats.aero or Duffel Example Prompts "Find me the cheapest business class award from SFO to Tokyo in August" "Compare points vs cash for a round trip JFK to London next March" "What are my United miles and Chase UR balances?" "Find hidden gems near Lisbon" "How do I get from Oslo to Bergen by train?" Project Structure travel-hacking-toolkit/ ├── AGENTS.md -> CLAUDE.md # OpenCode project instructions (symlink) ├── CLAUDE.md # Project instructions and workflow guidance ├── opencode.json # OpenCode MCP server config ├── .mcp.json # Claude Code MCP server config ├── .env.example # API key template (OpenCode) ├── .claude/ │ ├── settings.local.json.example # API key template (Claude Code) │ └── skills -> ../skills # Symlink to skills ├── .opencode/ │ └── skills -> ../skills # Symlink to skills ├── data/ │ ├── alliances.json # Airline alliance membership + booking relationships │ ├── hotel-chains.json # Hotel chains, sub-brands, loyalty programs, reverse lookup │ ├── partner-awards.json # Which programs book which airlines (alliance + bilateral) │ ├── points-valuations.json # Points/miles valuations from 4 sources (floor/ceiling) │ ├── sweet-spots.json # High-value award redemptions + booking windows │ └── transfer-partners.json # Credit card transfer partners + ratios ├── skills/ │ ├── duffel/SKILL.md # Real-time flight search │ ├── seats-aero/SKILL.md # Award flight search │ ├── awardwallet/SKILL.md # Loyalty balances │ ├── serpapi/SKILL.md # Cash prices + hotels │ ├── rapidapi/SKILL.md # Secondary price source │ ├── atlas-obscura/ # Hidden gems (+ Node.js scraper) │ │ ├── SKILL.md │ │ ├── ao.mjs │ │ └── package.json │ └── scandinavia-transit/ # Nordic trains/buses/ferries │ └── SKILL.md ├── scripts/ │ └── setup.sh # Interactive installer └── LICENSE # MIT Credits Built on these excellent projects: Seats.aero — Award flight availability data AwardWallet — Loyalty program tracking Duffel — Real-time flight search and booking SerpAPI — Google search result APIs RapidAPI — API marketplace atlas-obscura-api by @bartholomej — Atlas Obscura scraper Skiplagged MCP — Flight search with hidden city fares Kiwi.com MCP — Flight search with virtual interlining Trivago MCP — Hotel metasearch Ferryhopper MCP by Ferryhopper — Ferry routes across 33 countries mcp-server-airbnb by OpenBnB — Airbnb search and listing details LiteAPI MCP by LiteAPI — Hotel booking Entur — Norwegian transit API Trafiklab / ResRobot — Swedish transit API Rejseplanen — Danish transit API License MIT