제목
Stop Losing Prompts: Build Your Own MCP Prompt Registry
카테고리
프로그래밍/소프트웨어 개발
서브카테고리
인공지능
대상자
- 소프트웨어 개발자, LLM(대규모 언어 모델) 사용자, DevOps 엔지니어
- 중간 수준 이상의 기술 지식을 가진 사용자 (MCP 프로토콜 구현, JSON 및 CLI 도구 활용)
핵심 요약
- MCP(Model Context Protocol): LLM과 애플리케이션 간 컨텍스트 공유를 위한 표준화된 프로토콜로, 프롬프트 관리를 위한 핵심 기능 제공.
- 프롬프트 계층 구조:
- 프로젝트별 프롬프트 (prompts_data/
)
- 사용자 전역 기본값 (~/.promptregistry/default_prompts/
)
- 초기 프로젝트 기본값 (default_prompts_data/
)
- MCP 도구:
add_prompt
,update_prompt
,filter_prompts_by_tags
등으로 프롬프트를 저장, 수정, 태그 기반 검색 가능.
섹션별 세부 요약
1. 문제 정의: 프롬프트 손실
- 개발자가 프롬프트를 재사용하는 데 어려움을 겪는 상황 설명 (예:
notes_final_v3.md
, Slack 채팅, 주석 등에서 프롬프트 찾기 어려움). - 기존 솔루션 (Langfuse, Helicone 등)은 대규모 AI 애플리케이션에 적합하지만, 간단한 작업에 과도한 복잡성을 유발.
2. MCP 프로토콜 소개
- MCP: LLM과 애플리케이션 간 컨텍스트 공유를 위한 표준화된 프로토콜.
- 프롬프트를 재사용 가능한 템플릿, 동적 변수 삽입, 태그 기반 검색, UI 기반 사용자 제어로 관리.
- MCP가 지원하는 주요 엔드포인트:
prompts/list
,prompts/get
.
3. 프롬프트 계층 구조 및 관리
- 프로젝트별 프롬프트: 현재 프로젝트에 최우선 적용.
- 사용자 전역 기본값: 모든 프로젝트에서 공유 가능한 개인 기본값.
- 초기 프로젝트 기본값: 프로젝트 초기 설정 시 사용자 전역 기본값에 자동 복사.
4. MCP 서버 구현 예시
package.json
: Node.js 18 이상 사용,@modelcontextprotocol/sdk
및zod
의존성 포함.tsconfig.json
:es2022
,esnext
모듈 설정,dist
디렉토리로 컴파일.- 프롬프트 JSON 구조:
id
,description
,content
,tags
,variables
,metadata
등 필드 지원.
5. MCP 서버 핵심 메커니즘
McpServer
및StdioServerTransport
: JSON-RPC 메시지 전송을 위한 표준화된 채널.stdout
vsstderr
:stdout
은 프로토콜 전용,stderr
은 로깅 및 클라이언트 알림용.registerOrUpdateMcpPrompt
: 프롬프트 등록/업데이트 로직,mcpServer.prompt()
활용.
결론
- MCP를 활용한 프롬프트 레지스트리 구현: 프로젝트별, 사용자 전역, 초기 기본값을 계층적으로 관리하여 프롬프트 재사용 효율성 향상.
- 실무 적용 팁:
package.json
과tsconfig.json
설정에 주의,stdout
과stderr
의 용도 구분,console.error()
사용. - MCP는 LLM 도구와의 통합을 위한 필수 기술이며, 개발자 생산성 향상에 기여.