TL;DR
MCP 툴이 기대만큼 작동하지 않는 주된 원인은 프로토콜 자체가 아니라 툴 설계에 있으며, 툴 정의와 응답이 매 호출마다 LLM 컨텍스트에 누적되면 추론 능력이 저하되어 잘못된 호출과 재시도가 빈발한다. 블로트는 툴 정의와 과다한 응답 필드가 컨텍스트를 채우는 현상으로, 응답을 기본적으로 최소 필드로 하고 상세 정보는 온디맨드로 제공하면 토큰 사용을 크게 줄일 수 있다는 사례가 제시되었다. 반면 혼란은 의미적 유사성, 옵션 과다, 애매한 네이밍에서 비롯되어 명확한 매핑과 예시가 도움이 되지만 과도한 설명은 블로트를 악화시키므로 양자 사이에서 설계적 균형을 찾아야 한다. 따라서 LLM이 언제 무엇을 보게 할지를 의도적으로 설계하고 여러 설계를 Kiro CLI로 비교해보는 실험적 접근을 통해 최적의 툴 구조를 결정하는 것이 권장된다.
섹션별 상세
- 응답을 필요 최소 필드로 기본 설정하고 상세 보기를 온디맨드로 전환하면 응답 토큰을 대략 2/3 수준으로 줄일 수 있다. — Descriptions and responses 섹션의 문단에서 Anthropic의 결과를 인용한 문장
용어 해설
- Model Context Protocol (MCP)
- — MCP는 에이전트와 툴 간 상호작용을 표준화하는 프로토콜로, 툴 정의와 응답이 LLM의 컨텍스트에 어떻게 적재되는지를 규정한다. 이 글에서는 MCP 툴이 그대로 노출될 때 발생하는 컨텍스트 과부하와 호출 혼란 문제를 다루며, 툴 설계를 통해 이를 완화하는 방법을 설명한다. 프로토콜 자체보다 툴 설계 방식이 성능에 결정적 영향을 미친다는 점이 중요하다.
- Context Engineering
- — 컨텍스트 엔지니어링은 LLM이 처리하는 입력 시점과 내용을 의도적으로 조절하여 모델의 추론 품질을 유지하는 방법론으로, 불필요한 툴 정의·출력을 최소화하고 필요한 정보만 온디맨드로 제공하는 구조를 포함한다. 이 글에서는 MCP 툴에서의 bloat와 confusion을 줄이기 위한 핵심 접근법으로 제시된다.
- Tool Bloat
- — 툴 블로트는 툴 정의와 상세 응답이 매 호출마다 LLM 컨텍스트에 누적되어 토큰을 소모하고 모델의 추론 능력을 악화시키는 현상이다. 여러 MCP 서버와 많은 필드를 반환하는 응답이 결합되면 세션 초기에 이미 컨텍스트가 채워져 효과적인 추론이 어려워진다. 이 글은 블로트를 줄이기 위한 응답 축소와 온디맨드 상세보기 전략을 제시한다.
- Semantic Similarity
- — 의미적 유사도는 서로 다른 툴이나 파라미터 설명 사이의 의미상 중첩을 나타내며, 유사도가 높을수록 LLM이 적절한 툴을 선택하기 어렵게 만든다. 글에서는 툴 명칭·옵션의 애매모호성과 의미적 유사성이 잘못된 호출을 유발한다고 지적하며, 명확한 매핑과 네이밍 정리가 필요하다고 본다.
- On-demand Responses
- — 온디맨드 응답은 기본 의사결정에 필요한 최소 필드만 기본 반환하고, 상세 정보는 별도 옵션 요청으로 제공하는 설계 패턴으로 토큰 소비를 줄인다. 글은 이 방식을 적용하면 상세 출력을 기본으로 반환할 때보다 응답 토큰을 크게 줄일 수 있음을 Anthropic 사례를 인용해 제시한다. 온디맨드 접근은 컨텍스트 크기와 응답 비용을 관리하는 실무적 수단이다.
AI 요약 · 북마크 · 개인 피드 설정 — 무료
출처 · 인용 안내
인용 시 "요약 출처: AI Trends (aitrends.kr)"를 표기하고, 사실 확인은 원문 보기 기준으로 진행해 주세요. 자세한 기준은 운영 정책을 참고해 주세요.

