Skip to main content
Glama
InSIkHwang

Naver Flight MCP

by InSIkHwang

naver-flight-mcp

네이버 항공권 검색 API를 사용하여 최저가 항공권 정보를 조회하는 Model Context Protocol (MCP) 서버입니다.

✨ 주요 기능

  • 직항 항공권 최저가 검색 (성인 1명, 이코노미 클래스)

  • 왕복 항공편 정보 조회 (출발/도착 시간, 소요시간, 항공편명)

  • 최저가 순 상위 10개 항공권 정보 제공

  • 실시간 SSE 스트림 처리로 완전한 데이터 수집

  • 상세한 로그로 검색 과정 추적

🚀 설치 및 설정

1. 프로젝트 클론 및 설치

# 프로젝트 클론
git clone https://github.com/your-username/naver-flight-mcp.git
cd naver-flight-mcp

# 의존성 설치
npm install

# TypeScript 빌드
npm run build

2. Cursor MCP 설정

Windows: C:\Users\{사용자명}\.cursor\mcp.json MacOS: ~/.cursor/mcp.json

설정 파일 예시

{
  "mcpServers": {
    "naver-flight": {
      "command": "node",
      "args": ["C:/Users/{사용자명}/naver-flight-mcp/dist/index.js"],
      "env": {}
    }
  }
}

실제 경로 예시 (Windows)

{
  "mcpServers": {
    "naver-flight": {
      "command": "node",
      "args": ["C:/Users/hwang/naver-flight-mcp/dist/index.js"],
      "env": {}
    }
  }
}

3. Cursor 재시작

MCP 설정을 추가한 후 Cursor를 재시작하면 네이버 항공권 검색 도구를 사용할 수 있습니다.

📖 사용 방법

Cursor에서 사용

MCP 설정 후 Cursor에서 다음과 같이 사용할 수 있습니다:

네이버 항공권 검색: 부산(PUS) → 나리타(NRT), 2025-12-15 ~ 2025-12-19

검색 파라미터

{
  departure: "PUS",           // 출발지 공항 코드
  arrival: "NRT",             // 도착지 공항 코드
  departureDate: "2025-12-15", // 출발일 (YYYY-MM-DD)
  returnDate: "2025-12-19"    // 복귀일 (YYYY-MM-DD)
}

출력 예시

항공권 검색 결과 (PUS → NRT):

순위: 1
출발일: 20251215
복귀일: 20251219
가는편: 7C1153
오는편: 7C1154
총요금: 278,700원
가는편 출발: 11:05
가는편 도착: 13:10
소요시간: 125분
오는편 출발: 14:05
오는편 도착: 16:45
소요시간: 160분
---

🧪 테스트 결과

2025년 12월 부산(PUS) - 나리타(NRT) 검색 결과

날짜

최저가

항공편

상태

2025-12-01 ~ 2025-12-05

304,000원

7C1153/7C1154

✅ 성공

2025-12-08 ~ 2025-12-12

277,000원

7C1153/7C1154

✅ 성공

2025-12-15 ~ 2025-12-19

278,700원

7C1153/7C1154

✅ 성공

2025-12-22 ~ 2025-12-26

416,400원

7C1153/7C1154

✅ 성공

인천(ICN) - 나리타(NRT) 검색 결과

날짜

최저가

항공편

상태

2025-12-15 ~ 2025-12-19

312,600원

BX0164/BX0163

✅ 성공

🔧 기술적 특징

SSE 스트림 처리 개선

  • 실시간 데이터 수집: 네이버 API의 Server-Sent Events를 완전히 처리

  • 점진적 데이터 증가: 0개 → 16개 → 18개 → 20개 → 76개 → 77개

  • 최종 유효 데이터 선택: 가장 많은 데이터가 포함된 응답 사용

  • 상세한 로그: 각 단계별 데이터 수집 과정 추적

로그 예시

SSE 응답 처리 시작...
SSE 데이터 수신: 항공편 0개, 요금 0개
SSE 데이터 수신: 항공편 16개, 요금 32개
유효한 데이터 발견: 항공편 16개, 요금 32개
SSE 데이터 수신: 항공편 20개, 요금 100개
유효한 데이터 발견: 항공편 20개, 요금 100개
최종 데이터: 항공편 20개, 요금 100개
총 7009개의 요금 정보 발견
처리 완료 - 10개의 유효한 항공편

📁 프로젝트 구조

naver-flight-mcp/
├── src/
│   ├── tools/
│   │   └── NaverFlightSearch.ts  # 네이버 항공권 검색 도구
│   └── index.ts                   # MCP 서버 진입점
├── dist/                          # 빌드된 파일
├── NAVER_FLIGHT_API_ANALYSIS.md  # API 분석 문서
├── NAVER_FLIGHT_MCP_TEST_RESULTS.md  # 테스트 결과
├── package.json
├── tsconfig.json
└── README.md

🔌 API 정보

  • 엔드포인트: https://flight-api.naver.com/flight/international/searchFlights

  • 방식: REST API (Server-Sent Events)

  • 검색 조건: 성인 1명, 직항만, 이코노미 클래스 (고정)

  • 응답 시간: 일반적으로 4-5초 소요

🛠️ 개발자 정보

로컬 개발

# 개발 서버 실행
npm run dev

# 빌드
npm run build

# 로그 확인
node dist/index.js

의존성

  • TypeScript: 타입 안전성

  • node-fetch: HTTP 요청 처리

  • zod: 스키마 검증

  • @modelcontextprotocol/sdk: MCP 서버 구현

📄 라이선스

MIT

-
security - not tested
F
license - not found
-
quality - not tested

Resources

Looking for Admin?

Admins can modify the Dockerfile, update the server description, and track usage metrics. If you are the server author, to access the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/InSIkHwang/Naver-Flight-MCP'

If you have feedback or need assistance with the MCP directory API, please join our Discord server