MCP서버를 만들기전 시나리오를 수립해보자.

 

k6 Tool 사용 시나리오

  • 특정 API endpoint에 대해 지정된 부하(초당 요청 수, 가상 유저 수, 지속 시간)로 테스트 실행 및 결과 요약
  • 동일 endpoint에 대한 과거 테스트 결과 비교(성능 트렌드, 최대 TPS, 에러율 등)
  • 다양한 HTTP 메소드(GET, POST, PUT, DELETE)별 부하 테스트.
  • 인증이 필요한 API에 대해 토큰 발급 및 헤더 자동 세팅
  • Swagger/OpenAPI 문서를 파싱하여 자동으로 k6 스크립트 생성.
  • 여러 API endpoint를 조합한 시나리오 테스트(사용자 플로우 시뮬레이션).
  • 테스트 실패(에러율 급증, 응답 지연) 시 자동 알림/이슈 생성.

cli나 스크립트 사용

 

 

 

argocd Tool 사용 시나리오

 

  • 배포 실패시 자동으로 로그도 가져와주기. ( 해결 방안 추천도 해주면 좋을것 같음)
  • 배포 자동화
  • 현재 out-of-sync인 app 요청
  • 배포 히스토리 물어보기
  • 전체 pod진단
  • project생성
  • project리스트 검색
  • project기반 검색
  • app생성
  • app검색
/api/v1/applications (GET) 전체 애플리케이션 목록 및 상태 조회
/api/v1/applications/{appName} (GET) 특정 앱의 상세 정보 및 sync 상태 확인
/api/v1/applications?syncStatus=OutOfSync Out-of-sync 상태인 앱 목록 필터링
/api/v1/applications/{appName}/sync (POST) 특정 앱 강제 동기화 트리거
/api/v1/applications/{appName}/operation 앱에 대한 롤백, 중단 등 연산 실행
/api/v1/projects (GET) 프로젝트 단위로 앱 관리
/api/v1/session (POST) 인증 토큰 발급
 

 

 

챗봇에서 가능한 시나리오:

  • "my-app 어플리케이션 지금 sync상태 어때?" → /api/v1/applications/my-app 호출 후 status.sync.status 반환.
  • "지금 out-of-sync인 서비스들 쭉 알려줘" → /api/v1/applications?syncStatus=OutOfSync로 조회.
  • "my-app을 강제로 동기화해줘" → /api/v1/applications/my-app/sync POST.
  • "오늘 배포된 앱 목록 알려줘" → /api/v1/applications?createdAfter=YYYY-MM-DD 등(필터링 지원 시).
  • "특정 앱의 리소스 트리 보여줘" → /api/v1/applications/{appName}/resource-tree.
  • 특정 프로젝트 내 앱의 동기화 상태 집계 및 리포트.

+ Recent posts