Tag: mcp
All the articles with the tag "mcp".
-
Eval 공부 #3 — 에이전트 Eval, 단일 스텝의 한계와 멀티스텝 채점
RAG Eval 이후 에이전트 Eval 로 확장. 에이전트는 판정할 축이 6가지 (도구 선택 · 인자 추출 · 멀티스텝 궤적 · 종료 판단 · 안전장치 · 최종 답변 품질) 라 단위 테스트 → 통합 테스트 원리로 축을 분리해서 봐야 원인 특정이 빠름. 오늘은 도구 선택 · 멀티스텝 · 함정 회귀 3개만 진행. MCP 서버 도구 메타 (이름 · 설명 · 스키마) 를 넣고 (질문, 기대 도구, 기대 인자, 레벨) 테스트셋으로 측정 → 도구 선택 정확도 11/13 = 84.6%. 실패 케이스 2건이 재미있었음 — (1) 단일 스텝 eval 이 실제로는 멀티스텝 궤적으로 정답인 케이스를 오탐 → 단일 채점의 한계, (2) 도구 description 이 모호해서 "전기 요금" → consumption 오선택, "돈 얼마 나와?" 는 정답 — description 개선 대신 시스템 프롬프트 땜빵은 과적합 위험. 이어서 멀티스텝 eval 로 전환 (필요 도구 다 불렀나 · 순서 · 앞 결과 활용 · 종료 판단) → 4/4 = 100% 로 단일에서 실패로 처리된 케이스가 통과.
-
MCP 공부 #3 — Resources / Prompts 의 정체 + LangGraph 와 통합 (`MultiServerMCPClient` · `ainvoke`)
MCP 의 세 구성요소 중 #1 / #2 에서 다룬 Tools 외에 Resources(LLM 이 읽을 데이터, 백그라운드 컨텍스트, 읽기 전용) 와 Prompts(미리 정의된 템플릿) 까지. Inspector + Claude Desktop 으로 새 서버 확인 → langchain-mcp-adapters 로 MCP 서버를 LangGraph 에 통합. MCP 통신이 비동기라 `ainvoke` 필요한 이유, MultiServerMCPClient 가 서버 그대로 불러오는 비결(=MCP 표준 준수), Resources 를 시스템 프롬프트로 주입했을 때의 도메인 응답 품질 차이까지.
-
MCP 공부 #2 — Claude Desktop 에 내가 만든 MCP 서버 붙이기 · 도구 호출 + 승인 UX
어제 만든 energy-management MCP 서버를 Claude Desktop 에 실제로 연결. claude_desktop_config.json 찾는 법(설정 → 개발자 → 구성 편집) → 서버 등록 → 재시작 → 커넥터 메뉴에서 확인 → '공장 라인 목록 보여줘' 질문에 Claude 가 도구 호출 + '항상 허용/거부' 승인 UX 까지. 의문 — RAG 와 MCP 를 같이 쓰는 방법은? (답: RAG 를 MCP 서버로 감싸면 됨)
-
MCP 공부 #1 — Model Context Protocol 시작 · stdio 서버 + Inspector 로 첫 호출
오늘부터 MCP (Model Context Protocol) 공부 시작. Anthropic 이 만든 표준 프로토콜로, LLM 이 외부 시스템에 접근하는 방식을 표준화. Tool Use 와의 차이 비교 → Python SDK 로 첫 MCP 서버 (say_hello / add_numbers) 구현 → MCP Inspector 로 stdio 연결 확인 → FEMS 와 연결되는 가짜 에너지 관리 서버까지. venv python.exe 경로 문제로 연결 실패 + 해결.