모델 컨텍스트 프로토콜 (MCP) 서버는 대규모 언어 모델 (LLM) 또는 AI 애플리케이션에 컨텍스트, 데이터 또는 기능을 제공하는 외부 서비스 간의 프록시 역할을 합니다. MCP 서버는 AI 애플리케이션을 데이터베이스 및 웹 서비스와 같은 외부 시스템에 연결하여 응답을 AI 애플리케이션이 이해할 수 있는 형식으로 변환합니다.
서버 설정
사용하기 전에 MCP 서버를 사용 설정하고 인증을 설정해야 합니다. Google 및 Google Cloud 원격 MCP 서버 사용에 대한 자세한 내용은 Google Cloud MCP 서버 개요를 참고하세요.
서버 엔드포인트
MCP 서비스 엔드포인트는 AI 애플리케이션 (MCP 클라이언트의 호스트)이 보안 표준 연결을 설정하는 데 사용하는 MCP 서버의 네트워크 주소 및 통신 인터페이스 (일반적으로 URL)입니다. LLM이 컨텍스트를 요청하거나 도구를 호출하거나 리소스에 액세스하는 접점입니다. Google MCP 엔드포인트는 전역 또는 리전일 수 있습니다.
App Lifecycle Manager API MCP 서버에는 다음과 같은 MCP 엔드포인트가 있습니다.
- https://saasservicemgmt.googleapis.com/mcp
MCP 도구
MCP 도구는 MCP 서버가 LLM 또는 AI 애플리케이션에 노출하여 실제 작업을 수행하는 함수 또는 실행 가능한 기능입니다.
saasservicemgmt MCP 서버에는 다음과 같은 도구가 있습니다.
| MCP 도구 | |
|---|---|
| list_saas | SaaS 리소스를 나열합니다. 필수 매개변수: 'parent'(예: projects/my-project/locations/us-central1) 선택적 매개변수: 'page_size', 'page_token', 'filter', 'order_by' |
| get_saas | SaaS 리소스를 가져옵니다. 필수 매개변수: 'name'(예: projects/my-project/locations/us-central1/saas/my-saas) |
| create_saas | SaaS 리소스를 만듭니다. 필수 매개변수: 'parent'(예: projects/my-project/locations/us-central1), 'saas_id', 'saas' 선택적 매개변수: 'validate_only', 'request_id' |
| list_tenants | 테넌트 리소스를 나열합니다. 필수 매개변수: 'parent'(예: projects/my-project/locations/us-central1) 선택적 매개변수: 'page_size', 'page_token', 'filter', 'order_by' |
| get_tenant | 테넌트 리소스를 가져옵니다. 필수 매개변수: 'name'(예: projects/my-project/locations/us-central1/tenants/my-tenant) |
| create_tenant | 테넌트 리소스를 만듭니다. 필수 매개변수: 'parent'(예: projects/my-project/locations/us-central1), 'tenant_id', 'tenant' 선택적 매개변수: 'validate_only', 'request_id' |
| list_unit_kinds | UnitKind 리소스를 나열합니다. 필수 매개변수: 'parent'(예: projects/my-project/locations/us-central1) 선택적 매개변수: 'page_size', 'page_token', 'filter', 'order_by' |
| get_unit_kind | UnitKind 리소스를 가져옵니다. 필수 매개변수: 'name'(예: projects/my-project/locations/us-central1/unitKinds/my-unitkind) |
| create_unit_kind | UnitKind 리소스를 만듭니다. 필수 매개변수: 'parent'(예: projects/my-project/locations/us-central1), 'unit_kind_id', 'unit_kind' 선택적 매개변수: 'validate_only', 'request_id' |
| list_units | 단위 리소스를 나열합니다. 필수 매개변수: 'parent'(예: projects/my-project/locations/us-central1) 선택적 매개변수: 'page_size', 'page_token', 'filter', 'order_by' |
| get_unit | 단위 리소스를 가져옵니다. 필수 매개변수: 'name'(예: projects/my-project/locations/us-central1/units/my-unit) |
| create_unit | 단위 리소스를 만듭니다. 필수 매개변수: 'parent'(예: projects/my-project/locations/us-central1), 'unit_id', 'unit' 선택적 매개변수: 'validate_only', 'request_id' |
| list_unit_operations | UnitOperation 리소스를 나열합니다. 필수 매개변수: 'parent'(예: projects/my-project/locations/us-central1) 선택적 매개변수: 'page_size', 'page_token', 'filter', 'order_by' |
| get_unit_operation | UnitOperation 리소스를 가져옵니다. 필수 매개변수: 'name'(예: projects/my-project/locations/us-central1/unitOperations/my-unitoperation) |
| list_releases | 출시 리소스를 나열합니다. 필수 매개변수: 'parent'(예: projects/my-project/locations/us-central1) 선택적 매개변수: 'page_size', 'page_token', 'filter', 'order_by' |
| get_release | 출시 리소스를 가져옵니다. 필수 매개변수: 'name'(예: projects/my-project/locations/us-central1/releases/my-release) |
| create_release | 출시 리소스를 만듭니다. 필수 매개변수: 'parent'(예: projects/my-project/locations/us-central1), 'release_id', 'release' 선택적 매개변수: 'validate_only', 'request_id' |
| list_rollouts | 출시 리소스를 나열합니다. 필수 매개변수: 'parent'(예: projects/my-project/locations/us-central1) 선택적 매개변수: 'page_size', 'page_token', 'filter', 'order_by' |
| get_rollout | 출시 리소스를 가져옵니다. 필수 매개변수: 'name'(예: projects/my-project/locations/us-central1/rollouts/my-rollout) |
| list_rollout_kinds | RolloutKind 리소스를 나열합니다. 필수 매개변수: 'parent'(예: projects/my-project/locations/us-central1) 선택적 매개변수: 'page_size', 'page_token', 'filter', 'order_by' |
| get_rollout_kind | RolloutKind 리소스를 가져옵니다. 필수 매개변수: 'name'(예: projects/my-project/locations/us-central1/rolloutKinds/my-rolloutkind) |
| create_rollout_kind | RolloutKind 리소스를 만듭니다. 필수 매개변수: 'parent'(예: projects/my-project/locations/us-central1), 'rollout_kind_id', 'rollout_kind' 선택적 매개변수: 'validate_only', 'request_id' |
| list_maintenances | 유지보수 리소스를 나열합니다. 필수 매개변수: 'parent'(예: projects/my-project/locations/us-central1) 선택적 매개변수: 'page_size', 'page_token', 'filter', 'order_by' |
| get_maintenance | 유지보수 리소스를 가져옵니다. 필수 매개변수: 'name'(예: projects/my-project/locations/us-central1/maintenances/my-maintenance) |
| create_maintenance | 유지보수 리소스를 만듭니다. 필수 매개변수: 'parent'(예: projects/my-project/locations/us-central1), 'maintenance_id', 'maintenance' 선택적 매개변수: 'validate_only', 'request_id' |
| list_resource_maintenances | ResourceMaintenance 리소스를 나열합니다. 필수 매개변수: 'parent'(예: projects/my-project/locations/us-central1) 선택적 매개변수: 'page_size', 'page_token', 'filter', 'order_by' |
| get_resource_maintenance | ResourceMaintenance 리소스를 가져옵니다. 필수 매개변수: 'name'(예: projects/my-project/locations/us-central1/resourceMaintenances/my-resourcemaintenance) |
| list_flags | 플래그 리소스를 나열합니다. 필수 매개변수: 'parent'(예: projects/my-project/locations/us-central1) 선택적 매개변수: 'page_size', 'page_token', 'filter', 'order_by' |
| get_flag | 플래그 리소스를 가져옵니다. 필수 매개변수: 'name'(예: projects/my-project/locations/us-central1/flags/my-flag) |
| create_flag | 플래그 리소스를 만듭니다. 필수 매개변수: 'parent'(예: projects/my-project/locations/us-central1), 'flag_id', 'flag' 선택적 매개변수: 'validate_only', 'request_id' |
| list_flag_revisions | FlagRevision 리소스를 나열합니다. 필수 매개변수: 'parent'(예: projects/my-project/locations/us-central1) 선택적 매개변수: 'page_size', 'page_token', 'filter', 'order_by' |
| get_flag_revision | FlagRevision 리소스를 가져옵니다. 필수 매개변수: 'name'(예: projects/my-project/locations/us-central1/flagRevisions/my-flagrevision) |
| create_flag_revision | FlagRevision 리소스를 만듭니다. 필수 매개변수: 'parent'(예: projects/my-project/locations/us-central1), 'flag_revision_id', 'flag_revision' 선택적 매개변수: 'validate_only', 'request_id' |
| list_flag_releases | FlagRelease 리소스를 나열합니다. 필수 매개변수: 'parent'(예: projects/my-project/locations/us-central1) 선택적 매개변수: 'page_size', 'page_token', 'filter', 'order_by' |
| get_flag_release | FlagRelease 리소스를 가져옵니다. 필수 매개변수: 'name'(예: projects/my-project/locations/us-central1/flagReleases/my-flagrelease) |
| create_flag_release | FlagRelease 리소스를 만듭니다. 필수 매개변수: 'parent'(예: projects/my-project/locations/us-central1), 'flag_release_id', 'flag_release' 선택적 매개변수: 'validate_only', 'request_id' |
| list_flag_attributes | FlagAttribute 리소스를 나열합니다. 필수 매개변수: 'parent'(예: projects/my-project/locations/us-central1) 선택적 매개변수: 'page_size', 'page_token', 'filter', 'order_by' |
| get_flag_attribute | FlagAttribute 리소스를 가져옵니다. 필수 매개변수: 'name'(예: projects/my-project/locations/us-central1/flagAttributes/my-flagattribute) |
| create_flag_attribute | FlagAttribute 리소스를 만듭니다. 필수 매개변수: 'parent'(예: projects/my-project/locations/us-central1), 'flag_attribute_id', 'flag_attribute' 선택적 매개변수: 'validate_only', 'request_id' |
MCP 도구 사양 가져오기
MCP 서버의 모든 도구에 대한 MCP 도구 사양을 가져오려면 tools/list 메서드를 사용하세요. 다음 예시에서는 curl을 사용하여 MCP 서버 내에서 현재 사용할 수 있는 모든 도구와 사양을 나열하는 방법을 보여줍니다.
| curl 요청 |
|---|
curl --location 'https://saasservicemgmt.googleapis.com/mcp' \ --header 'content-type: application/json' \ --header 'accept: application/json, text/event-stream' \ --data '{ "method": "tools/list", "jsonrpc": "2.0", "id": 1 }' |