Cloudflare Code Mode — 2,500개 API를 1,000 토큰에 담는 MCP의 새로운 패턴
MCP(Model Context Protocol) 서버를 만들어본 적이 있다면, 도구(tool) 정의가 얼마나 빠르게 토큰을 잡아먹는지 알 것이다. API 엔드포인트마다 도구 하나를 정의하면 Cloudflare 같은 대규모 API는 도구 정의만으로 117만 토큰이 필요하다. 컨텍스트 윈도우의 대부분을 도구 목록이 채워버리는 셈이다. Cloudflare가 공개한 Code Mode는 이 문제를 정면으로 해결한다. 2,500개 이상의 API 엔드포인트를 단 2개의 도구, 약 1,000 토큰으로 제공하는 패턴이다.
핵심 아이디어 — 도구 대신 코드를 쓰게 하라
기존 MCP 접근 방식은 각 API 엔드포인트를 개별 도구로 노출한다. list_zones, create_dns_record, get_firewall_rules 식으로. API가 10개면 괜찮지만, 2,500개면 도구 정의만으로 컨텍스트가 폭발한다.
Code Mode의 발상 전환은 이렇다. 도구를 수천 개 나열하는 대신, 모델이 직접 코드를 작성해서 API를 호출하게 하면 어떨까?
비유하면 이렇다. 기존 방식이 레스토랑 메뉴판에 2,500개 요리를 전부 나열하는 것이라면, Code Mode는 "주방에 들어가서 재료로 직접 만들어라"라고 하는 것이다. 메뉴판(도구 정의) 대신 레시피 검색 기능(Search)과 주방 이용권(Execute)만 주면 된다.
| 방식 | 도구 수 | 토큰 사용량 | 확장성 |
|---|---|---|---|
| 전통적 MCP | 엔드포인트 수만큼 | 117만 토큰 (Cloudflare 기준) | API 추가 시 도구도 추가 |
| Code Mode | 2개 | ~1,000 토큰 | API 크기 무관 |
99.9%의 토큰 감소다.
[💡 잠깐! 이 용어는?] MCP(Model Context Protocol): AI 모델에게 외부 도구와 데이터 소스를 제공하는 표준 프로토콜이다. 도구 정의(이름, 설명, 파라미터 스키마)를 JSON으로 선언하면 모델이 이를 호출할 수 있다.
2개의 도구가 하는 일
1. Search — OpenAPI 스펙 탐색
에이전트가 JavaScript 코드를 작성해서 OpenAPI 명세를 검색한다. 모든 $ref가 미리 인라인으로 풀려 있어서 에이전트가 스키마를 탐색하며 필요한 엔드포인트를 찾을 수 있다.
// 에이전트가 Search 도구에 전달하는 코드
const endpoints = spec.paths;
const wafEndpoints = Object.entries(endpoints)
.filter(([path]) => path.includes('/rulesets'))
.map(([path, methods]) => ({
path,
methods: Object.keys(methods),
}));
return wafEndpoints;2. Execute — API 호출 실행
에이전트가 JavaScript 코드를 작성해서 실제 API 호출을 수행한다. cloudflare.request() 클라이언트가 인증을 자동으로 처리한다.
// 에이전트가 Execute 도구에 전달하는 코드
const zones = await cloudflare.request('GET', '/zones', {
query: { name: 'example.com' },
});
const zoneId = zones.result[0].id;
const rulesets = await cloudflare.request('GET',
`/zones/${zoneId}/rulesets`
);
return rulesets;여러 API 호출을 한 번의 Execute 안에서 체이닝할 수 있다는 점이 핵심이다. 기존 MCP에서는 각 API 호출이 별도의 도구 호출이었고, 매번 모델과 서버 사이를 왕복해야 했다.
보안 — Dynamic Worker Isolates
"에이전트가 직접 코드를 실행한다"고 하면 보안이 걱정될 수 있다. Code Mode는 코드를 Dynamic Worker Isolates에서 실행한다. Cloudflare Workers의 V8 샌드박스 환경이다.
| 보안 요소 | 설명 |
|---|---|
| 파일 시스템 접근 | 차단 |
| 외부 네트워크 요청 | 제한 (인증된 Cloudflare API만 허용) |
| 실행 환경 | V8 격리 샌드박스 |
| 인증 | OAuth 2.1 + 권한 범위 제한(downscoping) |
비유하면 주방에 들어가게 해주되, 가스 밸브는 잠그고 지정된 재료만 사용할 수 있게 한 것이다.
[💡 잠깐! 이 용어는?] Workers Isolates: Cloudflare Workers의 실행 환경으로, V8 엔진의 Isolate 기능을 사용해 각 요청을 독립된 메모리 공간에서 처리한다. 컨테이너보다 가볍고 시작 시간이 밀리초 단위다.
실제 워크플로우 예시
DDoS 방어 규칙을 설정하는 시나리오를 보면 Code Mode의 장점이 드러난다.
- Search: "WAF ruleset 관련 엔드포인트를 찾아라"
- Search: "ruleset phases 스키마를 확인하라"
- Execute: "현재 활성화된 rulesets를 조회하라"
- Execute: "DDoS 방어 규칙을 업데이트하라"
4번의 도구 호출로 복잡한 방화벽 설정이 완료된다. 기존 방식이라면 엔드포인트 검색, 스키마 확인, 조회, 업데이트 각각이 별도 도구였을 것이다. 그리고 모델은 2,500개 도구 목록에서 적합한 것을 골라야 했을 것이다.
다른 API에도 적용할 수 있나
Code Mode 패턴 자체는 Cloudflare에 종속되지 않는다. OpenAPI 명세가 있는 모든 API에 같은 구조를 적용할 수 있다. 필요한 것은 세 가지다.
- OpenAPI 스펙 —
$ref를 인라인으로 풀어둔 버전 - 코드 실행 샌드박스 — V8 Isolate, Deno Deploy, 또는 유사한 격리 환경
- 인증 프록시 — 에이전트의 코드가 직접 토큰을 다루지 않도록 서버 측에서 주입
대규모 API를 보유한 서비스(AWS, GCP, Stripe 등)가 이 패턴을 채택하면 MCP 생태계 전체의 토큰 효율이 크게 개선될 수 있다.
정리
- Code Mode는 수천 개의 API 엔드포인트를 Search + Execute 2개 도구로 제공하는 MCP 설계 패턴이다
- Cloudflare의 2,500개 API를 117만 토큰에서 1,000 토큰으로 99.9% 줄였다
- 에이전트가 JavaScript 코드를 작성하여 OpenAPI 스펙 검색과 API 호출을 직접 수행한다
- Dynamic Worker Isolates에서 실행되므로 파일 시스템 접근 차단, 네트워크 제한 등 보안이 유지된다
- OpenAPI 명세가 있는 모든 API에 같은 패턴을 적용할 수 있다
참고:
- Cloudflare Blog: https://blog.cloudflare.com/code-mode-mcp/
- Cloudflare MCP Server: https://mcp.cloudflare.com/mcp
- MCP Specification: https://modelcontextprotocol.io/
관심 있을 만한 포스트
Google WebMCP — 웹사이트가 AI 에이전트에게 '메뉴판'을 건네는 시대
Chrome 146에 탑재된 WebMCP의 Declarative·Imperative API 구조와 웹 개발자가 준비해야 할 변화를 분석한다.
Accept: text/markdown — AI 에이전트가 HTML 대신 마크다운을 받는 시대
Cloudflare가 AI 에이전트를 위해 HTML을 마크다운으로 자동 변환하는 기능의 동작 원리와 의미를 살펴본다.
VS Code 1.109 — 에디터 하나에서 Claude, Codex, Copilot을 동시에 돌리는 시대
VS Code 1.109가 도입한 멀티 에이전트 개발 환경의 3가지 실행 모드와 MCP Apps 지원을 분석한다.
VS Code 1.110 — 에이전트가 생각하고, 브라우저를 열고, 터미널을 본다
2026년 2월 VS Code 1.110이 AI 에이전트 경험을 한 단계 끌어올린 핵심 기능 6가지를 분석한다.
코딩 에이전트 운영 설계 — Rules부터 MCP·Hooks까지 실무 적용 가이드
코딩 에이전트의 핵심 개념 7가지를 실무 적용 순서대로 정리하고, 팀 운영에 바로 쓸 수 있는 체크리스트를 제공한다.
좀비 TV 400만 대의 35초 — 2025년 DDoS 공격은 어떻게 역대 기록을 갈아치웠나
2025년 DDoS 공격이 전년 대비 두 배 이상 증가하고, 역대 최대 31.4 Tbps 공격이 기록된 Cloudflare Q4 리포트 분석.
뱀의 탈피에서 배운 서버 재시작 — Rust로 커넥션 제로 로스를 구현하는 ecdysis
Cloudflare가 5년간 프로덕션에서 검증한 Rust 무중단 재시작 라이브러리 ecdysis를 오픈소스로 공개했다.
Next.js 블로그 만들기 — GitHub Pages에서 Cloudflare Pages로 이전하기
GitHub Pages의 한계를 넘어 Cloudflare Pages로 블로그를 이전한 과정. 비교, 설정, SEO까지 한 번에 정리.