Cloud SQL for MySQL Admin using MCP

Create and manage Cloud SQL for MySQL (Admin) using Toolbox.

This guide covers how to use MCP Toolbox for Databases to expose your developer assistant tools to create and manage Cloud SQL for MySQL instance, database and users:

Before you begin

  1. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

  2. Make sure that billing is enabled for your Google Cloud project.

  3. Grant the necessary IAM roles to the user that will be running the MCP server. The tools available will depend on the roles granted:

    • roles/cloudsql.viewer: Provides read-only access to resources.
      • get_instance
      • list_instances
      • list_databases
      • wait_for_operation
    • roles/cloudsql.editor: Provides permissions to manage existing resources.
      • All viewer tools
      • create_database
    • roles/cloudsql.admin: Provides full control over all resources.
      • All editor and viewer tools
      • create_instance
      • create_user

Install MCP Toolbox

  1. Download the latest version of Toolbox as a binary. Select the correct binary corresponding to your OS and CPU architecture. You are required to use Toolbox version V0.15.0+:

    curl -O https://storage.googleapis.com/genai-toolbox/v0.15.0/linux/amd64/toolbox
    curl -O https://storage.googleapis.com/genai-toolbox/v0.15.0/darwin/arm64/toolbox
    curl -O https://storage.googleapis.com/genai-toolbox/v0.15.0/darwin/amd64/toolbox
    curl -O https://storage.googleapis.com/genai-toolbox/v0.15.0/windows/amd64/toolbox.exe
  2. Make the binary executable:

    chmod +x toolbox
    
  3. Verify the installation:

    ./toolbox --version
    

Configure your MCP Client

  1. Install Claude Code.

  2. Create a .mcp.json file in your project root if it doesn’t exist.

  3. Add the following configuration and save:

    {
      "mcpServers": {
        "cloud-sql-mysql-admin": {
          "command": "./PATH/TO/toolbox",
          "args": ["--prebuilt","cloud-sql-mysql-admin","--stdio"],
          "env": {
          }
        }
      }
    }
    
  4. Restart Claude code to apply the new configuration.

  1. Open Claude desktop and navigate to Settings.

  2. Under the Developer tab, tap Edit Config to open the configuration file.

  3. Add the following configuration and save:

    {
      "mcpServers": {
        "cloud-sql-mysql-admin": {
          "command": "./PATH/TO/toolbox",
          "args": ["--prebuilt","cloud-sql-mysql-admin","--stdio"],
          "env": {
          }
        }
      }
    }
    
  4. Restart Claude desktop.

  5. From the new chat screen, you should see a hammer (MCP) icon appear with the new MCP server available.

  1. Open the Cline extension in VS Code and tap the MCP Servers icon.

  2. Tap Configure MCP Servers to open the configuration file.

  3. Add the following configuration and save:

    {
      "mcpServers": {
        "cloud-sql-mysql-admin": {
          "command": "./PATH/TO/toolbox",
          "args": ["--prebuilt","cloud-sql-mysql-admin","--stdio"],
          "env": {
          }
        }
      }
    }
    
  4. You should see a green active status after the server is successfully connected.

  1. Create a .cursor directory in your project root if it doesn’t exist.

  2. Create a .cursor/mcp.json file if it doesn’t exist and open it.

  3. Add the following configuration and save:

    {
      "mcpServers": {
        "cloud-sql-mysql-admin": {
          "command": "./PATH/TO/toolbox",
          "args": ["--prebuilt","cloud-sql-mysql-admin","--stdio"],
          "env": {
          }
        }
      }
    }
    
  4. Cursor and navigate to Settings > Cursor Settings > MCP. You should see a green active status after the server is successfully connected.

  1. Open VS Code and create a .vscode directory in your project root if it doesn’t exist.

  2. Create a .vscode/mcp.json file if it doesn’t exist and open it.

  3. Add the following configuration and save:

    {
      "servers": {
        "cloud-sql-mysql-admin": {
          "command": "./PATH/TO/toolbox",
          "args": ["--prebuilt","cloud-sql-mysql-admin","--stdio"],
          "env": {
          }
        }
      }
    }
    
  1. Open Windsurf and navigate to the Cascade assistant.

  2. Tap on the hammer (MCP) icon, then Configure to open the configuration file.

  3. Add the following configuration and save:

    {
      "mcpServers": {
        "cloud-sql-mysql-admin": {
          "command": "./PATH/TO/toolbox",
          "args": ["--prebuilt","cloud-sql-mysql-admin","--stdio"],
          "env": {
          }
        }
      }
    }
    
  1. Install the Gemini CLI.

  2. In your working directory, create a folder named .gemini. Within it, create a settings.json file.

  3. Add the following configuration and save:

    {
      "mcpServers": {
        "cloud-sql-mysql-admin": {
          "command": "./PATH/TO/toolbox",
          "args": ["--prebuilt","cloud-sql-mysql-admin","--stdio"],
          "env": {
          }
        }
      }
    }
    
  1. Install the Gemini Code Assist extension in Visual Studio Code.

  2. Enable Agent Mode in Gemini Code Assist chat.

  3. In your working directory, create a folder named .gemini. Within it, create a settings.json file.

  4. Add the following configuration and save:

    {
      "mcpServers": {
        "cloud-sql-mysql-admin": {
          "command": "./PATH/TO/toolbox",
          "args": ["--prebuilt","cloud-sql-mysql-admin","--stdio"],
          "env": {
          }
        }
      }
    }
    

Use Tools

Your AI tool is now connected to Cloud SQL for MySQL using MCP.

The cloud-sql-mysql-admin server provides tools for managing your Cloud SQL instances and interacting with your database:

  • create_instance: Creates a new Cloud SQL for MySQL instance.
  • get_instance: Gets information about a Cloud SQL instance.
  • list_instances: Lists Cloud SQL instances in a project.
  • create_database: Creates a new database in a Cloud SQL instance.
  • list_databases: Lists all databases for a Cloud SQL instance.
  • create_user: Creates a new user in a Cloud SQL instance.
  • wait_for_operation: Waits for a Cloud SQL operation to complete.

Note

Prebuilt tools are pre-1.0, so expect some tool changes between versions. LLMs will adapt to the tools available, so this shouldn’t affect most users.