기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
Amazon Q Developer에서 MCP 사용
모델 컨텍스트 프로토콜(MCP)은 AI 어시스턴트가 외부 도구 및 서비스와 상호 작용할 수 있는 개방형 표준입니다. Amazon Q Developer CLI는 이제 MCP를 지원하므로 사용자 지정 도구 및 서비스에 연결하여 Q의 기능을 확장할 수 있습니다.
MCP 서버 로드
Amazon Q는 백그라운드에서 MCP 서버를 로드하므로 모든 서버가 초기화될 때까지 기다리지 않고 즉시 상호 작용을 시작할 수 있습니다. 각 서버의 로드가 완료되면 도구를 점진적으로 사용할 수 있게 됩니다.
서버 상태 확인
/tools
명령을 사용하여 아직 로드 중인 서버와 이미 사용 가능한 도구를 확인할 수 있습니다.
서버 초기화 구성
다음을 사용하여 서버 초기화 제한 시간을 사용자 지정할 수 있습니다.
$ q settings mcp.initTimeout [value]
여기서 [value]
는 밀리초 단위의 제한 시간입니다. 이 설정은 Amazon Q가 상호 작용을 시작하기 전에 서버가 초기화될 때까지 기다리는 시간을 제어합니다.
도구 및 프롬프트
이 섹션에서는 Amazon Q Developer CLI에서 MCP 도구 및 프롬프트를 사용하는 방법을 다룹니다.
MCP 도구 이해
MCP 도구는 MCP 서버가 Amazon Q Developer CLI에 노출하는 실행 가능한 함수입니다. 이를 통해 Amazon Q Developer는 사용자를 대신하여 작업을 수행하고, 데이터를 처리하고, 외부 시스템과 상호 작용할 수 있습니다.
MCP의 각 도구에는 다음이 있습니다.
-
이름: 도구의 고유 식별자
-
설명: 도구가 수행하는 작업에 대한 사람이 읽을 수 있는 설명
-
입력 스키마: 도구가 허용하는 파라미터를 정의하는 JSON 스키마
-
주석: 도구의 동작 및 효과에 대한 선택적 힌트
사용 가능한 도구 검색
Q CLI 세션에서 사용할 수 있는 도구를 확인하려면:
/tools
이 명령은 기본 제공 도구와 MCP 서버에서 제공하는 도구를 포함하여 사용 가능한 모든 도구를 표시합니다.
도구는 사용 방법을 결정하는 다양한 권한 수준을 가질 수 있습니다.
-
자동 승인: 이러한 도구는 각 간접 호출에 대한 명시적 권한 없이 사용할 수 있습니다.
-
승인 필요: 이러한 도구에는 사용할 때마다 명시적 권한이 필요합니다.
-
위험: 이러한 도구는 잠재적으로 위험한 것으로 표시되며 승인 전에 신중하게 고려해야 합니다.
도구 사용
다음 두 가지 방법으로 MCP 도구를 사용할 수 있습니다.
-
자연어 요청: 원하는 작업을 설명하기만 하면 Q가 사용할 도구를 결정합니다.
-
직접 도구 호출: 특정 도구를 사용하도록 Q를 명시적으로 요청할 수도 있습니다.
프롬프트 작업
MCP 서버는 특정 작업에서 Q를 안내하는 데 도움이 되는 사전 정의된 프롬프트를 제공할 수 있습니다.
-
사용 가능한 프롬프트 나열:
/prompts
-
프롬프트를 사용합니다.
-
@
prompt-name
arg1 arg2
-
인수와 함께 프롬프트를 사용하는 예:
@fetch https://docs.aws.amazon.com/amazonq/latest/qdeveloper-ug/command-line-mcp-configuration.html
주요 이점
-
확장성: Amazon Q를 특정 도메인 또는 워크플로를 위한 특수 도구에 연결
-
사용자 지정: 특정 요구 사항에 맞는 사용자 지정 도구 생성
-
에코시스템 통합: MCP 호환 도구의 증가하는 에코시스템 활용
-
표준화: 여러 AI 어시스턴트에서 지원하는 일관된 프로토콜 사용
-
유연성: MCP를 사용하면 동일한 도구 통합을 유지하면서 서로 다른 LLM 공급자 간에 전환할 수 있습니다.
-
보안: 로컬 MCP 서버를 사용하여 인프라 내에 데이터 유지
MCP 아키텍처
MCP는 다음과 같은 클라이언트-서버 아키텍처를 따릅니다.
-
MCP 호스트: MCP를 통해 데이터에 액세스하려는 Amazon Q Developer CLI와 같은 프로그램
-
MCP 클라이언트: 서버와의 1:1 연결을 유지하는 프로토콜 클라이언트
-
MCP 서버: 표준화된 모델 컨텍스트 프로토콜을 통해 각각 특정 기능을 노출하는 경량 프로그램
-
로컬 데이터 소스: MCP 서버가 안전하게 액세스할 수 있는 컴퓨터의 파일, 데이터베이스 및 서비스
-
원격 서비스: MCP 서버가 연결할 수 있는 인터넷을 통해(예: APIs를 통해) 사용 가능한 외부 시스템
예 MCP 통신 흐름
User | v +------------------+ +-----------------+ +------------------+ | | | | | | | Amazon Q Dev | --> | MCP Client API | --> | MCP Server | | | | | | | +------------------+ +-----------------+ +------------------+ | v +------------------+ | | | External Service | | | +------------------+
MCP를 통한 사용자, Amazon Q Developer CLI 및 외부 서비스 간의 통신 흐름
핵심 MCP 개념
도구
도구는 MCP 서버가 클라이언트에 노출하는 실행 가능한 함수입니다. 이를 통해 Amazon Q는 다음을 수행할 수 있습니다.
-
외부 시스템에서 작업 수행
-
특수한 방식으로 데이터 처리
-
APIs 및 서비스와 상호 작용
-
사용자를 대신하여 명령 실행
도구는 고유한 이름, 설명, 입력 스키마(JSON 스키마 사용) 및 도구 동작에 대한 선택적 주석으로 정의됩니다.
프롬프트
프롬프트는 특정 작업에서 Amazon Q를 안내하는 데 도움이 되는 사전 정의된 템플릿입니다. 다음과 같은 작업이 가능합니다.
-
동적 인수 수락
-
리소스의 컨텍스트 포함
-
여러 상호 작용 연결
-
특정 워크플로 안내
-
UI 요소로서의 표면(슬래시 명령 등)
리소스
리소스는 다음과 같이 MCP 서버가 Amazon Q에 제공할 수 있는 데이터를 나타냅니다.
-
파일 콘텐츠
-
데이터베이스 레코드
-
API 응답
-
설명서
-
구성 데이터