Model Context Protocol (MCP) AI 통합
SmallPict 이미지 최적화 도구를 AI 코딩 에이전트에 직접 연동: Claude Desktop, Cursor, Google Antigravity, OpenCode, Windsurf.
SmallPict Model Context Protocol (MCP) 서버
SmallPict MCP Server (@smallpict/mcp)는 오픈 표준인 Model Context Protocol을 구현하여 대규모 언어 모델(LLM)과 자율 AI 코딩 에이전트가 작업 흐름 내에서 직접 이미지를 검사, 압축, 변환 및 CDN 캐시 관리할 수 있는 도구를 제공합니다.
End-to-End Image Processing & Edge CDN Flow
Sub-50ms image optimization lifecycle from client upload to Cloudflare Enterprise edge delivery.
Client Application
WordPress / SDK / API
Uploads raw image binary with HMAC-SHA256 signature and UUID v4 idempotency key.
Cloudflare Edge CDN
Global Edge PoPs
Checks global edge cache. On cache HIT, delivers AVIF/WebP in <20ms worldwide.
SmallPict Go Gateway
AWS Lambda / API Gateway
Validates HMAC credentials, verifies quota limits, and scopes access to customer_id.
libvips SIMD Worker
High-Speed C-Engine
Multi-threaded quantization transcode to AVIF & WebP with 0 visual loss and ~88% compression.
S3 Pipeline & Storage
Global Object Store
Stores optimized output, invalidates outdated cache tags, and hydrates Cloudflare Edge.
⚡ 주요 특징
- 범용 에이전트 호환성: Claude for Desktop, Cursor IDE, Google Antigravity (AGY), OpenCode, Windsurf, Cline / Roo Code 등 모든 MCP 호환 환경 지원.
- 로컬 빌드 불필요: Node.js 18+ 환경에서
npx -y @smallpict/mcp명령어로 즉시 구동. - 보안 격리 설계: 표준 입출력(
stdio)을 통해 통신하며, 모든 내부 로그는stderr로 출력되어 JSON-RPC 스트림의 손상을 방지합니다. - 운영 및 샌드박스 완벽 지원: 운영 API 키(
sp_live_...)뿐만 아니라 무료 테스트용 키(sp_test_...)도 지원.
🛠️ 제공되는 MCP 툴 목록
에이전트가 연결되면 다음 세 가지 생산성 도구를 자동으로 인식하여 호출할 수 있습니다:
1. smallpict_optimize_image
로컬 이미지 파일이나 원격 이미지 URL을 최대 88% 압축률로 차세대 포맷(WebP, AVIF)으로 변환합니다.
| 파라미터명 | 타입 | 필수 여부 | 상세 설명 |
|---|---|---|---|
image_path | string | 필수 | 로컬 파일의 절대/상대 경로 또는 공개 이미지 웹 URL. |
target_format | string | 선택 | 출력 포맷: webp(기본값), avif, jpg, png. |
quality | number | 선택 | 압축 품질: 1 ~ 100 (기본값: 80). |
mode | string | 선택 | 최적화 모드: balanced(기본값), aggressive, ultra, lossless. |
max_long_edge_px | number | 선택 | 가로세로 비율을 유지하는 긴 변 기준 최대 픽셀 크기. |
output_path | string | 선택 | 저장할 로컬 파일 경로 (생략 시 동일 디렉터리에 새 확장자로 저장). |
2. smallpict_get_quota
현재 계정의 구독 요금제 등급, 월간 처리 한도, 사용된 바이트 수 및 잔여 대역폭을 확인합니다.
| 파라미터명 | 타입 | 필수 여부 | 상세 설명 |
|---|---|---|---|
| (파라미터 없음) | - | - | 환경변수에 등록된 API 키를 사용하여 최신 상태를 조회합니다. |
3. smallpict_purge_cdn_cache
이미지 업데이트 후 Cloudflare 글로벌 Edge CDN 캐시를 즉시 삭제합니다.
| 파라미터명 | 타입 | 필수 여부 | 상세 설명 |
|---|---|---|---|
urls | string[] | 선택 | 즉시 무효화할 이미지 URL 목록 또는 CDN 상대 경로 배열. |
purge_all | boolean | 선택 | 연결된 도메인의 모든 캐시를 삭제할지 여부 (기본값: false). |
🚀 클라이언트별 연동 설정
1. Claude for Desktop
claude_desktop_config.json 설정 파일에 서버를 추가합니다:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json - Linux:
~/.config/Claude/claude_desktop_config.json
{ "mcpServers": { "smallpict": { "command": "npx", "args": [ "-y", "@smallpict/mcp" ], "env": { "SMALLPICT_API_KEY": "sp_live_YOUR_API_KEY" } } }}Claude Desktop을 재시작하면 채팅창에 망치 🔨 아이콘이 활성화됩니다.
2. Cursor IDE
방법 A: Cursor 전역 설정
- Cursor Settings (
Cmd + ,또는Ctrl + ,)를 엽니다. - Features → MCP Servers 메뉴로 이동합니다.
- + Add New MCP Server 클릭:
- Name:
smallpict - Type:
command - Command:
npx -y @smallpict/mcp - Environment Variables:
SMALLPICT_API_KEY=sp_live_YOUR_API_KEY
- Name:
방법 B: 프로젝트별 설정 (.cursor/mcp.json)
프로젝트 루트 디렉터리에 .cursor/mcp.json 파일을 생성합니다:
{ "mcpServers": { "smallpict": { "command": "npx", "args": [ "-y", "@smallpict/mcp" ], "env": { "SMALLPICT_API_KEY": "sp_live_YOUR_API_KEY" } } }}3. Google Antigravity (AGY)
Antigravity 멀티 에이전트 환경의 경우 ~/.gemini/antigravity/mcp/smallpict/mcp.json 또는 프로젝트 설정에 등록합니다:
{ "mcpServers": { "smallpict": { "command": "npx", "args": [ "-y", "@smallpict/mcp" ], "env": { "SMALLPICT_API_KEY": "sp_live_YOUR_API_KEY" } } }}이제 Antigravity 서브에이전트가 프론트엔드 리팩토링이나 빌드 파이프라인에서 이미지를 자율적으로 최적화합니다.
4. VS Code (Cline / Roo Code)
- Cline 패널을 열고 MCP Servers 아이콘을 클릭합니다.
- Configure MCP Servers를 선택합니다 (
cline_mcp_settings.json). - 다음 JSON을 추가합니다:
{ "mcpServers": { "smallpict": { "command": "npx", "args": [ "-y", "@smallpict/mcp" ], "env": { "SMALLPICT_API_KEY": "sp_live_YOUR_API_KEY" }, "disabled": false, "autoApprove": [ "smallpict_get_quota", "smallpict_optimize_image" ] } }}💬 유용한 AI 프롬프트 예시
설정이 완료되면 스크립트를 작성하지 않고도 일상 언어로 AI에게 명령할 수 있습니다:
로컬 이미지 일괄 최적화
"에이전트,
public/images/폴더 안의 모든 PNG와 JPEG 이미지를 찾아서 품질 80의 WebP로 변환해 주고, 총 몇 바이트가 절약되었는지 표로 정리해 줘."
계정 쿼터 확인
"이번 달 남은 SmallPict 이미지 처리 용량이 얼마나 되는지 확인해 줘."
CDN 캐시 즉시 삭제
"S3에서
hero-banner.jpg를 새로 교체했어. 해당 파일의 SmallPict CDN 캐시를 즉시 퍼지해 줘."
