본문으로 건너뛰기

MCP 토큰 세금

고급

이번 달 Hacker News와 X에서 싸움이 붙었습니다. 같은 일을 CLI로 하면 수백 토큰인데, 왜 MCP 오퍼레이션 하나에 수만 토큰을 태우는가? MCP 때리기처럼 들립니다. 아닙니다. 가장 크게 목소리를 내는 사람들은 에이전트를 사랑하는 사람들입니다 — 그저 청구서를 만났을 뿐입니다. 이 페이지는 그 청구서에 대한 실전 가이드입니다. 토큰이 실제로 어디로 가는지, 거의 아무도 구분하지 않는 두 가지 비용, 그리고 15만 토큰짜리 워크플로를 2천 토큰으로 바꾸는 세 가지 해법.

What you'll learn
  • 서로 다른 두 가지 MCP 토큰 비용을 구분하기: 도구 정의 로딩과 중간 결과
  • 스키마 비용이 왜 한 번이 아니라 대화마다 지불되는지 이해하기
  • defer_loading과 Tool Search Tool로 도구 스키마를 필요할 때만 로드하기
  • 코드 실행 / Programmatic Tool Calling으로 큰 결과를 컨텍스트 밖에 두기
  • 작업마다 MCP 도구가 값어치를 하는지, 아니면 평범한 CLI 호출이 이기는지 판단하기

비용은 하나가 아니라 둘

MCP 서버를 연결하면 클라이언트가 tools/list를 요청하고 모든 도구를 전체 JSON 스키마와 함께 돌려받습니다. 그 블록 전체가 모델의 컨텍스트에 주입됩니다. 대부분의 사람은 여기서 계산을 멈춥니다. 하지만 세금은 둘이고, 두 번째가 대개 더 큽니다.

비용 1 — 도구 정의. 연결된 모든 도구의 이름, 설명, 파라미터 스키마가 컨텍스트에 앉아 있습니다. Anthropic 자신의 표현: "에이전트가 수천 개의 도구에 연결된 경우, 요청을 읽기도 전에 수십만 개의 토큰을 처리해야 합니다." 엔터프라이즈 서버 하나가 수십에서 수백 개의 도구를 게시할 수 있고, 서드파티 분석은 400개 도구 서버를 스키마만 약 40만 토큰으로 추산합니다 — Claude의 200k 컨텍스트 윈도우가 담을 수 있는 것보다 큽니다.

비용 2 — 중간 결과. 모델이 도구를 직접 호출하면 모든 결과가 모델의 컨텍스트를 통과합니다 — 읽히길 원하지 않았던 부분까지요. Anthropic의 예: 한 도구에서 두 시간짜리 회의록을 끌어와 다른 도구에 넘기면, 한 줄 요약을 만들려고 전체 회의록이 모델을 두 번 통과합니다 — 잠재적으로 약 5만 토큰.

Watch out
  • 비용 1은 프롬프트 캐싱이 걸리기 전까지 매 턴 지불됩니다 — 스키마는 한 번 로드되는 게 아니라 대화의 매 요청마다 다시 전송됩니다. 큰 도구 카탈로그는 일회성 수수료가 아니라 세션 전체에 붙는 세금입니다.
  • 비용 2는 도구 개수가 아니라 데이터에 비례합니다. 작은 도구 열 개가 거대한 블롭을 반환하는 도구 하나보다 쌀 수 있습니다.

1차 출처에서 나온 숫자들

해법작업이전이후감소
MCP와 코드 실행Google Drive → Salesforce 워크플로150,0002,00098.7%
Tool Search Tool작업 시작 전 정의 로딩~77,000~8,70085%
Programmatic Tool Calling복잡한 리서치 작업43,58827,29737%

세 행 모두 Anthropic이 공개한 수치입니다. 놀라운 부분은 비용이 아니라 정확도입니다. Tool Search Tool을 쓰면 도구 선택 정확도가 올라갔습니다(Opus 4.5는 79.5% → 88.1%, Opus 4는 49% → 74%). 컨텍스트를 붐비게 하는 도구가 줄면 모델이 올바른 것을 더 자주 고릅니다. 여기서는 비용과 품질이 같은 방향으로 움직이는데, 이는 드문 일입니다.

해법 1 — 도구 스키마를 필요할 때 로드하기

모든 스키마를 미리 주입하는 대신 defer_loading: true로 표시하세요. 그러면 Claude는 가벼운 인덱스만 봅니다. GitHub이 필요해지면 Tool Search Tool을 호출하고, 그것이 매칭되는 GitHub 스키마 돌려줍니다 — 다른 모든 서버의 50여 개 도구는 오지 않습니다. Anthropic은 이 방식이 전부 미리 로드했을 때의 약 122,800 토큰 대비 약 191,300 토큰의 컨텍스트를 보존한다고 보고합니다.

MCP 서버를 많이 붙인 Claude Code를 쓰고 있다면 지금 이 패턴을 보고 있는 셈입니다. 도구는 지연(deferred) 상태로 도착하고, 에이전트는 작업이 필요로 할 때만 검색 단계를 통해 각 스키마를 가져옵니다. 커뮤니티 보고에 따르면 Claude Code는 연결된 도구 설명이 컨텍스트 윈도우의 약 10%를 넘길 상황이 되면 MCP Tool Search를 자동으로 켭니다 — 정확한 발동 조건은 사용 중인 버전에서 확인하세요.

