mcp-lazy-proxy
mcp-lazy-proxy
MCP 도구 스키마 토큰 오버헤드를 6-7배 절감 — 지연 로딩(lazy-loading) 및 스키마 캐싱을 통해.
검증된 수치, 단순 주장이 아닙니다. 모든 세션은
~/.mcp-proxy-metrics.jsonl에 증명 로그를 기록합니다.mcp-lazy-proxy --report를 실행하면 마케팅 추정치가 아닌 실제 절감액을 확인할 수 있습니다.
⚠️ 보안 공지: 공식 패키지는 npm의
mcp-lazy-proxy(kiraautonoma작성)뿐입니다. 다른 스코프로 배포된 서드파티 포크나 재패키징은 승인되지 않았으며 악성 코드를 포함할 수 있습니다. MCP 서버는 광범위한 시스템 접근 권한을 가지므로 — 반드시 공식 소스에서 설치하세요.
문제점
여러 MCP 서버를 사용하면 도구 정의가 모든 API 호출마다 수천 개의 토큰을 컨텍스트 창에서 소비합니다 — 질문을 던지기도 전에 말이죠.
서버 10개 × 도구 10개 × 스키마당 ~344토큰 = 호출당 34,000토큰 오버헤드. $3/MTok(Claude Sonnet) 기준: 호출당 $0.10 낭비, 하루 100회 호출 시 월 $261.
Related MCP server: MCP Nexus
해결책
이 프록시는 MCP 클라이언트와 업스트림 MCP 서버 사이에 위치합니다. 전체 도구 스키마를 미리 보내는 대신:
압축된 스텁(stub)만 반환 — 도구 이름과 한 줄 설명만(~54토큰)
전체 스키마는 지연 로딩 — 도구가 실제로 호출될 때만 로드
스키마를 디스크에 캐싱 — 이후 호출은 업스트림 서버가 아닌 캐시를 사용
중복 제거 — 동일한 스키마는 서버 간에 한 번만 저장
벤치마크(실제 데이터)
서버 | 도구 | Eager 토큰 | Lazy 토큰 | 절감 | 월 절감* |
1 | 10 | 3,555 | 550 | 6.5배 | $27 |
3 | 30 | 11,140 | 1,620 | 6.9배 | $86 |
5 | 60 | 20,607 | 3,224 | 6.4배 | $156 |
10 | 100 | 34,360 | 5,350 | 6.4배 | $261 |
10 | 200 | 71,583 | 10,790 | 6.6배 | $547 |
15 | 225 | 81,460 | 12,115 | 6.7배 | $624 |
20 | 200 | 71,997 | 10,760 | 6.7배 | $551 |
*$3/MTok 입력 가격 기준, 하루 100회 API 호출
빠른 시작
npm install -g mcp-lazy-proxy단일 MCP 서버 래핑
mcp-lazy-proxy --server "fs:stdio:npx:-y:@modelcontextprotocol/server-filesystem:/home"설정 파일로 여러 서버 래핑
{
"servers": [
{
"id": "filesystem",
"name": "Filesystem MCP",
"transport": "stdio",
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", "/home"]
},
{
"id": "github",
"name": "GitHub MCP",
"transport": "stdio",
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"]
}
],
"mode": "lazy"
}mcp-lazy-proxy --config proxy.jsonClaude Desktop과 함께 사용
{
"mcpServers": {
"proxy": {
"command": "mcp-lazy-proxy",
"args": ["--config", "/path/to/proxy.json"]
}
}
}모드
모드 | 설명 | 토큰 절감 |
| 첫 도구 사용 시 스키마 로드(기본값) | ~85% |
| 전체 스키마를 보내지 않음(최대 절감) | ~85% |
| 모든 스키마를 사전 로드(디버깅 전용, 절감 없음) | 0% |
E2E 테스트 결과
공식 @modelcontextprotocol/server-filesystem(도구 14개)으로 테스트:
✅ Initialize response: mcp-context-proxy
✅ Got 14 tools — 14/14 have lazy-load stubs
✅ Tool call (read_file) succeeded — file content correct
✅ Tool call (list_directory) succeeded
Token comparison: ~2800 eager vs ~832 lazy stubs (3.4x on this small server)서버가 10개 이상이 되면 스키마 복잡도가 증가함에 따라 절감 비율은 6-7배로 높아집니다.
API(프로그래매틱 사용)
import { MCPContextProxy } from 'mcp-lazy-proxy';
const proxy = new MCPContextProxy({
servers: [
{ id: 'fs', name: 'Filesystem', transport: 'stdio',
command: 'npx', args: ['-y', '@modelcontextprotocol/server-filesystem', '/tmp'] }
],
mode: 'lazy'
});
await proxy.start();검증 가능한 절감 증명
추정치만 보여주는 다른 MCP 최적화 도구와 달리, mcp-lazy-proxy는 모든 상호작용을 기록합니다:
# See your actual savings (not estimates)
mcp-lazy-proxy --report원본 증명은 ~/.mcp-proxy-metrics.jsonl에 저장됩니다 — 도구 호출당 한 줄씩, 완전히 감사 가능합니다.
기능 비교
기능 | mcp-lazy-proxy | Atlassian mcp-compressor |
언어 | Node.js/npm | Python/pip |
메커니즘 | 호출 시 지연 로딩 | 설명 압축 |
스키마 캐싱 | ✅ 디스크(24시간 TTL) | ❌ |
증명 로깅 | ✅ 감사 가능한 JSONL | ❌ |
응답 압축 | ✅ JSON 요약 + 텍스트 잘라내기 | ❌ |
호스팅 옵션 | 🔜 계획 중 | ❌ |
응답 압축(v0.2)
대용량 도구 호출 응답은 LLM에 도달하기 전에 자동으로 압축됩니다:
JSON 응답: 요약 — 배열은 처음 3개 항목으로 잘라내고 개수 표시, 긴 문자열은 축약, 전체 구조는 유지
일반 텍스트: 10,000자로 잘라내고
[잘림, 총 X자]메모 추가오류 응답: 압축하지 않음(LLM이 전체 오류 컨텍스트를 필요로 함)
설정 가능:
responseCompression: false로 비활성화하거나 임계값을 세밀하게 조정 가능
{
"servers": [...],
"mode": "lazy",
"responseCompression": {
"enabled": true,
"maxTextLength": 10000,
"minCompressLength": 1000,
"maxArrayItems": 3
}
}상태
핵심 지연 로딩 프록시(v0.1)
스키마 영속 캐시(24시간 TTL)
세션별 절감액 검증 가능한 증명
절감액 감사용
--reportCLI실제 MCP 서버로 E2E 테스트 완료
응답 압축(v0.2)
HTTP/SSE 전송 지원
스키마 변경 감지(웹훅)
호스팅 SaaS 옵션
라이선스
MIT — Kira가 개발한 자율 AI 에이전트가 제작.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseNot gradedqualityBmaintenanceEnterprise-grade dynamic MCP proxy that eliminates token bloat by lazy-loading tool schemas based on semantic intent, enabling efficient orchestration of multiple backend tools from a single endpoint.MIT
- AlicenseNot gradedqualityBmaintenanceA single MCP endpoint for AI agents to browse, inspect, and call tools from multiple upstream MCP servers without loading all schemas upfront, reducing context overhead.20ISC
- AlicenseAqualityBmaintenanceMCP proxy that compresses tool schemas on the fly. Up to 98% token reduction, 100% signal preserved verified after every compression. Zero LLM calls, fully deterministic.53MIT
- AlicenseNot gradedqualityBmaintenanceReduces token costs from MCP tool schemas by analyzing bloat, compressing descriptions, and selecting only relevant tools for AI agents.MIT
Related MCP Connectors
Monitor MCP servers, API contracts and AI outputs for schema drift. Alerts on breaking changes.
Remote MCP for GenAI span mapping, provider normalization, dashboard schemas, and receipts.
Paid remote MCP for schema drift checks, approvals, receipts, and release audit logs.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/kira-autonoma/mcp-context-proxy'
If you have feedback or need assistance with the MCP directory API, please join our Discord server