Claude Code에서 MCP 대신 CLI로 전환한 이유
Switched from MCPs to CLIs for Claude Code and honestly never going back
TL;DR Highlight
CLI는 Claude Code MCP에서 발생하던 파라미터 오류·인증 문제·타임아웃을 모두 제거했다.
Who Should Read
Claude Code로 개발 자동화를 구축 중인 개발자. 특히 MCP 설정 삽질에 지쳐 더 안정적인 에이전트 도구 연결 방식을 찾는 사람.
Core Mechanics
- MCP는 파라미터 오류, 인증 랜덤 실패, 타임아웃 등 실사용에서 잦은 문제가 발생함.
- CLI가 더 잘 작동하는 핵심 이유: Claude가 수년간의 shell script, 공식 문서, Stack Overflow로 학습돼 있어서 CLI 플래그와 엣지 케이스를 잘 암.
- 에이전트 친화적 CLI의 3가지 필수 조건: 구조화된 출력(--json, --jq), 비대화형(non-interactive) 모드, API 키 인증.
- 실전 추천 CLI 조합: gh(GitHub), ripgrep(코드 검색), composio(범용 에이전트 도구 연결), stripe(웹훅 테스트), supabase(로컬 DB), vercel(배포), sentry-cli(릴리즈 관리), neon(Postgres 브랜치).
- --json / --jq 플래그 지원 여부가 에이전트에서 CLI를 쓸 수 있는지 없는지를 가르는 핵심 기준.
Evidence
- MCP 대비 CLI는 파라미터 오류, 인증 실패, 타임아웃 등 실사용 장애 요인이 구조적으로 제거됨 (정량 수치 없음, 실사용 경험 기반).
- gh CLI는 --json + --jq 조합으로 GitHub 데이터를 구조화해 에이전트가 파싱 없이 바로 활용 가능.
- composio는 단일 CLI로 수백 개 외부 서비스를 에이전트에 연결할 수 있어 MCP 개별 설정 비용 대비 효율적.
How to Apply
- 기존에 MCP로 연결한 GitHub, Stripe, Supabase 등의 도구를 각 공식 CLI로 교체하고, --json 출력 + 환경변수 API 키 방식으로 Claude Code에 노출하면 된다.
- 새 CLI 도구를 에이전트에 붙이기 전에 '구조화 출력 있나(--json/--output json)?', '비대화형 모드 되나?', 'API 키 인증 되나?' 세 가지를 먼저 확인하는 체크리스트로 쓸 수 있다.
- composio CLI 하나만 설치하면 Claude Code가 Slack, Notion, Jira 등 수백 개 서비스를 CLI 명령 하나로 호출할 수 있어, 다수 MCP 서버 관리 부담을 줄일 수 있다.
Code Example
# 에이전트 친화적 CLI 패턴 예시
# GitHub: 구조화 출력으로 PR 목록 조회
gh pr list --json number,title,state --jq '.[] | select(.state=="OPEN")'
# Stripe: 웹훅 이벤트 로컬 테스트
stripe listen --forward-to localhost:3000/webhook --output json
# Supabase: 로컬 DB 마이그레이션
supabase db push --local
# Sentry: 릴리즈 등록
sentry-cli releases new $VERSION --format json
# Neon: Postgres 브랜치 생성 (피처 브랜치별 DB)
neon branches create --name feature/my-feature
# Ripgrep: 코드 검색 (JSON 출력)
rg 'TODO' --json | jq '.data.lines.text'Terminology
관련 논문
AI 코딩 루프에 Formal Verification Gate 적용하기
AI가 생성한 코드에서 보안 불변식(invariant)을 지키게 하려면 프롬프트 지시보다 타입 시스템 같은 구조적 제약이 훨씬 효과적이라는 주장과 구현 방법을 소개한다.
AI로 Rust 코드 100K 라인 작성하며 얻은 교훈 (2025)
Azure RSL(분산 합의 라이브러리)을 Rust로 재구현하면서 AI 코딩 에이전트를 활용해 4주 만에 100K 라인을 작성한 경험담으로, Code Contracts와 Spec-Driven Development를 AI와 조합하는 실전 워크플로우를 공유한다.
Forge – Guardrails로 8B 모델 성능을 53%에서 99%로 끌어올리기
작은 로컬 LLM(8B)에 guardrails(구조적 안전망)를 씌워 멀티스텝 에이전트 작업 성공률을 53%에서 99%까지 올린 Python 프레임워크 Forge 공개. 모델 자체는 건드리지 않고 실행 환경을 강화하는 접근법이라 주목받고 있음.
Mini Shai-Hulud 재등장: npm 패키지 314개 동시 감염 사건 분석
2026년 5월 19일, npm 계정 하나가 탈취되어 22분 만에 637개 악성 버전이 배포됐고, echarts-for-react·size-sensor 등 월 수백만 다운로드 패키지들이 감염되어 AWS 자격증명·SSH 키·AI 코딩 에이전트까지 탈취하는 정교한 공급망 공격이 발생했다.
Semble – AI 에이전트용 코드 검색 도구, grep 대비 토큰 98% 절감
AI 에이전트가 코드베이스를 탐색할 때 grep+파일 읽기 대신 자연어로 관련 코드 스니펫만 뽑아주는 검색 라이브러리로, 토큰 사용량을 약 98% 줄여준다.
Zerostack – 순수 Rust로 작성된 Unix 철학 기반 코딩 에이전트
Claude Code나 OpenCode처럼 메모리를 수 GB씩 잡아먹는 코딩 에이전트 대신, Rust로 만든 초경량(~8MB RAM) 코딩 에이전트 Zerostack이 공개됐다. 저사양 환경에서도 쓸 수 있고, 직접 만든 유사 프로젝트들과 비교 토론이 활발하게 이뤄지고 있다.