MCP 클라이언트를 구축하는 마지막 단계는 프롬프트 기능을 구현하는 것입니다. 이를 통해 서버에서 사용 가능한 모든 프롬프트를 나열하고 변수가 채워진 특정 프롬프트를 가져올 수 있습니다.
List Prompts 구현하기
list_prompts 메서드는 간단합니다. 세션의 list prompts 함수를 호출하고 프롬프트를 반환합니다:
개별 프롬프트 가져오기
get_prompt 메서드는 변수 보간(interpolation)을 처리하기 때문에 더 흥미롭습니다. 프롬프트를 요청할 때, 프롬프트 함수에 키워드 인자로 전달되는 인자를 제공합니다:
예를 들어, 서버에 doc_id 매개변수를 기대하는 format_document 프롬프트가 있다면, 인자 딕셔너리에는 {"doc_id": "plan.md"}가 포함됩니다. 이 값은 프롬프트 템플릿에 보간됩니다.
실제로 프롬프트 테스트하기
구현이 완료되면 CLI를 통해 프롬프트를 테스트할 수 있습니다. 슬래시(/)를 입력하면 사용 가능한 프롬프트가 명령어로 표시됩니다. "format"과 같은 프롬프트를 선택하면 사용 가능한 문서 중에서 선택하라는 메시지가 표시됩니다.

문서를 선택하면 시스템이 완전한 프롬프트를 Claude에 전송합니다. AI는 형식 지정 지침과 문서 ID를 모두 받은 다음, 사용 가능한 도구를 사용하여 콘텐츠를 가져오고 처리합니다.
프롬프트 작동 방식

프롬프트는 클라이언트가 사용할 수 있는 사용자 및 어시스턴트 메시지 집합을 정의합니다. 이는 고품질이고 충분히 테스트되었으며 MCP 서버의 목적과 관련이 있어야 합니다. 워크플로는 다음과 같습니다:
- 서버의 기능과 관련된 프롬프트를 작성하고 평가합니다
@mcp.prompt데코레이터를 사용하여 MCP 서버에서 프롬프트를 정의합니다- 클라이언트는 언제든지 프롬프트를 요청할 수 있습니다
- 클라이언트가 제공한 인자는 프롬프트 함수에서 키워드 인자가 됩니다
- 함수는 AI 모델에 전달할 준비가 된 형식화된 메시지를 반환합니다
이 시스템은 변수를 통한 커스터마이징을 허용하면서도 일관성을 유지하는 재사용 가능하고 매개변수화된 프롬프트를 생성합니다. 이는 AI가 매번 적절하게 구조화된 지침을 받도록 보장하고자 하는 복잡한 워크플로에 특히 유용합니다.