[MCP_1] GCP Vertex AI 환경에서 Claude Code 연동

코딩을 뿌리는 감자·2025년 11월 2일

MCP

목록 보기
1/4

목차

Claude Code vs. Claude Desktop

GCP 연동 방법을 알아보기 전에, 먼저 왜 Claude Desktop이 아닌 Claude Code를 사용하는지 그 당위성을 살펴보겠다.

Claude Desktop 역시 최근에는 MCP 연동을 지원하지만, 활용 측면에서는 비교적 제약이 많다.

연동 과정 자체는 Desktop 쪽이 간단하지만, 실제 IDE 환경과 밀접하게 통합되어 개발 워크플로우에 깊게 녹아든 것은 Claude Code라고 할 수 있다. 이와 같은 차이에 대해 다양한 개발자들의 의견도 존재한다. 예를 들어, Reddit 커뮤니티에서는 "기획 단계에서는 Desktop, 실행 단계에서는 Code가 더 적합하다", "코딩 프로젝트에서는 Code가 압도적으로 우위에 있다" 와 같은 평가가 공유되고 있다.

개발자들의 다양한 의견 또한 확인할 수 있다: reddit : code vs. desktop

( 기업 입장에서 조금 더 싸게 먹힌다는 이야기도 … )

GCP (Google Cloud Platform)

GCP는 클라우드 서비스 플랫폼으로 우리에게 친숙한 AWS..의 구글 버전이라고 간단하게 말할 수 있다.

여기서 제공하는 주요 서비스는

  • 서버 / 컨테이너 실행 환경
  • 데이터베이스 / 분석
  • AI / ML 서비스 ( Vertex AI )

가 있다.

Vertex AI

제공하는 주요 서비스 중, 이번 Claude Code를 사용함에 있어 주요하게 봐야하는 것은 Vertex AI이다.

Vertex AI는 GCP의 AI 전용 플랫폼인데, 여기서 구글 자체 모델 뿐만 아니라, 외부 모델도 사용할 수 있다. 그 외부 모델로 이번에 우리가 Anthropic Claude를 사용한 것이다.

Claude

외부 모델 (Anthropic) 또한, 클라우드 서비스 플랫폼 ( AWS, GCP … ) 에게 해당 제품을 사용할 수 있는 경로를 제공해 준다:

  1. Anthropic API 직접 사용 - Anthropic에서 바로 제공
  2. AWS Bedrock을 통해 사용 - Amazon 클라우드 경유
  3. Google Vertex AI를 통해 사용 - Google 클라우드 경유

우리가 "Claude를 Vertex AI로 쓴다"고 말하는 이유가 여기 있다. Anthropic의 원 API를 직접 쓰는 게 아니라, GCP의 vertex AI를 통해 Anthropic Claude를 호출하기 때문이다.

실제 연동 과정

먼저 터미널에서 연동 과정을 확인해 보았다.

GCP cli 설치하기

brew 명령어로 GCP client를 설치해 주었다.

brew install --cask google-cloud-sdk

GCP cli login

gcloud init

gcloud init을 하게 되면, 환경 변수(config)를 설정할 수 있게 된다. 실제 config 파일의 기본 저장 위치는 ~/.config/gcloud/configurations/config_default 여기이다.

gcloud init을 통해 요청하는 값들을 넣어준다.

  • 계정 로그인: 생성한 계정 정보
  • 사용할 프로젝트 선택: project
  • region/zone 기본값 선택: 사용한 region

이후, 아래 명령어를 통해 config 가 잘 작성되었는지 확인할 수 있다.

gcloud config list

이렇게 설정되었음을 확인할 수 있었다.

status 확인

claude code로 연동을 확인하였으나,

Invalid API key : Please run /login 이 나오게 되었다.

이는 Claude Code가 Anthropic API key를 기대하였으나, 찾지 못한 상태이다.

하지만, 위에서 /login 을 실행하라고 하지만, 이는 Anthropic API 연동용 명령어이므로, Google Vertex AI 모드에서는 사용할 수 없다. Vertex AI에서는 gcloud CLI를 통한 ADC(Application Default Credentials) 인증을 진행해야 한다.

Auth 추가 (gcloud auth application-default login)

auth 를 추가하는 과정이 빠진 것 같아, 아래 명령어를 통해 ADC 파일
(~/.config/gcloud/application_default_credentials.json)을 로컬에 생성하는 과정을 진행해 주었다.

gcloud auth application-default login

이후, 아래 명령어를 통해 access token이 잘 발급되어 ADC가 잘 작동하는 것을 확인할 수 있다.

gcloud auth application-default print-access-token

환경 변수 저장

위에서 우리가 설정한 환경 변수의 경우, export 해서 세션에서만 쓰면 터미널 종료 시 사라지게 된다. 그래서 .zshrc(터미널이 실행될 때마다 자동으로 읽히는 설정 파일)에 저장하였다. 이를 통해 Claude Code는 실행될 때, 프로세스 환경변수를 읽어 Vertex AI 모드로 전환할 수 있게 된다.

nano ~/.zshrc 를 입력 한 후, 맨 밑에 아래 환경 변수들을 적어주었다.

export CLAUDE_CODE_USE_VERTEX=1
export CLOUD_ML_REGION=생성한 region
export ANTHROPIC_VERTEX_PROJECT_ID=생성한 프로젝트

이후, 저장하고 나온 후, source ~/.zshrc 를 통해 방금 변경한 내용을 현재 실행 중인 쉘이 파일 내용을 다시 읽어와 즉시 적용해주도록 한다.

환경 변수가 잘 저장되었음을 확인하기 위해 echo를 통해 환경 변수가 잘 저장되었음을 확인하였다.

echo $CLAUDE_CODE_USE_VERTEX
echo $CLOUD_ML_REGION
echo $ANTHROPIC_VERTEX_PROJECT_ID

연결 확인

이제 Invalid API key 와 같은 연결 불가 메시지가 사라지고 잘 응답하는 것을 확인할 수 있다.

0개의 댓글