📌 개요
오늘날의 AI는 단순히 정보를 알려주는 수준을 넘어, 실제로 행동하고 예약까지 진행할 수 있는 단계에 이르렀습니다.
GPT와 MCP 앱을 활용하면 사용자의 자연어 입력을 기반으로 항공편을 검색하고, 좌석을 선택하고, 예약까지 연동할 수 있는 스마트 항공 예약 시스템을 구축할 수 있습니다.
🚀 이 글은 실제 항공 API 연동, 앱 배포, 인증 처리, GPT 연결까지
실무적으로 필요한 모든 내용을 안내합니다.
📌 목차
- 시스템 구성 개요
- 항공사 API 선택 및 연동
- 코드 배포: 어디에, 어떻게?
- 인증 처리: API 보호 및 사용자 인증
- GPT와 연결하는 방법 (MCP 연동)
- 사용 흐름 예시
- 확장 아이디어
- 결론
1. 시스템 구성 개요
GPT 기반 항공 예약 시스템은 다음과 같이 구성됩니다:
사용자 → GPT → MCP 앱 → 항공 API → 예약 시스템
🧩 구성요소
- GPT (OpenAI / Claude 등): 사용자 질의 분석, 자연어 생성
- MCP 앱: API 호출용 중간 서버
- 항공사 API: 실시간 항공편 데이터 제공
- 인증 모듈: API 접근 제어
- 배포 서버: MCP 앱 호스팅
2. 항공사 API 선택 및 연동
✈️ 주요 항공사 / 항공정보 API
제공사 | 기능 | URL |
---|---|---|
Amadeus API | 항공편 검색, 좌석, 예약, 운임 | https://developers.amadeus.com |
Skyscanner API | 가격 비교, 항공편 검색 | https://rapidapi.com/skyscanner/api/skyscanner-flight-search |
Aviationstack | 실시간 항공편 상태 | https://aviationstack.com |
FlightAware | 항공편 추적, 위치 정보 | https://flightaware.com/commercial/firehose/firehose_documentation.rvt |
🔧 Amadeus API 예시
bashGET /v2/shopping/flight-offers?origin=ICN&destination=NRT&departureDate=2025-04-20
Authorization: Bearer {token}
✅ 기능 제공
- 항공편 목록
- 가격
- 운임 클래스
- 좌석 상태
- 예약 링크 생성 가능
🔐 OAuth 인증 필요
Amadeus는 Client Credentials 방식을 지원하며, Access Token을 받아야 사용 가능합니다.
3. 코드 배포 도구
MCP 앱 서버를 배포할 수 있는 플랫폼은 다양합니다.
🚀 추천 배포 플랫폼
플랫폼 | 장점 |
---|---|
Render | 무료 티어, GitHub 연동 간편 |
Vercel / Netlify | 정적 파일 또는 API 연동 가능 |
Railway | PostgreSQL, Redis 등 추가 서비스 동시 제공 |
AWS Lambda + API Gateway | 무서버(Serverless) 구조로 확장성 우수 |
📦 예: Render로 Flask 앱 배포
bash# 1. GitHub에 코드 업로드
# 2. Render에서 "Web Service" 선택
# 3. Python 환경, 포트 5000, requirements.txt 지정
4. 인증 처리 가이드
🔐 외부 API 인증
- Amadeus, Skyscanner 등은 대부분 OAuth2 인증 사용
- API 호출 전
access_token
발급 필요
pythonimport requests
def get_token(client_id, client_secret):
url = "https://test.api.amadeus.com/v1/security/oauth2/token"
payload = {
'grant_type': 'client_credentials',
'client_id': client_id,
'client_secret': client_secret
}
headers = {'Content-Type': 'application/x-www-form-urlencoded'}
response = requests.post(url, data=payload, headers=headers)
return response.json()['access_token']
🔒 자체 API 보호
- API Key 방식 추천
- 클라이언트마다 키 발급 → 요청 헤더에 포함
5. GPT와 MCP 연동
📁 manifest.json
json{
"name": "FlightFinder",
"description": "전 세계 항공편을 검색하고 예약을 도와줍니다.",
"auth": {
"type": "none"
},
"api": {
"type": "openapi",
"url": "https://yourdomain.com/openapi.yaml"
}
}
🧩 GPT 호출 흐름
사용자 입력 → GPT가 intent 분석 → MCP 앱 /search
호출 → JSON 응답 → 요약 & 제시
6. 사용 흐름 예시
🎤 사용자 입력
“다음 주 토요일에 서울에서 오사카 가는 가장 저렴한 비행편 찾아줘”
🧠 GPT
- 날짜 파악: 예) 2025-04-19
- 위치 코드 매핑: ICN → KIX
- MCP 앱
/flights/search?origin=ICN&destination=KIX&date=2025-04-19
호출
💡 MCP 앱 응답
json{
"flights": [
{"id": "OZ112", "airline": "Asiana", "departure": "09:00", "price": 220},
{"id": "TW201", "airline": "Tway", "departure": "13:30", "price": 180}
]
}
🗣️ GPT 응답
“Tway 항공편이 13:30에 출발하며 180달러로 가장 저렴합니다. 예약하시겠어요?”
7. 확장 아이디어
✅ 예약 확정 기능 (POST)
→ 사용자 이름, 이메일 입력 → 예약번호 발급
✅ 카카오/네이버 인증 연동
→ 사용자가 인증하면 사용자 ID 기반 기록 저장
✅ 메신저/챗봇 연결
→ 카카오톡, Slack, Line 챗봇과 연동해 알림 제공
✅ 예약 리마인더 이메일 자동 발송
→ SMTP 연동 또는 SendGrid API 활용
8. 결론
GPT + MCP + 항공사 API를 결합하면, 사람처럼 대화하고 일도 처리하는 여행 비서 AI를 구현할 수 있습니다.
이제 AI는 단순 정보 제공을 넘어 예약을 수행하고, 개인화된 추천을 하고, 일정까지 챙겨주는 수준으로 진화 중입니다.
🔧 다음 단계로 할 수 있는 것
- 항공사 API Key 신청
- MCP 앱 서버 개발 및 배포
- GPT에 manifest 연동 테스트
- 예약 UX 확장 (이메일, 챗봇 등)
📞 도움이 필요하다면 MCP 앱 서버 샘플 코드, 인증 템플릿, API 설계서도 제공해 드릴게요!
✈️ GPT와 함께하는 스마트한 여행 시스템, 지금 시작해보세요!
비행기 티켓 예약이 이렇게 쉬울 줄 몰랐죠? 😉