AI 비서에게 펀드 차트를 그려 달라고 하면 그럴듯하지만 틀린 그림이 나올 때가 있다. 숫자를 지어내는 문제와 존재하지 않는 API 옵션을 쓰는 문제는 서로 다른 실패라 고치는 법도 다르다. 하이차트는 모닝스타 데이터 서버와 설정 검증 서버를 MCP로 묶어 이 둘을 각각 막는 구성을 소개했다.
AI 비서에게 펀드의 업종 비중을 차트로 그려 달라고 하면 보통 그럴듯한 결과가 나온다. 깔끔한 하이차트 설정, 말이 되는 업종 이름, 더하면 얼추 100%가 되는 비율. 그대로 프로젝트에 붙여넣고 나서야 그게 그럴듯해 보였을 뿐이라는 걸 알게 된다. 숫자는 애초에 진짜가 아니었고, 옵션 절반은 하이차트 API에 존재하지도 않는다.
두 가지 환각
이 둘은 서로 다른 실패이고 고치는 법도 다르다. 하나는 데이터를 지어내는 쪽이다. 모델은 모닝스타 데이터베이스에 접근할 수 없으니, 펀드의 보수율 같은 숫자는 학습 데이터에서 흔히 보던 값으로 채워진다. 다른 하나는 API를 지어내는 쪽이다. 축 옵션이나 시리즈 포맷처럼 그럴듯하게 들리는 키를 쓰지만 실제 하이차트에는 없는 이름이다. 이쪽이 더 성가신데, 인식하지 못한 키를 설정이 조용히 무시한 채로 그냥 실행되기 때문이다. 검색 도구만 있고 검증기가 없는 모델은 첫 번째만 고치고, 검증기만 있고 데이터 접근이 없는 모델은 두 번째만 고친다.
다섯 개의 MCP 서버, 각각 다른 일
모닝스타 MCP는 라이선스가 있는 계정으로만 붙는다. 가장 중요한 도구는 morningstar-id-lookup-tool로, 모닝스타는 이를 서버의 엔티티 인식 계층이라고 설명한다. 티커와 종목명을 모닝스타 투자 ID로, 데이터 포인트 이름을 데이터 포인트 ID로 먼저 바꾸는 역할이다. 나머지 도구는 전부 이 위에서 돌아간다 — 모델은 어떤 펀드를 말하는지 짐작하지 않고, 이름을 식별자로 바꾼 다음에야 그 식별자로 데이터를 가져온다. 데이터 도구 하나만 해도 2026년 7월 기준 1,300개 넘는 데이터 포인트를 다룬다.
하이차트 쪽은 공개 서버 셋으로 나뉜다. Dev Assist의 validate_config가 모델이 뽑은 설정을 실제 하이차트 스키마에 맞춰 검사하고, Render는 render_chart 하나로 결과를 PNG로 찍어 눈으로 확인하게 해 준다. 토큰만 있으면 로그인 없이 쓸 수 있는 Chartchooser까지가 그 셋이다. 모닝스타 API 쪽에는 DWS Developer Assistant가 따로 있어, 그 API를 상대로 코드를 짤 때 스웨거 스펙과 데이터 포인트 이름을 찾아주는데, 이건 API 계약을 맞춰줄 뿐 숫자 자체는 여전히 DWS 자격 증명이 있어야 가져올 수 있다. 이를 다 합치면 다섯이다. 연결은 claude mcp add 명령 한 줄씩이고, claude mcp list로 각 서버가 연결됐는지, 인증이 더 필요한지, 아예 응답이 없는지를 확인한다.