IDE를 Cloud SQL에 연결

이 가이드에서는 데이터베이스용 MCP Toolbox를 사용하여 Cloud SQL 인스턴스를 Model Context Protocol (MCP)을 지원하는 다양한 통합 개발 환경(IDE) 및 개발자 도구에 연결하는 방법을 설명합니다. 이러한 도구를 사용하여 SQL 쿼리를 실행하고 데이터베이스와 상호작용합니다.

Model Context Protocol (MCP)은 대규모 언어 모델 (LLM)을 Cloud SQL과 같은 데이터 소스에 연결하기 위한 개방형 프로토콜입니다. 지원되는 IDE는 다음과 같습니다.

시작하기 전에

  1. Google Cloud 콘솔의 프로젝트 선택기 페이지에서 Google Cloud 프로젝트를 선택하거나 만듭니다.

  2. Google Cloud프로젝트에 결제가 사용 설정되어 있는지 확인합니다.

  3. Google Cloud프로젝트에서 Cloud SQL Admin API를 사용 설정합니다.

  4. Cloud SQL 인스턴스에 공개 IP가 설정되어 있는지 확인합니다. 기본적으로 Cloud SQL은 공개 IP 주소를 새 인스턴스에 할당합니다. 툴박스는 Cloud SQL 언어 커넥터를 사용하여 안전하게 연결됩니다.

  5. 이 태스크를 완료하는 데 필요한 역할과 권한을 구성합니다. 인스턴스에 연결하려면 Cloud SQL > 클라이언트 역할 (roles/cloudsql.client) 또는 이에 상응하는 Identity and Access Management 권한이 필요합니다.

  6. 환경에 애플리케이션 기본 사용자 인증 정보(ADC)를 구성합니다.

  7. 데이터베이스 사용자를 만들거나 재사용하고 사용자 이름과 비밀번호를 준비합니다.

MCP Toolbox 설치

  1. 툴박스를 설치하려면 운영체제 및 CPU 아키텍처에 해당하는 바이너리를 다운로드하세요.

    linux/amd64

    curl -O https://storage.googleapis.com/genai-toolbox/v0.7.0/linux/amd64/toolbox

    darwin/arm64

    curl -O https://storage.googleapis.com/genai-toolbox/v0.7.0/darwin/arm64/toolbox

    darwin/amd64

    curl -O https://storage.googleapis.com/genai-toolbox/v0.7.0/darwin/amd64/toolbox

    windows/amd64

    curl -O https://storage.googleapis.com/genai-toolbox/v0.7.0/windows/amd64/toolbox
  2. 바이너리를 실행 가능하게 만듭니다.

    chmod +x toolbox
    
  3. 다음 명령어를 사용하여 설치를 확인합니다.

    ./toolbox --version
    

MCP 클라이언트 구성

Claude 코드


1. Claude Code를 설치합니다.
2. 프로젝트 루트에 .mcp.json 파일이 없으면 만듭니다.
3. 구성을 추가하고 환경 변수를 값으로 바꾼 후 저장합니다.


{
  "mcpServers": {
    "cloud-sql-mysql": {
      "command": "./PATH/TO/toolbox",
      "args": ["--prebuilt","cloud-sql-mysql","--stdio"],
      "env": {
        "CLOUD_SQL_MYSQL_PROJECT": "PROJECT_ID",
        "CLOUD_SQL_MYSQL_REGION": "REGION",
        "CLOUD_SQL_MYSQL_INSTANCE":"INSTANCE_ID",
        "CLOUD_SQL_MYSQL_DATABASE": "DATABASE_NAME",
        "CLOUD_SQL_MYSQL_USER": "USER_ID",
        "CLOUD_SQL_MYSQL_PASSWORD": "PASSWORD"
      }
    }
  }
}

Claude Desktop


1. Claude 데스크톱을 열고 설정으로 이동합니다.
2. 개발자 탭에서 구성 수정을 탭하여 구성 파일을 엽니다.
3. 구성을 추가하고 환경 변수를 값으로 바꾼 후 저장합니다.