Guided walkthrough1 of 3
  1. 활성 서버와 각각이 게시하는 도구 개수를 대략 파악하세요. 지난주 한 작업을 위해 연결한 서버가 오늘도 매 턴 세금을 물리고 있습니다.

해법 2 — 코드 실행으로 결과를 컨텍스트 밖에 두기

더 깊은 해법은 비용 2를 겨냥합니다. 모델이 도구를 하나씩 호출하며 모든 결과가 모델을 통과하는 대신, 모델이 도구를 호출하는 코드를 작성하고 중간 데이터는 실행 환경에 머뭅니다. Anthropic은 MCP 서버를 에이전트가 파일시스템처럼 탐색하는 도구의 파일 트리로 노출해 필요한 정의만 로드하게 합니다 — 그리고 "중간 결과는 기본적으로 실행 환경에 머뭅니다… 에이전트는 여러분이 명시적으로 로그하거나 반환한 것만 봅니다."

바로 그 하나의 설계 변경이 Drive→Salesforce 워크플로를 150,000에서 2,000 토큰으로 무너뜨립니다. 레코드는 코드를 통해 움직이고, 최종 개수만 모델로 돌아옵니다. 개발자 플랫폼에서는 같은 아이디어가 Programmatic Tool Calling으로 제공됩니다 — Claude가 여러 도구를 오케스트레이션하고 출력이 컨텍스트에 닿기 전에 필터링하는 Python을 작성합니다.

Pro tip
  • 경험칙: 도구가 큰 것을 반환한다면(회의록, 쿼리 덤프, 파일) 블롭이 컨텍스트 밖에서 처리되도록 코드 실행을 원하게 됩니다. 도구가 작은 일을 그저 수행하기만 한다면(이슈 생성, 한 행 전송) 직접 호출로 충분합니다.

해법 3 — CLI 호출이 그냥 이기는 때를 알기

때로는 정답이 더 나은 MCP 설정이 아니라 MCP를 아예 안 쓰는 것입니다. HN/X 논쟁에는 진짜 논점이 있습니다. gh pr listpsql -c '…' 같은 셸 명령은 왕복 수백 토큰인 반면, 동등한 MCP 경로는 스키마에 구조화된 결과까지 지불합니다. 에이전트가 이미 터미널을 가지고 있고 CLI가 존재한다면, 그것이 대개 가장 날렵한 경로입니다.

도구가 이미 CLI라면 CLI를 선호하세요

# Instead of connecting a GitHub MCP server for read-only work,
# let the agent use the gh CLI it already has:
gh pr list --state open --json number,title,author

# ~200 tokens of command + compact output, no schema tax,
# no server to keep connected across the session.

MCP가 오버헤드 값을 하는 때는 타입이 있고, 권한이 통제되고, 여러 표면에 걸친 능력이 필요할 때입니다 — 읽기 전용 롤이 있는 데이터베이스, 조종할 수 있는 브라우저, OAuth가 걸린 SaaS API — 또는 같은 도구를 여러 턴에 걸쳐 재사용해 캐싱이 스키마 비용을 분산시킬 때입니다. 능력이 일회성이고, 이미 스크립트로 가능하고, 작은 것을 반환한다면 CLI를 집으세요. 어느 쪽도 "더 낫지" 않습니다. 비용 곡선 위의 다른 지점일 뿐입니다.

Key takeaways
  • MCP에는 두 가지 토큰 비용이 있습니다: 도구 정의 스키마(거의 매 턴 지불)와 중간 결과(데이터에 비례).
  • Tool Search + defer_loading은 스키마 비용을 약 85% 줄이면서 도구 선택 정확도도 올립니다 — 스키마는 검색될 때만 로드하세요.
  • 코드 실행 / Programmatic Tool Calling은 큰 결과를 실행 환경에 붙잡아 둡니다. 로그하거나 반환한 것만 모델에 도달합니다(Anthropic 예시에서 150k → 2k).
  • 가장 싼 최적화는 작업당 더 적은 서버를 연결하는 것입니다.
  • 능력이 작은 것을 반환하는 일회성이고 이미 CLI가 있다면, 셸 호출(약 200 토큰)이 MCP 왕복을 이깁니다.
MCP 경제학 용어
Enter 또는 스페이스 키를 눌러 카드를 뒤집습니다. 좌우 화살표 키로 카드를 이동할 수 있습니다.용어가 표시되었습니다.
1 / 5

확인해 보세요

0/4
  1. 도구 정의 비용이 일회성 수수료보다 나쁜 이유는?
  2. 한 도구가 2시간짜리 회의록을 끌어와 직접 호출로 요약 도구에 넘깁니다. 숨은 비용은?
  3. 코딩 세션 중에 '열린 PR 목록'을 한 번만 읽기 전용으로 봐야 하고 에이전트에 터미널이 있습니다. 가장 날렵한 선택은?
  4. Tool Search Tool을 쓰면 도구 선택 정확도에 어떤 놀라운 일이 벌어지나요?

AILmanac 관련 문서

출처 및 더 읽을거리