MCP 챗봇 PRD

배경 (Background)

주식 앱의 종목 조회·관심종목·목표가 알림·주문 기능이 각각 독립적인 REST API와 화면으로 분산돼 있어, 사용자가 흐름을 이어가려면 여러 탭을 오가야 한다. 시장 뉴스·공시는 앱 내에서 조회할 수 없어 별도 검색이 필요하다. 이를 해결하기 위해 모든 기능을 Spring AI MCP Tool로 통합하고, 자연어 채팅 한 곳에서 처리할 수 있는 챗봇 인터페이스를 제공한다.

목표

Spring AI를 이용해 기존 주식 앱의 모든 기능(종목 조회·검색, 관심종목, 목표가 알림, 주식 주문·정정·취소, 보유 종목·거래 내역)을 MCP Tool로 노출하고, Claude를 백엔드 LLM으로 사용하는 자연어 챗봇 인터페이스를 제공한다. 웹 검색(Tavily)을 병행해 복잡한 시장 컨텍스트(뉴스·공시 등)에도 대응한다.

사용자 문제와 해결 방안

사용자 문제해결 방안
기능이 탭·화면에 분산돼 있어 흐름 파악이 어렵다자연어 채팅으로 모든 기능을 단일 인터페이스에서 처리
종목 정보 + 뉴스 + 주문을 별도 앱에서 해야 한다챗봇 한 곳에서 Tool 호출 + 웹 서치로 맥락 종합
주문 사이클(검색→가격확인→주문→이력)이 여러 화면에 걸쳐 있다대화 흐름으로 주문 사이클 완결
시장 뉴스·공시를 별도 검색해야 한다웹 서치 Tool 자동 호출로 최신 정보 통합

요구사항

필수(Must Have)

ID요구사항우선순위
R-01Spring AI MCP Server를 백엔드에 추가한다 (SSE 트랜스포트).Must Have
R-02종목 조회·검색·시세 Tool을 MCP로 노출한다.Must Have
R-03관심종목 추가·삭제·조회 Tool을 MCP로 노출한다.Must Have
R-04목표가 알림 생성·삭제·조회 Tool을 MCP로 노출한다.Must Have
R-05주식 주문(매수·매도)·정정·취소·계좌 조회 Tool을 MCP로 노출한다 (주문 구현 완료 이후 활성화).Must Have
R-06Tavily 웹 서치 Tool을 LLM이 자동 호출해 최신 뉴스·정보를 보강한다.Must Have
R-07Chat REST API (POST /api/chat/message)를 제공한다.Must Have
R-08FE 챗봇 UI — 메시지 입력·스트리밍 응답 표시.Must Have

선택(Nice to Have)

ID요구사항우선순위
N-01Claude Desktop 등 외부 MCP 클라이언트에서도 연결 가능.Nice to Have
N-02대화 히스토리를 세션 메모리(인메모리)로 유지해 문맥 연속성 제공.Nice to Have
N-03뉴스 시그널·종목 추천 Tool 연동.Nice to Have

사용자 시나리오

시나리오 1 — 종목 뉴스 조회 후 관심종목 추가

사용자가 채팅창에 “삼성전자 최신 뉴스 알려줘”를 입력한다. 챗봇이 Brave MCP를 통해 최신 기사를 검색한 뒤 요약을 스트리밍으로 반환한다. 이어서 “관심종목에 추가해줘”를 입력하면 WatchlistMcpTools가 호출돼 즉시 추가된다.

시나리오 2 — 자연어 주문 사이클

사용자가 “삼성전자 현재가 확인하고 10주 시장가 매수해줘”를 입력한다. 챗봇이 StockMcpTools.getStockPrices로 현재가를 조회하고, 확인 메시지를 스트리밍한 뒤 OrderMcpTools를 통해 매수 주문을 실행한다.

경쟁사·동일 제품군 비교

항목본 도구토스앱 AI증권사 HTS
자연어 주문일부
기존 기능 Tool 통합
웹 서치 맥락 통합
외부 MCP 클라이언트 연동✅(SSE)

제약 및 전제

  • 주문·계좌 구현 완료 전까지 주문 Tool은 비활성 상태로 존재.
  • LLM: Anthropic Claude (기존 프로젝트 사용 중).
  • 웹 서치: Tavily API Key 필요.
  • 인증: 현재 단일 사용자 앱으로 인증 없음.

수락 기준

기준측정 방법
Tool 호출 성공챗봇에서 “삼성전자 주가” 입력 시 종목 조회 Tool 호출 후 응답
웹 서치 통합”삼성전자 최신 뉴스” 입력 시 Tavily Tool 호출 후 최신 기사 요약 반환
주문 흐름”삼성전자 10주 시장가 매수” 입력 시 주문 Tool 호출 확인
FE UI챗 입력·스트리밍 응답·대화 기록 표시 정상 동작

범위 외

  • 멀티 사용자 인증·권한 관리
  • 대화 히스토리 DB 영속화
  • 실시간 호가·체결 스트리밍 (SSE는 챗봇 응답 용도로만 사용)
  • 모바일 앱 챗봇 UI

관련 문서