Agent Skills를 활용한 빌드
Agent skills는 이동 가능한 명령 집합으로, 특정 작업에 필요한 도메인 지식을 AI 코딩 어시스턴트에게 제공합니다. MCP 개발 시에는 배포 모델, tool 패턴, 권한 부여 방식과 같은 설계 결정 사항들을 담아서, 에이전트가 사용 사례를 이해하고 해당 환경에 맞는 서버를 구성할 수 있도록 도와줍니다.
사용 가능한 skills
MCP 개발에 필요한 reference skill들은
mcp-server-dev plugin 형태로 제공됩니다.
이 plugin은 다음과 같은 3가지 구성 skill을 포함하고 있습니다.
| Skill | 목적 |
|---|---|
build-mcp-server | 시작점입니다. 사용 사례를 분석하여 배포 모델과 도구 설계 패턴을 선택하고 특화된 스킬로 연결합니다. |
build-mcp-app | 채팅 창 내에 인라인으로 표시되는 대화형 UI 위젯(폼, 픽커, 대시보드 등)을 추가합니다. |
build-mcpb | Node나 Python 없이도 사용할 수 있도록 로컬 stdio 서버와 런타임을 함께 패키징합니다. |
각 skill은 SKILL.md 파일과 함께,
권한 부여 흐름, tool 디자인 패턴, 위젯 템플릿, 매니페스트 스키마 등의 지원 자료가 포함된
references/ 폴더를 제공합니다. 에이전트는 필요할 때 이 자료들을 읽어들입니다. 이 파일들은 오픈 형식을 따르므로 표준을 구현한 모든 에이전트에서 사용할 수 있습니다. 예를 들어 Claude Code에 설치하려면 다음과 같이 합니다.
/plugin marketplace add anthropics/claude-plugins-official
/plugin install mcp-server-dev
다른 에이전트의 경우, 해당 에이전트의 skills 또는 extensions 카탈로그를 확인하거나,
skill directories
(SKILL.md 및 references/ 포함)를 에이전트의 skills 위치에 클론하여 추가할 수 있습니다.
빌드 시작하기
skill들을 설치한 후, 에이전트에게 MCP 서버 구축을 요청하면 됩니다. 시작 skill은 자연어로 된 요청 시 자동으로 실행되거나, 에이전트의 skill 호출 구문을 사용해 직접 호출할 수도 있습니다.
이 skill은 코드를 작성하기 전에 간단한 발견 단계를 거칩니다. 이 과정에서 다음과 같은 질문들이 나올 수 있습니다.
- 연결 대상 — 클라우드 API, 로컬 프로세스, 파일시스템, 하드웨어 등
- 사용자 범위 — 본인만 사용할지, 팀 전체만 사용할지, 아니면 누구나 설치 가능할지
- 수행 작업의 규모 — 몇 가지 간단한 작업만 할지, 대규모 API를 감싸서 처리할지
- 사용자와의 상호작용 필요성 — 일반 텍스트 결과만 필요한지, elicitation을 통한 구조화된 입력이 필요한지, 아니면 풍부한 UI 위젯이 필요한지
- 상위 계층 권한 부여 방식 — API 키, OAuth 2.0, 아니면 권한 부여가 필요 없는지
만약 처음 보내는 메시지에 이미 이 정보들이 포함되어 있으면, 에이전트는 바로 추천 단계로 넘어갑니다.
배포 방식
발견 단계를 바탕으로, 이 skill은 4가지 배포 방식 중 하나를 추천하고 해당 방식에 맞게 서버를 구성합니다.
**원격 Streamable HTTP**는 클라우드 API를 감싸는 모든 경우의 기본 배포 방식입니다. 설치 과정이 전혀 없으며, 단 한 번의 배포로 모든 사용자에게 서비스를 제공할 수 있고, 서버가 리디렉션과 토큰 저장을 처리할 수 있어 OAuth 흐름도 정상적으로 작동합니다. 참고 skill에는 Cloudflare Workers와 이동 가능한 Express/FastMCP 설정을 위한 scaffolding도 포함되어 있습니다.
**MCP apps**는 채팅 창 내에 검색 가능한 픽커, 차트, 실시간 대시보드와 같은 대화형 위젯을 추가하여 서버 기능을 확장합니다. elicitation의 평면 형식 제약 조건이 적용되지 않을 때 이 skill이 build-mcp-app로 작업을 넘깁니다.
**MCP Bundles (MCPB)**는 로컬 서버와 런타임을 하나의 .mcpb 아카이브로 패키징하여, Node나 Python을 설치하지 않아도 사용할 수 있도록 합니다. 서버가 로컬 파일 읽기, 데스크톱 앱 제어, localhost 서비스와 통신해야 하는 경우 이 방식을 사용합니다. 이 경우에도 작업은 build-mcpb로 넘어갑니다.
**로컬 stdio**는 프로토타이핑용으로 계속 사용할 수 있으며, 나중에 배포할 준비가 되면 MCPB로 업그레이드할 수 있습니다.
다음 단계
에이전트가 서버의 기본 구조를 만들었다면, tool 설명과 오류 처리 기능을 계속 개선한 뒤 테스트를 거쳐 실제로 배포합니다.