{
  "mcpServers": {
    "cloud-sql-mysql": {
      "command": "./PATH/TO/toolbox",
      "args": ["--prebuilt","cloud-sql-mysql","--stdio"],
      "env": {
        "CLOUD_SQL_MYSQL_PROJECT": "PROJECT_ID",
        "CLOUD_SQL_MYSQL_REGION": "REGION",
        "CLOUD_SQL_MYSQL_INSTANCE":"INSTANCE_ID",
        "CLOUD_SQL_MYSQL_DATABASE": "DATABASE_NAME",
        "CLOUD_SQL_MYSQL_USER": "USER_ID",
        "CLOUD_SQL_MYSQL_PASSWORD": "PASSWORD"
      }
    }
  }
}


5. Claude Desktop을 다시 시작합니다.
6. 새 채팅 화면에 새 MCP 서버와 함께 망치 (MCP) 아이콘이 표시됩니다.

Cline


1. VS Code에서 Cline 확장 프로그램을 열고 MCP Servers 아이콘을 탭합니다.
2. MCP 서버 구성을 탭하여 구성 파일을 엽니다.
3. 다음 구성을 추가하고 환경 변수를 값으로 바꾼 후 저장합니다.


{
  "mcpServers": {
    "cloud-sql-mysql": {
      "command": "./PATH/TO/toolbox",
      "args": ["--prebuilt","cloud-sql-mysql","--stdio"],
      "env": {
        "CLOUD_SQL_MYSQL_PROJECT": "PROJECT_ID",
        "CLOUD_SQL_MYSQL_REGION": "REGION",
        "CLOUD_SQL_MYSQL_INSTANCE":"INSTANCE_ID",
        "CLOUD_SQL_MYSQL_DATABASE": "DATABASE_NAME",
        "CLOUD_SQL_MYSQL_USER": "USER_ID",
        "CLOUD_SQL_MYSQL_PASSWORD": "PASSWORD"
      }
    }
  }
}


4. 서버가 성공적으로 연결되면 녹색 활성 상태가 표시됩니다.

커서


1. 프로젝트 루트에 .cursor 디렉터리가 없으면 만듭니다.
2. .cursor/mcp.json 파일이 없으면 만들고 엽니다.
3. 다음 구성을 추가하고 환경 변수를 값으로 바꾼 후 저장합니다.


{
  "mcpServers": {
    "cloud-sql-mysql": {
      "command": "./PATH/TO/toolbox",
      "args": ["--prebuilt","cloud-sql-mysql","--stdio"],
      "env": {
        "CLOUD_SQL_MYSQL_PROJECT": "PROJECT_ID",
        "CLOUD_SQL_MYSQL_REGION": "REGION",
        "CLOUD_SQL_MYSQL_INSTANCE":"INSTANCE_ID",
        "CLOUD_SQL_MYSQL_DATABASE": "DATABASE_NAME",
        "CLOUD_SQL_MYSQL_USER": "USER_ID",
        "CLOUD_SQL_MYSQL_PASSWORD": "PASSWORD"
      }
    }
  }
}


4. 커서를 열고 설정 > 커서 설정 > MCP로 이동합니다. 서버가 연결되면 녹색 활성 상태가 표시됩니다.

Visual Studio Code(Copilot)


1. VS Code를 열고 프로젝트 루트에 .vscode 디렉터리가 없으면 만듭니다.
2. .vscode/mcp.json 파일이 없으면 만들고 엽니다.
3. 다음 구성을 추가하고 환경 변수를 값으로 바꾼 후 저장합니다.


