MCP 감사
요청에 포함된 MCP 도구 정의(스키마)는 사용하지 않아도 입력 비용을 발생시킵니다. 아래에서 설명하듯 일부 클라이언트는 가상 도구 그룹으로 스키마 로딩을 늦춥니다. 모든 스키마를 에이전트 루프의 매 단계에 전송하는 경우에는 비용이 단계 수만큼 곱해집니다.
tokens per task ≈ (tool schema tokens × steps) + accumulated conversation + tool responses사용하지 않는 서버라도 전체 스키마가 로드되어 있으면 단계마다 토큰을 소비합니다. 스키마 로딩이 지연되면 이 기준 비용은 달라질 수 있습니다.
매월 감사를 실행합니다
섹션 제목: “매월 감사를 실행합니다”- 모든 MCP 서버와 서버별 도구 수를 나열합니다(도구 선택기인 Configure Tools에서 확인할 수 있습니다).
- 서버마다 지난달에 얼마나 자주 사용했는지 기록합니다(Agent Debug Logs에서 도구 호출을 볼 수 있습니다).
- 서버별로 다음과 같이 결정합니다.
| 사용량 | 결정 |
|---|---|
| 거의 매일 사용 | 유지 |
| 가끔 사용 | 기본적으로 비활성화, 필요한 작업에서만 활성화 |
| 거의 또는 전혀 사용하지 않음, 또는 다른 도구와 중복 | 제거 |
| 필요한 도구는 두 개뿐인 대형 서버 | 더 작은 서버 또는 터미널에서 호출하는 CLI 사용 |
- 첫 요청의 입력 크기와 기준선 작업을 다시 측정합니다(사용량 측정하기).
필요 시 도구 로딩과 가상 도구 그룹
섹션 제목: “필요 시 도구 로딩과 가상 도구 그룹”최근 VS Code Copilot 빌드는 도구 목록이 크면 가상 도구로 묶고 그룹이 활성화될 때까지 전체 스키마 로딩을 늦출 수 있습니다. 지원되는 환경에서는 tool_search 같은 도구 검색 단계를 거칩니다. 활성화된 그룹의 스키마는 이후 세션 요청에도 남을 수 있으며, 동작은 빌드와 모델에 따라 다릅니다. 그룹화가 비활성화되었거나 지원되지 않으면 처음부터 전체 스키마가 전송될 수 있습니다. 캐시 절감을 가정하지 말고 Agent Debug Logs와 Cache Explorer에서 확인하세요. 실험적 설정 github.copilot.chat.virtualTools.threshold는 그룹화가 시작되는 도구 수를 지정합니다(VS Code 설정 참조). 작업 영역별로 사용하지 않는 MCP 서버를 비활성화하는 것이 사용 가능한 목록을 줄이는 가장 확실한 기본 방법입니다.
전역이 아니라 작업 영역별로 범위를 정합니다
섹션 제목: “전역이 아니라 작업 영역별로 범위를 정합니다”MCP 구성을 리포지토리(.vscode/mcp.json)에 두면 프로젝트마다 필요한 서버만 로드됩니다. 백엔드 리포지토리에는 디자인 도구 서버가, 프런트엔드 리포지토리에는 데이터베이스 스키마 도구가 필요하지 않습니다. 리포지토리별 파일은 전역 목록보다 검토하기도 쉽습니다.
긴 지식은 스킬로 대체합니다
섹션 제목: “긴 지식은 스킬로 대체합니다”반복되거나 분량이 큰 참고 자료(사내 스타일 가이드, 런북, API 메모)는 상시 로드되는 지침에 두는 대신 필요할 때 로드되는 에이전트 스킬로 패키징할 수 있습니다. 반복해서 전송하는 입력을 줄이고 한 곳에서 내용을 관리할 수 있습니다.
도구 출력을 작게 유지합니다
섹션 제목: “도구 출력을 작게 유지합니다”도구 결과(파일 읽기, grep, 셸 출력)는 컨텍스트에서 가장 큰 부분을 차지하는 경우가 많습니다. 파일 전체를 읽기보다 대상을 좁혀 검색하고, 노이즈가 많은 경로는 제외합니다(컨텍스트를 간결하게 유지하기 참조).
확인 방법
섹션 제목: “확인 방법”도구를 가지치기하기 전후로 Agent Debug Logs에서 첫 요청의 입력 토큰을 기록합니다. 그런 다음 같은 작업을 실행해 크레딧과 성공 여부를 비교합니다. 품질이 유지된 경우에만 변경을 유지합니다.
트레이드오프
섹션 제목: “트레이드오프”작업에 필요한 도구를 가지치기하면 우회 방법을 찾느라 단계가 늘어납니다. 도구를 빠르게 다시 활성화할 방법을 마련해 두고, 추측이 아니라 실제 사용량을 확인한 뒤 도구를 가지치기합니다.
참고용 수치
섹션 제목: “참고용 수치”이 문서의 바탕이 된 발표 자료에는 도구를 187개에서 52개로 줄인 팀이 나오며, 에이전트 작업의 토큰 사용량이 약 72% 감소했다고 보고합니다. 이 사례는 독립적으로 검증하지 못했습니다. 방법의 예시로만 참고하고, 결과는 직접 측정하세요. TokenEconomizer는 여러 세션에 걸쳐 사용되지 않는 도구를 가지치기하는 방식으로 같은 아이디어를 자동화합니다(사례 연구 참조).
추가 자료(논문)
섹션 제목: “추가 자료(논문)”학회 등급, 인용 수 순으로 정렬했습니다. 각 연구 결과는 가설이므로 자신의 워크로드에서 검증해야 합니다. 전체 목록은 논문을 참고하세요.
- MCP-Zero: Active Tool Discovery for Autonomous LLM Agents — 프리프린트 2025, 인용 55회. 모든 도구 스키마를 주입하지 않고, 에이전트가 필요한 도구를 직접 요청하게 합니다.
- RAG-MCP: Mitigating Prompt Bloat in LLM Tool Selection via Retrieval-Augmented Generation — 프리프린트 2025, 인용 41회. 모든 도구를 로드하는 대신 관련 있는 MCP 도구 설명만 검색해 가져옵니다(프롬프트 비대화 완화).
- Less is More: Optimizing Function Calling for LLM Execution on Edge Devices — 프리프린트 2024, 인용 33회. 함수 호출 시점에 선별한 소규모 도구 집합만 제시해 엣지 디바이스의 비용을 줄입니다.
- Optimize AI credit usage — Keep the tool catalog focused
- Use tools with agents (VS Code)
- Token Efficiency and Context Engineering — 개발자 발표 자료(2026년 6월), MCP 부분(수치는 보고된 그대로)