Skills/MCP/Hooks/Plugins Claude Code 4가지 확장을 구분하여 사용하는 실전 가이드
요약
본 기사는 Claude Code 사용자들이 혼란스러워하는 Skills, MCP, Hooks, Plugins 네 가지 확장 메커니즘의 명확한 역할과 차이점을 실전 가이드 형태로 정리합니다. 핵심은 각 확장이 담당하는 '역할'을 이해하는 것이며, 이를 통해 Notion 연결(MCP), 자동화된 절차 정의(Skills), 이벤트 기반 실행(Hooks), 그리고 이 모든 것을 묶는 패키지(Plugins)를 구분하여 사용할 수 있습니다. 각 확장 메커니즘은 각각 프롬프트 템플릿, 외부 도구 표준 프로토콜, 이벤트 트리거, 조합 패키지의 역할을 수행하며, 이를 이해하는 것이 Claude Code의 출력 품질을 안정화시키는 핵심 지식입니다.
핵심 포인트
- Skills는 반복적인 업무 절차를 정의하는 '프롬프트 템플릿'이며, 특정 태스크에 대한 행동 원리를 고정합니다.
- MCP (Model Context Protocol)는 Claude Code가 Notion, GitHub 등 외부 서비스에 접근할 수 있도록 하는 '표준 프로토콜(도구)'입니다.
- Hooks는 특정 이벤트 발생 시 자동으로 실행되는 '이벤트 트리거' 역할을 수행하며, Lint 자동 실행 같은 경우에 유용합니다.
- Plugins는 Skills, MCP, Hooks 등의 여러 확장 기능을 조합하여 하나의 완성된 '업무 패키지'를 구성하는 상위 개념입니다.
- Skills 설계 시에는 구체적인 예시(화이트리스트)보다는 추상적이고 안정적인 규칙으로 제약하는 것이 품질 유지에 유리합니다.
「MCP가 뭐야? Skills와는 뭐가 다른 거지?」라며 혼란스러웠던 밤
Claude Code를 사용하기 시작했을 무렵, 저는 내내 혼란스러웠습니다.
공식 문서를 열어보면 Skills, MCP, Hooks, Plugins라는 4가지 확장 메커니즘이 나열되어 있습니다. 각각 역할이 다르다고 합니다. 하지만, 어떤 것을 어떻게 구분해서 사용해야 할지 전혀 보이지 않았습니다.
Notion을 연결하고 싶을 때 "이것은 MCP로 해야 하는 것인가, Skills로 작성해야 하는 것인가"를 알 수 없습니다. Lint를 자동 실행하고 싶을 때 "Hooks로 충분한가, Plugins를 만들어야 하는가"를 판단할 수 없습니다.
반년 이상 사용해 보며 마침내 "이런 것이었구나"라고 납득하게 된 정리를 본 기사에서 전달해 드립니다.
Claude Code의 확장은 역할을 그림 한 장으로 보면 9할이 해결됩니다.
2026년 2월 시점에서, Skills Marketplace에는 Agent Skills가 65,000개 이상 모였고, MCP 서버는 770개 이상, Plugin Marketplaces는 2,500개 이상에 달합니다 (Claude Code Plugins Guide 2026). 에코시스템이 폭발적으로 확대되고 있는 지금이기에 더욱 정리가 필요합니다.
결론: 4가지 확장은 역할이 결정적으로 다르다
먼저 한 장으로 보여드립니다. 제가 일상적으로 사용하고 있는 판단 기준입니다.
4가지 확장은 역할이 결정적으로 다르다. 매뉴얼/열쇠 꾸러미/무인 경비/업무 패키지
| 확장 | 한마디로 말하면 | 실행 타이밍 | 예시 |
|---|---|---|---|
| Skills | 프롬프트 템플릿 (Prompt Template) | 태스크 이해 시 | /daily-schedule, /book-review |
| MCP | 외부 도구 연결 | 외부 리소스 취득 시 | Notion, GitHub, Slack |
| Hooks | 이벤트 트리거 (Event Trigger) | 특정 이벤트 발생 시 | Lint 자동 실행, 테스트 자동 실행 |
| Plugins | 위의 조합 패키지 | 용도에 따라 | Compound Engineering, Legal |
사람에 비유하자면, Skills는 매뉴얼, MCP는 열쇠 꾸러미, Hooks는 무인 경비 카메라, Plugins는 이 모든 것을 넣은 업무 패키지입니다.
매뉴얼이 있어도 열쇠가 없으면 문을 열 수 없습니다. 열쇠가 있어도 매뉴얼이 없으면 무엇을 해야 할지 모릅니다. 둘 다 필요합니다.
여기서부터 각각을 자세히 살펴보겠습니다.
Skills: 「AI의 행동 원리」를 정의하는 프롬프트 템플릿
Skills는 가장 단순하면서도, 사용하면 할수록 효과가 나타나는 확장입니다. 내용은 **프롬프트 템플릿 (Prompt Template)**에 불과합니다.
# /daily-schedule
매일 아침 "좋은 아침" 인사로 기동하는 스킬.
## 절차
...
이것을 .claude/skills/daily-schedule.md에 두면, /daily-schedule로 호출할 수 있습니다.
Skills의 역할은 반복해서 전달하던 지시를 파일로 고정하는 것입니다. CLAUDE.md가 「전체적인 행동 원리」라면, Skills는 「특정 업무의 절차서」입니다.
이 구분법을 의식하는 것만으로도 Claude Code의 출력 품질이 극적으로 안정됩니다.
Skill 설계의 5원칙 (실운용에서 도출)
실운용에서 도출된 Skill 설계의 5원칙을 정리합니다.
- 작업 전에 할 일을 리스트화한다: 외부 상태를 가시화한 후 태스크에 들어간다.
- 작업 후에 리뷰 루프로 검증한다: 「누락이 있다는 전제」로 자기 검증 단계를 구성한다.
- 의도는 인간이, 절차 전개는 AI에게 맡긴다: Skill에는 의도와 제약을, 구체적인 절차는 AI가 생성하게 한다.
- 도메인 지식은 Skill 외부에 일원화하여 저장한다: 여러 Skill에서 동일한 지식을 복사해서 붙여넣지 않는다.
- 구체적인 예시를 너무 많이 쓰지 않도록 주의한다: 화이트리스트화를 피하고, 추상적인 규칙으로 제약한다.
5번째가 가장 어려운 포인트입니다. "이런 경우에는 이렇게"를 너무 많이 쓰면, 쓰지 않은 패턴에 대응할 수 없게 됩니다.
저는 이 원칙을 깨달은 후, Skill의 Markdown이 절반 이하로 짧아졌습니다. 짧을수록 품질이 안정된다는 것이 저의 경험칙입니다.
MCP: 「외부 세계」와 연결하는 표준 프로토콜
MCP (Model Context Protocol)는 Claude Code가 외부 도구나 서비스에 액세스하기 위한 **표준 프로토콜 (Standard Protocol)**입니다.
{
"mcpServers": {
"notion": {
...
이것만으로 Claude Code가 Notion과 GitHub에 액세스할 수 있게 됩니다.
MCP의 설계 사상은 Claude Code 자체를 개조하지 않고, 외부 서비스 측에 어댑터 (Adapter)를 만든다는 생각입니다. Notion, GitHub, Slack, Google Drive, Linear, Atlassian 등 모든 서비스가 MCP 서버를 제공하면, Claude Code는 설정 하나로 연결할 수 있습니다.
2026년 5월 시점에서 MCP 서버는 770개 이상에 달하고 있습니다. Anthropic이 오픈 스탠다드 (Open Standard)로 공개함에 따라 Microsoft 365, Slack, Box, Jira 등 대기업들도 통합을 진행하고 있습니다.
Skills와 MCP의 결정적인 차이
자주 혼동되기에 명확히 해둡니다.
Skills: Claude Code에게 무엇을 어떻게 생각할지를 가르침 (프롬프트 (Prompt))
MCP: Claude Code에게 무엇에 액세스할 수 있는지를 부여 (도구 (Tool))
"Notion에서 회의록을 요약해줘"라는 태스크 (Task)를 실행하려면, MCP로 Notion에 액세스하고, Skills로 요약 절차를 지시하는 조합이 필요합니다.
둘 다 필요하다는 것이 중요한 포인트입니다.
Hooks: 컨텍스트 소비 없이 "보이지 않는 자동화"를 심기
Hooks는 Claude Code의 특정 이벤트에 반응하여 자동으로 실행되는 스크립트 (Script)입니다.
{
"hooks": {
"PostToolUse": [
...
위의 예시에서는 Claude Code가 파일을 작성할 때마다 ESLint가 자동으로 실행되며, 커밋 (Commit) 전에는 테스트가 실행됩니다.
사람이 "lint 통과했어?", "테스트 작성했어?"라고 확인할 번거로움이 제로가 됩니다.
Hooks의 최대 장점: 컨텍스트 비소비
Hooks의 가장 큰 가치는 Claude Code의 컨텍스트 윈도우 (Context Window)를 소비하지 않는다는 점입니다.
Skills나 프롬프트로 "반드시 lint를 통과시켜 주세요"라고 쓰면, 그만큼 컨텍스트 윈도우를 소비합니다. 긴 세션 (Session)에서는 이것이 쌓여 성능 저하를 일으킵니다.
Hooks라면 컨텍스트 외부에서 처리가 완결됩니다. 품질 체크나 자동 수정은 가능한 한 Hooks로 몰아주는 것이 정석입니다.
제 개인 프로젝트에서는 다음과 같은 Hooks를 거의 모든 프로젝트에서 재사용하고 있습니다.
PostToolUse: write_file
→ prettier --write / eslint --fix
PreCommit
→ npm test / pytest
PreToolUse: bash
→ 위험 명령어 탐지 (rm -rf, sudo 등)
Plugins: 올인원 패키지로 배포하기
Plugins는 Skills + MCP + Hooks + 기타 설정을 하나로 묶은 **배포 패키지 (Distribution Package)**입니다.
Anthropic은 2026년 1월 Cowork 론칭 시, 11개의 역할별 플러그인 (Role-specific Plugins) (Sales/Finance/Marketing/Data Analysis/Legal 등)을 오픈 소스 (Open Source)로 공개했습니다.
공식 플러그인에서 배우는 설계
한 개발자가 지적했듯이, Claude Code의 학습법으로서 **공식 플러그인의 리버스 엔지니어링 (Reverse Engineering)**이 가장 효과적입니다.
급격히 진화하는 도구에서는 튜토리얼 기사가 금방 구식이 됩니다. 하지만 공식 플러그인의 소스 코드 (Source Code)는 항상 최신 설계 사상을 반영하고 있습니다.
예를 들어 Legal Plugin의 구조를 보면 Skills, MCP, Hooks의 조합 방식을 보여주는 모범 사례가 됩니다.
legal-plugin/
├── SKILL.md # 법무 리뷰 절차 정의
├── mcp-config.json # 문서 관리 시스템과의 연결
...
계약서 리뷰에서 GREEN/YELLOW/RED의 3단계로 판정하고, NDA의 트리아지 (Triage)를 자동화한다. 이 모든 것이 Skills와 MCP와 Hooks의 조합으로 만들어져 있습니다.
Compound Engineering: 돌릴 때마다 똑똑해지는 4단계 루프
이러한 확장 기능들을 조합한 실전 기법으로서, Compound Engineering이라는 접근 방식이 주목받고 있습니다. GitHub에 공식 플러그인인 compound-engineering-plugin이 공개되어 있습니다.
4단계 루프를 돌릴 때마다 시스템이 똑똑해지는 설계입니다.
| Step | 액션 | 확장 기능 사용법 |
|---|---|---|
| 1. Plan | 태스크 분해 | Skills로 템플릿화 |
| ... | ... | ... |
포인트는 4번째 단계입니다. 리뷰를 통해 얻은 지견을 Skills나 CLAUDE.md에 피드백함으로써, 다음 루프에서는 같은 실수를 반복하지 않도록 합니다.
인간 팀에서 말하는 '회고'를 시스템에組み込고 있는 셈입니다.
65,000개 이상의 Skills Marketplace, 단 주의사항
커뮤니티의 힘도 간과할 수 없습니다. Agent Skills Marketplace에는 2026년 5월 시점에 4,200개 이상의 Skills가 등록되어 있으며, 에코시스템 전체에는 65,000개가 넘는 스킬이 집약되어 있습니다 (Claude Code Plugins).
| 카테고리 | 스킬 수 |
|---|---|
| Tools | 22,506 |
| ... | ... |
단, 무시할 수 없는 리스크가 있습니다. 2025년에는 ClawHub에서 341개의 악의적인 Skills가 발견된 ClawHavoc 사건이 발생했습니다. 서드파티(Third-party) Skills에는 npm 웜(worm)이나 데이터 탈취 코드가 심겨 있을 리스크가 있습니다.
설치 전에 반드시 SKILL.md와 코드를 확인하십시오.
저 자신도 SNS에서 화제가 된 Skills를 시도해 보았다가, 데이터를 훔쳐보는 스크립트가 심겨 있는 사례를 발견한 적이 있습니다. 편리함과 안전은 트레이드오프(Trade-off) 관계입니다.
또한, SNS에서 화제가 되는 Skills에 달려들기보다, 자신의 업무에서 반복하고 있는 작업부터 Skill화하는 것이 결국에는 지름길입니다. 타인의 Skills는 '참고하는' 것입니다. 그대로 사용해서 업무에 딱 들어맞는 경우는 드뭅니다.
사용 구분 실전 매트릭스
마지막으로, 제가 일상적으로 사용하고 있는 판단 기준을 정리합니다.
| 하고 싶은 것 | 사용해야 할 것 | 이유 |
|---|---|---|
| 매번 같은 지시를 내리고 있다 | Skills | 프롬프트(Prompt) 고정화 |
| 외부 서비스의 데이터가 필요하다 | MCP | API 연결의 표준화 |
| 품질 체크를 자동화하고 싶다 | Hooks | 컨텍스트(Context) 비소비 |
| 위 사항들을 부서에 배포하고 싶다 | Plugin | 패키지화 |
| 코딩 규약을 지키게 하고 싶다 | Skills + Hooks | 지시 + 자동 수정 |
| Notion 데이터로 분석하고 싶다 | MCP + Skills | 연결 + 분석 절차 |
이 매트릭스를 곁에 두면 '망설여질 때의 판단 축'이 됩니다. 저도 이 매트릭스를 만들기 전까지는 매번 MCP와 Skills를 혼동하곤 했습니다.
"자신의 업무에서 반복하고 있는 작업"이 최고의 광맥
Claude Code를 극대화하는 데 있어 제가 가장 중요하다고 생각하는 것은 다음과 같습니다.
자신의 업무에서 반복하고 있는 작업을 리스트화하여 Skill화하는 것.
이것이 전부입니다.
타인의 Skills를 복사해서 붙여넣어도 자신의 업무에 맞지 않는 경우가 많습니다. 자신의 손으로 "아, 이거 매주 하고 있네"라고 깨달은 순간, SKILL.md에 정리하고 CLAUDE.md에 참조를 추가하는 것. 이 반복이 Claude Code 활용의 본체입니다.
저는 '신장의 야망'을 15년 동안 플레이해 와서, "포석을 깔아둠으로써 나중에 편해진다"는 감각이 몸에 배어 있습니다. Skill화는 바로 그러한 포석입니다. 오늘 30분을 들여 Skill화한 것이 3개월 뒤에 100시간을 구해줄 것입니다.
요약
요약
- Claude Code의 확장은
Skills / MCP / Hooks / Plugins의 4개 계층 - Skills: 프롬프트 템플릿 (매뉴얼). 태스크 이해 시 발동
- MCP: 외부 도구 연결 (열쇠 꾸러미). 770개 이상의 서버 이용 가능
- Hooks: 이벤트 트리거 (무인 경비). **컨텍스트 비소비 (Context non-consumption)**가 최대의 장점
- Plugins: 상기 요소들의 조합 패키지. 공식 플러그인의 리버스 엔지니어링 (Reverse Engineering)이 학습에 최적
- Compound Engineering의
Plan → Work → Review → Improve 루프를 통한 지속적 개선 - 65,000개 이상의 Skills가 존재하지만,
ClawHavoc 사건과 같은 악의적인 Skills 혼입 리스크 있음 - 가장 큰 노다지는,
자신의 업무에서 반복하고 있는 작업을 Skill화하는 것
Claude Code는, AI 에이전트라기보다 자신의 업무를 포석으로서 쌓아 올리는 개발 환경으로 진화하고 있습니다.
"재미있게 가보자"라고 생각할 수 있는 영역이라고, 저는 느끼고 있습니다.
관련 기사
- Vibe Coding 6+3 패턴: Claude Code 활용 패턴
- Claude Code MCP 안전 72h 인시던트: MCP 보안의 실례
AI 자동 생성 콘텐츠
본 콘텐츠는 Zenn AI의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기