{
  "mcp": {
    "servers": {
      "cloud-sql-mysql": {
        "command": "./PATH/TO/toolbox",
        "args": ["--prebuilt","cloud-sql-mysql,"--stdio"],
        "env": {
          "CLOUD_SQL_MYSQL_PROJECT": "PROJECT_ID",
          "CLOUD_SQL_MYSQL_REGION": "REGION",
          "CLOUD_SQL_MYSQL_INSTANCE":"INSTANCE_ID",
          "CLOUD_SQL_MYSQL_DATABASE": "DATABASE_NAME",
          "CLOUD_SQL_MYSQL_USER": "USER_ID",
          "CLOUD_SQL_MYSQL_PASSWORD": "PASSWORD"
        }
      }
    }
  }
}

Windsurf


1. Windsurf를 열고 Cascade 어시스턴트로 이동합니다.
2. MCP 아이콘을 탭한 다음 구성을 탭하여 구성 파일을 엽니다.
3. 다음 구성을 추가하고 환경 변수를 값으로 바꾼 후 저장합니다.


{
  "mcpServers": {
    "cloud-sql-mysql": {
      "command": "./PATH/TO/toolbox",
      "args": ["--prebuilt","cloud-sql-mysql,"--stdio"],
      "env": {
          "CLOUD_SQL_MYSQL_PROJECT": "PROJECT_ID",
          "CLOUD_SQL_MYSQL_REGION": "REGION",
          "CLOUD_SQL_MYSQL_INSTANCE":"INSTANCE_ID",
          "CLOUD_SQL_MYSQL_DATABASE": "DATABASE_NAME",
          "CLOUD_SQL_MYSQL_USER": "USER_ID",
          "CLOUD_SQL_MYSQL_PASSWORD": "PASSWORD"
      }
    }
  }
}

Gemini CLI


1. Gemini CLI를 설치합니다.
2. 작업 디렉터리에 .gemini이라는 폴더를 만듭니다. 이 폴더 내에 settings.json 파일을 만듭니다.
3. 다음 구성을 추가하고 환경 변수를 값으로 바꾼 후 저장합니다.


{
  "mcpServers": {
    "cloud-sql-mysql": {
      "command": "./PATH/TO/toolbox",
      "args": ["--prebuilt","cloud-sql-mysql,"--stdio"],
      "env": {
          "CLOUD_SQL_MYSQL_PROJECT": "PROJECT_ID",
          "CLOUD_SQL_MYSQL_REGION": "REGION",
          "CLOUD_SQL_MYSQL_INSTANCE":"INSTANCE_ID",
          "CLOUD_SQL_MYSQL_DATABASE": "DATABASE_NAME",
          "CLOUD_SQL_MYSQL_USER": "USER_ID",
          "CLOUD_SQL_MYSQL_PASSWORD": "PASSWORD"
      }
    }
  }
}

Gemini Code Assist


1. Visual Studio Code에 Gemini Code Assist 확장 프로그램을 설치합니다.
2. Gemini Code Assist 채팅에서 에이전트 모드를 사용 설정합니다.
3. 작업 디렉터리에 .gemini이라는 폴더를 만듭니다. 이 폴더 내에 settings.json 파일을 만듭니다.
4. 다음 구성을 추가하고 환경 변수를 값으로 바꾼 후 저장합니다.


{
  "mcpServers": {
    "cloud-sql-mysql": {
      "command": "./PATH/TO/toolbox",
      "args": ["--prebuilt","cloud-sql-mysql,"--stdio"],
      "env": {
          "CLOUD_SQL_MYSQL_PROJECT": "PROJECT_ID",
          "CLOUD_SQL_MYSQL_REGION": "REGION",
          "CLOUD_SQL_MYSQL_INSTANCE":"INSTANCE_ID",
          "CLOUD_SQL_MYSQL_DATABASE": "DATABASE_NAME",
          "CLOUD_SQL_MYSQL_USER": "USER_ID",
          "CLOUD_SQL_MYSQL_PASSWORD": "PASSWORD"
      }
    }
  }
}

도구 사용

이제 AI 도구가 MCP를 사용하여 Cloud SQL에 연결되었습니다. AI 어시스턴트에게 테이블을 나열하거나, 테이블을 만들거나, 다른 SQL 문을 정의하고 실행해 달라고 요청해 보세요.

LLM에서 사용할 수 있는 도구는 다음과 같습니다.

  1. list_tables: 테이블과 설명을 나열합니다.
  2. execute_sql: SQL 문 실행