From cb87f765a6c8c511159586cb1fdc47daa7d63a18 Mon Sep 17 00:00:00 2001 From: Averi Kitsch Date: Thu, 12 Jun 2025 14:09:51 -0700 Subject: [PATCH] docs: redirect dev assist docs to official cloud documentation (#676) --- docs/en/how-to/connect-ide/alloydb_pg_mcp.md | 269 +------------ docs/en/how-to/connect-ide/bigquery_mcp.md | 238 +----------- .../how-to/connect-ide/cloud_sql_mssql_mcp.md | 268 +------------ .../how-to/connect-ide/cloud_sql_mysql_mcp.md | 262 +------------ .../en/how-to/connect-ide/cloud_sql_pg_mcp.md | 263 +------------ docs/en/how-to/connect-ide/spanner_mcp.md | 357 +----------------- 6 files changed, 36 insertions(+), 1621 deletions(-) diff --git a/docs/en/how-to/connect-ide/alloydb_pg_mcp.md b/docs/en/how-to/connect-ide/alloydb_pg_mcp.md index dd5e668663..dbaf1b9f19 100644 --- a/docs/en/how-to/connect-ide/alloydb_pg_mcp.md +++ b/docs/en/how-to/connect-ide/alloydb_pg_mcp.md @@ -5,266 +5,9 @@ weight: 2 description: > Connect your IDE to AlloyDB using Toolbox. --- - -[Model Context Protocol (MCP)](https://modelcontextprotocol.io/introduction) is an open protocol for connecting Large Language Models (LLMs) to data sources like AlloyDB. This guide covers how to use [MCP Toolbox for Databases][toolbox] to expose your developer assistant tools to a AlloyDB for Postgres instance: - -* [Cursor][cursor] -* [Windsurf][windsurf] (Codium) -* [Visual Studio Code ][vscode] (Copilot) -* [Cline][cline] (VS Code extension) -* [Claude desktop][claudedesktop] -* [Claude code][claudecode] - -[toolbox]: https://github.com/googleapis/genai-toolbox -[cursor]: #configure-your-mcp-client -[windsurf]: #configure-your-mcp-client -[vscode]: #configure-your-mcp-client -[cline]: #configure-your-mcp-client -[claudedesktop]: #configure-your-mcp-client -[claudecode]: #configure-your-mcp-client - -## Before you begin - -1. In the Google Cloud console, on the [project selector page](https://console.cloud.google.com/projectselector2/home/dashboard), select or create a Google Cloud project. - -1. [Make sure that billing is enabled for your Google Cloud project](https://cloud.google.com/billing/docs/how-to/verify-billing-enabled#confirm_billing_is_enabled_on_a_project). - - -## Set up the database - -1. [Enable the AlloyDB, Compute Engine, Cloud Resource Manager, and Service Networking APIs in the Google Cloud project](https://console.cloud.google.com/flows/enableapi?apiid=alloydb.googleapis.com,compute.googleapis.com,cloudresourcemanager.googleapis.com,servicenetworking.googleapis.com). - -1. [Create a cluster and its primary instance](https://cloud.google.com/alloydb/docs/quickstart/create-and-connect). These instructions assume that your AlloyDB instance has a [public IP address](https://cloud.google.com/alloydb/docs/connect-public-ip). By default, AlloyDB assigns a private IP address to a new instance. Toolbox will connect securely using the [AlloyDB Language Connectors](https://cloud.google.com/alloydb/docs/language-connectors-overview). - -1. Configure the required roles and permissions to complete this task. You will need [Cloud AlloyDB Client](https://cloud.google.com/alloydb/docs/auth-proxy/connect#required-iam-permissions) (`roles/alloydb.client`) and Service Usage Consumer (`roles/serviceusage.serviceUsageConsumer`) roles or equivalent IAM permissions to connect to the instance. - -1. Configured [Application Default Credentials (ADC)](https://cloud.google.com/docs/authentication/set-up-adc-local-dev-environment) for your environment. - -1. Create or reuse [a database user](https://cloud.google.com/alloydb/docs/database-users/manage-roles) and have the username and password ready. - - -## Install MCP Toolbox - -1. Download the latest version of Toolbox as a binary. Select the [correct binary](https://github.com/googleapis/genai-toolbox/releases) corresponding to your OS and CPU architecture. You are required to use Toolbox version V0.6.0+: - - - {{< tabpane persist=header >}} -{{< tab header="linux/amd64" lang="bash" >}} -curl -O https://storage.googleapis.com/genai-toolbox/v0.7.0/linux/amd64/toolbox -{{< /tab >}} - -{{< tab header="darwin/arm64" lang="bash" >}} -curl -O https://storage.googleapis.com/genai-toolbox/v0.7.0/darwin/arm64/toolbox -{{< /tab >}} - -{{< tab header="darwin/amd64" lang="bash" >}} -curl -O https://storage.googleapis.com/genai-toolbox/v0.7.0/darwin/amd64/toolbox -{{< /tab >}} - -{{< tab header="windows/amd64" lang="bash" >}} -curl -O https://storage.googleapis.com/genai-toolbox/v0.7.0/windows/amd64/toolbox -{{< /tab >}} -{{< /tabpane >}} - - - -1. Make the binary executable: - - ```bash - chmod +x toolbox - ``` - -1. Verify the installation: - - ```bash - ./toolbox --version - ``` - -## Configure your MCP Client - -{{< tabpane text=true >}} -{{% tab header="Claude code" lang="en" %}} - -1. Install [Claude Code](https://docs.anthropic.com/en/docs/agents-and-tools/claude-code/overview). -1. Create a `.mcp.json` file in your project root if it doesn't exist. -1. Add the following configuration, replace the environment variables with your values, and save: - - ```json - { - "mcpServers": { - "alloydb": { - "command": "./PATH/TO/toolbox", - "args": ["--prebuilt","alloydb-postgres","--stdio"], - "env": { - "ALLOYDB_POSTGRES_PROJECT": "your-gcp-project-id", - "ALLOYDB_POSTGRES_REGION": "your-cluster-region", - "ALLOYDB_POSTGRES_CLUSTER": "your-cluster-name", - "ALLOYDB_POSTGRES_INSTANCE": "your-instance-name", - "ALLOYDB_POSTGRES_DATABASE": "your-database-name", - "ALLOYDB_POSTGRES_USER": "your-database-user", - "ALLOYDB_POSTGRES_PASSWORD": "your-database-password" - } - } - } - } - ``` - -1. Restart Claude code to apply the new configuration. -{{% /tab %}} - -{{% tab header="Claude desktop" lang="en" %}} - -1. Open [Claude desktop](https://claude.ai/download) and navigate to Settings. -1. Under the Developer tab, tap Edit Config to open the configuration file. -1. Add the following configuration, replace the environment variables with your values, and save: - - ```json - { - "mcpServers": { - "alloydb": { - "command": "./PATH/TO/toolbox", - "args": ["--prebuilt","alloydb-postgres","--stdio"], - "env": { - "ALLOYDB_POSTGRES_PROJECT": "your-gcp-project-id", - "ALLOYDB_POSTGRES_REGION": "your-cluster-region", - "ALLOYDB_POSTGRES_CLUSTER": "your-cluster-name", - "ALLOYDB_POSTGRES_INSTANCE": "your-instance-name", - "ALLOYDB_POSTGRES_DATABASE": "your-database-name", - "ALLOYDB_POSTGRES_USER": "your-database-user", - "ALLOYDB_POSTGRES_PASSWORD": "your-database-password" - } - } - } - } - ``` - -1. Restart Claude desktop. -1. From the new chat screen, you should see a hammer (MCP) icon appear with the new MCP server available. -{{% /tab %}} - -{{% tab header="Cline" lang="en" %}} - -1. Open the [Cline](https://github.com/cline/cline) extension in VS Code and tap the **MCP Servers** icon. -1. Tap Configure MCP Servers to open the configuration file. -1. Add the following configuration, replace the environment variables with your values, and save: - - ```json - { - "mcpServers": { - "alloydb": { - "command": "./PATH/TO/toolbox", - "args": ["--prebuilt","alloydb-postgres","--stdio"], - "env": { - "ALLOYDB_POSTGRES_PROJECT": "your-gcp-project-id", - "ALLOYDB_POSTGRES_REGION": "your-cluster-region", - "ALLOYDB_POSTGRES_CLUSTER": "your-cluster-name", - "ALLOYDB_POSTGRES_INSTANCE": "your-instance-name", - "ALLOYDB_POSTGRES_DATABASE": "your-database-name", - "ALLOYDB_POSTGRES_USER": "your-database-user", - "ALLOYDB_POSTGRES_PASSWORD": "your-database-password" - } - } - } - } - ``` - -1. You should see a green active status after the server is successfully connected. -{{% /tab %}} - -{{% tab header="Cursor" lang="en" %}} - -1. Create a `.cursor` directory in your project root if it doesn't exist. -1. Create a `.cursor/mcp.json` file if it doesn't exist and open it. -1. Add the following configuration, replace the environment variables with your values, and save: - - ```json - { - "mcpServers": { - "alloydb": { - "command": "./PATH/TO/toolbox", - "args": ["--prebuilt","alloydb-postgres","--stdio"], - "env": { - "ALLOYDB_POSTGRES_PROJECT": "your-gcp-project-id", - "ALLOYDB_POSTGRES_REGION": "your-cluster-region", - "ALLOYDB_POSTGRES_CLUSTER": "your-cluster-name", - "ALLOYDB_POSTGRES_INSTANCE": "your-instance-name", - "ALLOYDB_POSTGRES_DATABASE": "your-database-name", - "ALLOYDB_POSTGRES_USER": "your-database-user", - "ALLOYDB_POSTGRES_PASSWORD": "your-database-password" - } - } - } - } - ``` - -1. [Cursor](https://www.cursor.com/) and navigate to **Settings > Cursor Settings > MCP**. You should see a green active status after the server is successfully connected. -{{% /tab %}} - -{{% tab header="Visual Studio Code (Copilot)" lang="en" %}} - -1. Open [VS Code](https://code.visualstudio.com/docs/copilot/overview) and create a `.vscode` directory in your project root if it doesn't exist. -1. Create a `.vscode/mcp.json` file if it doesn't exist and open it. -1. Add the following configuration, replace the environment variables with your values, and save: - - ```json - { - "mcpServers": { - "alloydb": { - "command": "./PATH/TO/toolbox", - "args": ["--prebuilt","alloydb-postgres","--stdio"], - "env": { - "ALLOYDB_POSTGRES_PROJECT": "your-gcp-project-id", - "ALLOYDB_POSTGRES_REGION": "your-cluster-region", - "ALLOYDB_POSTGRES_CLUSTER": "your-cluster-name", - "ALLOYDB_POSTGRES_INSTANCE": "your-instance-name", - "ALLOYDB_POSTGRES_DATABASE": "your-database-name", - "ALLOYDB_POSTGRES_USER": "your-database-user", - "ALLOYDB_POSTGRES_PASSWORD": "your-database-password" - } - } - } - } - ``` -{{% /tab %}} - -{{% tab header="Windsurf" lang="en" %}} - -1. Open [Windsurf](https://docs.codeium.com/windsurf) and navigate to the Cascade assistant. -1. Tap on the hammer (MCP) icon, then Configure to open the configuration file. -1. Add the following configuration, replace the environment variables with your values, and save: - - ```json - { - "mcpServers": { - "alloydb": { - "command": "./PATH/TO/toolbox", - "args": ["--prebuilt","alloydb-postgres","--stdio"], - "env": { - "ALLOYDB_POSTGRES_PROJECT": "your-gcp-project-id", - "ALLOYDB_POSTGRES_REGION": "your-cluster-region", - "ALLOYDB_POSTGRES_CLUSTER": "your-cluster-name", - "ALLOYDB_POSTGRES_INSTANCE": "your-instance-name", - "ALLOYDB_POSTGRES_DATABASE": "your-database-name", - "ALLOYDB_POSTGRES_USER": "your-database-user", - "ALLOYDB_POSTGRES_PASSWORD": "your-database-password" - } - } - } - } - - ``` -{{% /tab %}} -{{< /tabpane >}} - -## Use Tools - -Your AI tool is now connected to AlloyDB using MCP. Try asking your AI assistant to list tables, create a table, or define and execute other SQL statements. - -The following tools are available to the LLM: - -1. **list_tables**: lists tables and descriptions -1. **execute_sql**: execute any SQL statement - -{{< notice 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. -{{< /notice >}} \ No newline at end of file + + + + + + diff --git a/docs/en/how-to/connect-ide/bigquery_mcp.md b/docs/en/how-to/connect-ide/bigquery_mcp.md index 0fa4c8b4f8..bb7c4dd3ea 100644 --- a/docs/en/how-to/connect-ide/bigquery_mcp.md +++ b/docs/en/how-to/connect-ide/bigquery_mcp.md @@ -5,235 +5,9 @@ weight: 2 description: > Connect your IDE to BigQuery using Toolbox. --- - -[Model Context Protocol (MCP)](https://modelcontextprotocol.io/introduction) is an open protocol for connecting Large Language Models (LLMs) to data sources like BigQuery. This guide covers how to use [MCP Toolbox for Databases][toolbox] to expose your developer assistant tools to a BigQuery instance: - -* [Cursor][cursor] -* [Windsurf][windsurf] (Codium) -* [Visual Studio Code ][vscode] (Copilot) -* [Cline][cline] (VS Code extension) -* [Claude desktop][claudedesktop] -* [Claude code][claudecode] - -[toolbox]: https://github.com/googleapis/genai-toolbox -[cursor]: #configure-your-mcp-client -[windsurf]: #configure-your-mcp-client -[vscode]: #configure-your-mcp-client -[cline]: #configure-your-mcp-client -[claudedesktop]: #configure-your-mcp-client -[claudecode]: #configure-your-mcp-client - -## Before you begin - -1. In the Google Cloud console, on the [project selector page](https://console.cloud.google.com/projectselector2/home/dashboard), select or create a Google Cloud project. - -1. [Make sure that billing is enabled for your Google Cloud project](https://cloud.google.com/billing/docs/how-to/verify-billing-enabled#confirm_billing_is_enabled_on_a_project). - - -## Set up the database - -1. [Enable the BigQuery API in the Google Cloud project](https://console.cloud.google.com/flows/enableapi?apiid=bigquery.googleapis.com&redirect=https://console.cloud.google.com). - -1. Configure the required roles and permissions to complete this task. You will need [BigQuery User](https://cloud.google.com/bigquery/docs/access-control) role (`roles/bigquery.user`), BigQuery Data Viewer role(`roles/bigquery.dataViewer`), or equivalent IAM permissions to connect to the instance. - -1. Configured [Application Default Credentials (ADC)](https://cloud.google.com/docs/authentication/set-up-adc-local-dev-environment) for your environment. - -## Install MCP Toolbox - -1. Download the latest version of Toolbox as a binary. Select the [correct binary](https://github.com/googleapis/genai-toolbox/releases) corresponding to your OS and CPU architecture. You are required to use Toolbox version V0.6.0+: - - - {{< tabpane persist=header >}} -{{< tab header="linux/amd64" lang="bash" >}} -curl -O https://storage.googleapis.com/genai-toolbox/v0.7.0/linux/amd64/toolbox -{{< /tab >}} - -{{< tab header="darwin/arm64" lang="bash" >}} -curl -O https://storage.googleapis.com/genai-toolbox/v0.7.0/darwin/arm64/toolbox -{{< /tab >}} - -{{< tab header="darwin/amd64" lang="bash" >}} -curl -O https://storage.googleapis.com/genai-toolbox/v0.7.0/darwin/amd64/toolbox -{{< /tab >}} - -{{< tab header="windows/amd64" lang="bash" >}} -curl -O https://storage.googleapis.com/genai-toolbox/v0.7.0/windows/amd64/toolbox -{{< /tab >}} -{{< /tabpane >}} - - - -1. Make the binary executable: - - ```bash - chmod +x toolbox - ``` - -1. Verify the installation: - - ```bash - ./toolbox --version - ``` - -## Configure your MCP Client - -{{< tabpane text=true >}} -{{% tab header="Claude code" lang="en" %}} - -1. Install [Claude Code](https://docs.anthropic.com/en/docs/agents-and-tools/claude-code/overview). -1. Create a `.mcp.json` file in your project root if it doesn't exist. -1. Add the following configuration, replace the environment variables with your values, and save: - - ```json - { - "mcpServers": { - "bigquery": { - "command": "./PATH/TO/toolbox", - "args": ["--prebuilt","bigquery","--stdio"], - "env": { - "BIGQUERY_PROJECT": "" - } - } - } - } - ``` - - -1. Restart Claude code to apply the new configuration. -{{% /tab %}} - -{{% tab header="Claude desktop" lang="en" %}} - -1. Open [Claude desktop](https://claude.ai/download) and navigate to Settings. -1. Under the Developer tab, tap Edit Config to open the configuration file. -1. Add the following configuration, replace the environment variables with your values, and save: - - ```json - { - "mcpServers": { - "bigquery": { - "command": "./PATH/TO/toolbox", - "args": ["--prebuilt","bigquery","--stdio"], - "env": { - "BIGQUERY_PROJECT": "" - } - } - } - } - ``` - - -1. Restart Claude desktop. -1. From the new chat screen, you should see a hammer (MCP) icon appear with the new MCP server available. -{{% /tab %}} - -{{% tab header="Cline" lang="en" %}} - -1. Open the [Cline](https://github.com/cline/cline) extension in VS Code and tap the **MCP Servers** icon. -1. Tap Configure MCP Servers to open the configuration file. -1. Add the following configuration, replace the environment variables with your values, and save: - - ```json - { - "mcpServers": { - "bigquery": { - "command": "./PATH/TO/toolbox", - "args": ["--prebuilt","bigquery","--stdio"], - "env": { - "BIGQUERY_PROJECT": "" - } - } - } - } - ``` - - -1. You should see a green active status after the server is successfully connected. -{{% /tab %}} - -{{% tab header="Cursor" lang="en" %}} - -1. Create a `.cursor` directory in your project root if it doesn't exist. -1. Create a `.cursor/mcp.json` file if it doesn't exist and open it. -1. Add the following configuration, replace the environment variables with your values, and save: - - ```json - { - "mcpServers": { - "bigquery": { - "command": "./PATH/TO/toolbox", - "args": ["--prebuilt","bigquery","--stdio"], - "env": { - "BIGQUERY_PROJECT": "" - } - } - } - } - ``` - - -1. [Cursor](https://www.cursor.com/) and navigate to **Settings > Cursor Settings > MCP**. You should see a green active status after the server is successfully connected. -{{% /tab %}} - -{{% tab header="Visual Studio Code (Copilot)" lang="en" %}} - -1. Open [VS Code](https://code.visualstudio.com/docs/copilot/overview) and create a `.vscode` directory in your project root if it doesn't exist. -1. Create a `.vscode/mcp.json` file if it doesn't exist and open it. -1. Add the following configuration, replace the environment variables with your values, and save: - - ```json - { - "mcpServers": { - "bigquery": { - "command": "./PATH/TO/toolbox", - "args": ["--prebuilt","bigquery","--stdio"], - "env": { - "BIGQUERY_PROJECT": "" - } - } - } - } - ``` - - -{{% /tab %}} - -{{% tab header="Windsurf" lang="en" %}} - -1. Open [Windsurf](https://docs.codeium.com/windsurf) and navigate to the Cascade assistant. -1. Tap on the hammer (MCP) icon, then Configure to open the configuration file. -1. Add the following configuration, replace the environment variables with your values, and save: - - ```json - { - "mcpServers": { - "bigquery": { - "command": "./PATH/TO/toolbox", - "args": ["--prebuilt","bigquery","--stdio"], - "env": { - "BIGQUERY_PROJECT": "" - } - } - } - } - ``` - - -{{% /tab %}} -{{< /tabpane >}} - -## Use Tools - -Your AI tool is now connected to BigQuery using MCP. Try asking your AI assistant to list tables, create a table, or define and execute other SQL statements. - -The following tools are available to the LLM: - -1. **execute_sql**: execute SQL statement -1. **get_dataset_info**: get dataset metadata -1. **get_table_info**: get table metadata -1. **list_dataset_ids**: list datasets -1. **list_table_ids**: list tables - -{{< notice 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. -{{< /notice >}} \ No newline at end of file + + + + + + diff --git a/docs/en/how-to/connect-ide/cloud_sql_mssql_mcp.md b/docs/en/how-to/connect-ide/cloud_sql_mssql_mcp.md index 576623ebac..791e9870b6 100644 --- a/docs/en/how-to/connect-ide/cloud_sql_mssql_mcp.md +++ b/docs/en/how-to/connect-ide/cloud_sql_mssql_mcp.md @@ -5,265 +5,9 @@ weight: 2 description: > Connect your IDE to Cloud SQL for SQL Server using Toolbox. --- - -[Model Context Protocol (MCP)](https://modelcontextprotocol.io/introduction) is an open protocol for connecting Large Language Models (LLMs) to data sources like Cloud SQL. This guide covers how to use [MCP Toolbox for Databases][toolbox] to expose your developer assistant tools to a Cloud SQL for SQL Server instance: - -* [Cursor][cursor] -* [Windsurf][windsurf] (Codium) -* [Visual Studio Code ][vscode] (Copilot) -* [Cline][cline] (VS Code extension) -* [Claude desktop][claudedesktop] -* [Claude code][claudecode] - -[toolbox]: https://github.com/googleapis/genai-toolbox -[cursor]: #configure-your-mcp-client -[windsurf]: #configure-your-mcp-client -[vscode]: #configure-your-mcp-client -[cline]: #configure-your-mcp-client -[claudedesktop]: #configure-your-mcp-client -[claudecode]: #configure-your-mcp-client - -## Before you begin - -1. In the Google Cloud console, on the [project selector page](https://console.cloud.google.com/projectselector2/home/dashboard), select or create a Google Cloud project. - -1. [Make sure that billing is enabled for your Google Cloud project](https://cloud.google.com/billing/docs/how-to/verify-billing-enabled#confirm_billing_is_enabled_on_a_project). - - -## Set up the database - -1. [Enable the Cloud SQL Admin API in the Google Cloud project](https://console.cloud.google.com/flows/enableapi?apiid=sqladmin&redirect=https://console.cloud.google.com). - -1. [Create or select a Cloud SQL for SQL Server instance](https://cloud.google.com/sql/docs/sqlserver/create-instance). These instructions assume that your Cloud SQL instance has a [public IP address](https://cloud.google.com/sql/docs/sqlserver/configure-ip). By default, Cloud SQL assigns a public IP address to a new instance. Toolbox will connect securely using the [Cloud SQL connectors](https://cloud.google.com/sql/docs/sqlserver/language-connectors). - -1. Configure the required roles and permissions to complete this task. You will need [Cloud SQL > Client](https://cloud.google.com/sql/docs/sqlserver/roles-and-permissions#proxy-roles-permissions) role (`roles/cloudsql.client`) or equivalent IAM permissions to connect to the instance. - -1. Configured [Application Default Credentials (ADC)](https://cloud.google.com/docs/authentication/set-up-adc-local-dev-environment) for your environment. - -1. Create or reuse [a database user](https://cloud.google.com/sql/docs/sqlserver/create-manage-users) and have the username and password ready. - - -## Install MCP Toolbox - -1. Download the latest version of Toolbox as a binary. Select the [correct binary](https://github.com/googleapis/genai-toolbox/releases) corresponding to your OS and CPU architecture. You are required to use Toolbox version V0.6.0+: - - - {{< tabpane persist=header >}} -{{< tab header="linux/amd64" lang="bash" >}} -curl -O https://storage.googleapis.com/genai-toolbox/v0.7.0/linux/amd64/toolbox -{{< /tab >}} - -{{< tab header="darwin/arm64" lang="bash" >}} -curl -O https://storage.googleapis.com/genai-toolbox/v0.7.0/darwin/arm64/toolbox -{{< /tab >}} - -{{< tab header="darwin/amd64" lang="bash" >}} -curl -O https://storage.googleapis.com/genai-toolbox/v0.7.0/darwin/amd64/toolbox -{{< /tab >}} - -{{< tab header="windows/amd64" lang="bash" >}} -curl -O https://storage.googleapis.com/genai-toolbox/v0.7.0/windows/amd64/toolbox -{{< /tab >}} -{{< /tabpane >}} - - - -1. Make the binary executable: - - ```bash - chmod +x toolbox - ``` - -1. Verify the installation: - - ```bash - ./toolbox --version - ``` - -## Configure your MCP Client - -{{< tabpane text=true >}} -{{% tab header="Claude code" lang="en" %}} - -1. Install [Claude Code](https://docs.anthropic.com/en/docs/agents-and-tools/claude-code/overview). -1. Create a `.mcp.json` file in your project root if it doesn't exist. -1. Add the following configuration, replace the environment variables with your values, and save: - - ```json - { - "mcpServers": { - "cloud-sql-sqlserver": { - "command": "./PATH/TO/toolbox", - "args": ["--prebuilt","cloud-sql-mssql","--stdio"], - "env": { - "CLOUD_SQL_MSSQL_PROJECT": "", - "CLOUD_SQL_MSSQL_REGION": "", - "CLOUD_SQL_MSSQL_INSTANCE": "", - "CLOUD_SQL_MSSQL_DATABASE": "", - "CLOUD_SQL_MSSQL_IP_ADDRESS": "", - "CLOUD_SQL_MSSQL_USER": "", - "CLOUD_SQL_MSSQL_PASSWORD": "" - } - } - } - ``` - -1. Restart Claude code to apply the new configuration. -{{% /tab %}} - -{{% tab header="Claude desktop" lang="en" %}} - -1. Open [Claude desktop](https://claude.ai/download) and navigate to Settings. -1. Under the Developer tab, tap Edit Config to open the configuration file. -1. Add the following configuration, replace the environment variables with your values, and save: - - ```json - { - "mcpServers": { - "cloud-sql-sqlserver": { - "command": "./PATH/TO/toolbox", - "args": ["--prebuilt","cloud-sql-mssql","--stdio"], - "env": { - "CLOUD_SQL_MSSQL_PROJECT": "", - "CLOUD_SQL_MSSQL_REGION": "", - "CLOUD_SQL_MSSQL_INSTANCE": "", - "CLOUD_SQL_MSSQL_DATABASE": "", - "CLOUD_SQL_MSSQL_IP_ADDRESS": "", - "CLOUD_SQL_MSSQL_USER": "", - "CLOUD_SQL_MSSQL_PASSWORD": "" - } - } - } - } - ``` - -1. Restart Claude desktop. -1. From the new chat screen, you should see a hammer (MCP) icon appear with the new MCP server available. -{{% /tab %}} - -{{% tab header="Cline" lang="en" %}} - -1. Open the [Cline](https://github.com/cline/cline) extension in VS Code and tap the **MCP Servers** icon. -1. Tap Configure MCP Servers to open the configuration file. -1. Add the following configuration, replace the environment variables with your values, and save: - - ```json - { - "mcpServers": { - "cloud-sql-sqlserver": { - "command": "./PATH/TO/toolbox", - "args": ["--prebuilt","cloud-sql-mssql","--stdio"], - "env": { - "CLOUD_SQL_MSSQL_PROJECT": "", - "CLOUD_SQL_MSSQL_REGION": "", - "CLOUD_SQL_MSSQL_INSTANCE": "", - "CLOUD_SQL_MSSQL_DATABASE": "", - "CLOUD_SQL_MSSQL_IP_ADDRESS": "", - "CLOUD_SQL_MSSQL_USER": "", - "CLOUD_SQL_MSSQL_PASSWORD": "" - } - } - } - } - ``` - -1. You should see a green active status after the server is successfully connected. -{{% /tab %}} - -{{% tab header="Cursor" lang="en" %}} - -1. Create a `.cursor` directory in your project root if it doesn't exist. -1. Create a `.cursor/mcp.json` file if it doesn't exist and open it. -1. Add the following configuration, replace the environment variables with your values, and save: - - ```json - { - "mcpServers": { - "cloud-sql-sqlserver": { - "command": "./PATH/TO/toolbox", - "args": ["--prebuilt","cloud-sql-mssql","--stdio"], - "env": { - "CLOUD_SQL_MSSQL_PROJECT": "", - "CLOUD_SQL_MSSQL_REGION": "", - "CLOUD_SQL_MSSQL_INSTANCE": "", - "CLOUD_SQL_MSSQL_DATABASE": "", - "CLOUD_SQL_MSSQL_IP_ADDRESS": "", - "CLOUD_SQL_MSSQL_USER": "", - "CLOUD_SQL_MSSQL_PASSWORD": "" - } - } - } - } - ``` - -1. [Cursor](https://www.cursor.com/) and navigate to **Settings > Cursor Settings > MCP**. You should see a green active status after the server is successfully connected. -{{% /tab %}} - -{{% tab header="Visual Studio Code (Copilot)" lang="en" %}} - -1. Open [VS Code](https://code.visualstudio.com/docs/copilot/overview) and create a `.vscode` directory in your project root if it doesn't exist. -1. Create a `.vscode/mcp.json` file if it doesn't exist and open it. -1. Add the following configuration, replace the environment variables with your values, and save: - - ```json - { - "mcpServers": { - "cloud-sql-sqlserver": { - "command": "./PATH/TO/toolbox", - "args": ["--prebuilt","cloud-sql-mssql","--stdio"], - "env": { - "CLOUD_SQL_MSSQL_PROJECT": "", - "CLOUD_SQL_MSSQL_REGION": "", - "CLOUD_SQL_MSSQL_INSTANCE": "", - "CLOUD_SQL_MSSQL_DATABASE": "", - "CLOUD_SQL_MSSQL_IP_ADDRESS": "", - "CLOUD_SQL_MSSQL_USER": "", - "CLOUD_SQL_MSSQL_PASSWORD": "" - } - } - } - } - ``` -{{% /tab %}} - -{{% tab header="Windsurf" lang="en" %}} - -1. Open [Windsurf](https://docs.codeium.com/windsurf) and navigate to the Cascade assistant. -1. Tap on the hammer (MCP) icon, then Configure to open the configuration file. -1. Add the following configuration, replace the environment variables with your values, and save: - - ```json - { - "mcpServers": { - "cloud-sql-sqlserver": { - "command": "./PATH/TO/toolbox", - "args": ["--prebuilt","cloud-sql-mssql","--stdio"], - "env": { - "CLOUD_SQL_MSSQL_PROJECT": "", - "CLOUD_SQL_MSSQL_REGION": "", - "CLOUD_SQL_MSSQL_INSTANCE": "", - "CLOUD_SQL_MSSQL_DATABASE": "", - "CLOUD_SQL_MSSQL_IP_ADDRESS": "", - "CLOUD_SQL_MSSQL_USER": "", - "CLOUD_SQL_MSSQL_PASSWORD": "" - } - } - } - } - - ``` -{{% /tab %}} -{{< /tabpane >}} - -## Use Tools - -Your AI tool is now connected to Cloud SQL for Sql Server using MCP. Try asking your AI assistant to list tables, create a table, or define and execute other SQL statements. - -The following tools are available to the LLM: - -1. **list_tables**: lists tables and descriptions -1. **execute_sql**: execute any SQL statement - -{{< notice 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. -{{< /notice >}} + + + + + + diff --git a/docs/en/how-to/connect-ide/cloud_sql_mysql_mcp.md b/docs/en/how-to/connect-ide/cloud_sql_mysql_mcp.md index 7ac82723bb..94995e536a 100644 --- a/docs/en/how-to/connect-ide/cloud_sql_mysql_mcp.md +++ b/docs/en/how-to/connect-ide/cloud_sql_mysql_mcp.md @@ -5,259 +5,9 @@ weight: 2 description: > Connect your IDE to Cloud SQL for MySQL using Toolbox. --- - -[Model Context Protocol (MCP)](https://modelcontextprotocol.io/introduction) is an open protocol for connecting Large Language Models (LLMs) to data sources like Cloud SQL. This guide covers how to use [MCP Toolbox for Databases][toolbox] to expose your developer assistant tools to a Cloud SQL for MySQL instance: - -* [Cursor][cursor] -* [Windsurf][windsurf] (Codium) -* [Visual Studio Code ][vscode] (Copilot) -* [Cline][cline] (VS Code extension) -* [Claude desktop][claudedesktop] -* [Claude code][claudecode] - -[toolbox]: https://github.com/googleapis/genai-toolbox -[cursor]: #configure-your-mcp-client -[windsurf]: #configure-your-mcp-client -[vscode]: #configure-your-mcp-client -[cline]: #configure-your-mcp-client -[claudedesktop]: #configure-your-mcp-client -[claudecode]: #configure-your-mcp-client - -## Before you begin - -1. In the Google Cloud console, on the [project selector page](https://console.cloud.google.com/projectselector2/home/dashboard), select or create a Google Cloud project. - -1. [Make sure that billing is enabled for your Google Cloud project](https://cloud.google.com/billing/docs/how-to/verify-billing-enabled#confirm_billing_is_enabled_on_a_project). - - -## Set up the database - -1. [Enable the Cloud SQL Admin API in the Google Cloud project](https://console.cloud.google.com/flows/enableapi?apiid=sqladmin&redirect=https://console.cloud.google.com). - -1. [Create a Cloud SQL for MySQL instance](https://cloud.google.com/sql/docs/mysql/create-instance). These instructions assume that your Cloud SQL instance has a [public IP address](https://cloud.google.com/sql/docs/mysql/configure-ip). By default, Cloud SQL assigns a public IP address to a new instance. Toolbox will connect securely using the [Cloud SQL connectors](https://cloud.google.com/sql/docs/mysql/language-connectors). - -1. Configure the required roles and permissions to complete this task. You will need [Cloud SQL > Client](https://cloud.google.com/sql/docs/mysql/roles-and-permissions#proxy-roles-permissions) role (`roles/cloudsql.client`) or equivalent IAM permissions to connect to the instance. - -1. Configured [Application Default Credentials (ADC)](https://cloud.google.com/docs/authentication/set-up-adc-local-dev-environment) for your environment. - -1. Create or reuse [a database user](https://cloud.google.com/sql/docs/mysql/create-manage-users) and have the username and password ready. - - -## Install MCP Toolbox - -1. Download the latest version of Toolbox as a binary. Select the [correct binary](https://github.com/googleapis/genai-toolbox/releases) corresponding to your OS and CPU architecture. You are required to use Toolbox version V0.6.0+: - - - {{< tabpane persist=header >}} -{{< tab header="linux/amd64" lang="bash" >}} -curl -O https://storage.googleapis.com/genai-toolbox/v0.7.0/linux/amd64/toolbox -{{< /tab >}} - -{{< tab header="darwin/arm64" lang="bash" >}} -curl -O https://storage.googleapis.com/genai-toolbox/v0.7.0/darwin/arm64/toolbox -{{< /tab >}} - -{{< tab header="darwin/amd64" lang="bash" >}} -curl -O https://storage.googleapis.com/genai-toolbox/v0.7.0/darwin/amd64/toolbox -{{< /tab >}} - -{{< tab header="windows/amd64" lang="bash" >}} -curl -O https://storage.googleapis.com/genai-toolbox/v0.7.0/windows/amd64/toolbox -{{< /tab >}} -{{< /tabpane >}} - - - -1. Make the binary executable: - - ```bash - chmod +x toolbox - ``` - -1. Verify the installation: - - ```bash - ./toolbox --version - ``` - -## Configure your MCP Client - -{{< tabpane text=true >}} -{{% tab header="Claude code" lang="en" %}} - -1. Install [Claude Code](https://docs.anthropic.com/en/docs/agents-and-tools/claude-code/overview). -1. Create a `.mcp.json` file in your project root if it doesn't exist. -1. Add the following configuration, replace the environment variables with your values, and save: - - ```json - { - "mcpServers": { - "cloud-sql-mysql": { - "command": "./PATH/TO/toolbox", - "args": ["--prebuilt","cloud-sql-mysql","--stdio"], - "env": { - "CLOUD_SQL_MYSQL_PROJECT": "", - "CLOUD_SQL_MYSQL_REGION": "", - "CLOUD_SQL_MYSQL_INSTANCE": "", - "CLOUD_SQL_MYSQL_DATABASE": "", - "CLOUD_SQL_MYSQL_USER": "", - "CLOUD_SQL_MYSQL_PASSWORD": "" - } - } - } - } - ``` - -1. Restart Claude code to apply the new configuration. -{{% /tab %}} - -{{% tab header="Claude desktop" lang="en" %}} - -1. Open [Claude desktop](https://claude.ai/download) and navigate to Settings. -1. Under the Developer tab, tap Edit Config to open the configuration file. -1. Add the following configuration, replace the environment variables with your values, and save: - - ```json - { - "mcpServers": { - "cloud-sql-mysql": { - "command": "./PATH/TO/toolbox", - "args": ["--prebuilt","cloud-sql-mysql","--stdio"], - "env": { - "CLOUD_SQL_MYSQL_PROJECT": "", - "CLOUD_SQL_MYSQL_REGION": "", - "CLOUD_SQL_MYSQL_INSTANCE": "", - "CLOUD_SQL_MYSQL_DATABASE": "", - "CLOUD_SQL_MYSQL_USER": "", - "CLOUD_SQL_MYSQL_PASSWORD": "" - } - } - } - } - ``` - -1. Restart Claude desktop. -1. From the new chat screen, you should see a hammer (MCP) icon appear with the new MCP server available. -{{% /tab %}} - -{{% tab header="Cline" lang="en" %}} - -1. Open the [Cline](https://github.com/cline/cline) extension in VS Code and tap the **MCP Servers** icon. -1. Tap Configure MCP Servers to open the configuration file. -1. Add the following configuration, replace the environment variables with your values, and save: - - ```json - { - "mcpServers": { - "cloud-sql-mysql": { - "command": "./PATH/TO/toolbox", - "args": ["--prebuilt","cloud-sql-mysql","--stdio"], - "env": { - "CLOUD_SQL_MYSQL_PROJECT": "", - "CLOUD_SQL_MYSQL_REGION": "", - "CLOUD_SQL_MYSQL_INSTANCE": "", - "CLOUD_SQL_MYSQL_DATABASE": "", - "CLOUD_SQL_MYSQL_USER": "", - "CLOUD_SQL_MYSQL_PASSWORD": "" - } - } - } - } - ``` - -1. You should see a green active status after the server is successfully connected. -{{% /tab %}} - -{{% tab header="Cursor" lang="en" %}} - -1. Create a `.cursor` directory in your project root if it doesn't exist. -1. Create a `.cursor/mcp.json` file if it doesn't exist and open it. -1. Add the following configuration, replace the environment variables with your values, and save: - - ```json - { - "mcpServers": { - "cloud-sql-mysql": { - "command": "./PATH/TO/toolbox", - "args": ["--prebuilt","cloud-sql-mysql","--stdio"], - "env": { - "CLOUD_SQL_MYSQL_PROJECT": "", - "CLOUD_SQL_MYSQL_REGION": "", - "CLOUD_SQL_MYSQL_INSTANCE": "", - "CLOUD_SQL_MYSQL_DATABASE": "", - "CLOUD_SQL_MYSQL_USER": "", - "CLOUD_SQL_MYSQL_PASSWORD": "" - } - } - } - ``` - -1. [Cursor](https://www.cursor.com/) and navigate to **Settings > Cursor Settings > MCP**. You should see a green active status after the server is successfully connected. -{{% /tab %}} - -{{% tab header="Visual Studio Code (Copilot)" lang="en" %}} - -1. Open [VS Code](https://code.visualstudio.com/docs/copilot/overview) and create a `.vscode` directory in your project root if it doesn't exist. -1. Create a `.vscode/mcp.json` file if it doesn't exist and open it. -1. Add the following configuration, replace the environment variables with your values, and save: - - ```json - { - "mcpServers": { - "cloud-sql-mysql": { - "command": "./PATH/TO/toolbox", - "args": ["--prebuilt","cloud-sql-mysql","--stdio"], - "env": { - "CLOUD_SQL_MYSQL_PROJECT": "", - "CLOUD_SQL_MYSQL_REGION": "", - "CLOUD_SQL_MYSQL_INSTANCE": "", - "CLOUD_SQL_MYSQL_DATABASE": "", - "CLOUD_SQL_MYSQL_USER": "", - "CLOUD_SQL_MYSQL_PASSWORD": "" - } - } - } - } - ``` -{{% /tab %}} - -{{% tab header="Windsurf" lang="en" %}} - -1. Open [Windsurf](https://docs.codeium.com/windsurf) and navigate to the Cascade assistant. -1. Tap on the hammer (MCP) icon, then Configure to open the configuration file. -1. Add the following configuration, replace the environment variables with your values, and save: - - ```json - { - "mcpServers": { - "cloud-sql-mysql": { - "command": "./PATH/TO/toolbox", - "args": ["--prebuilt","cloud-sql-mysql","--stdio"], - "env": { - "CLOUD_SQL_MYSQL_PROJECT": "", - "CLOUD_SQL_MYSQL_REGION": "", - "CLOUD_SQL_MYSQL_INSTANCE": "", - "CLOUD_SQL_MYSQL_DATABASE": "", - "CLOUD_SQL_MYSQL_USER": "", - "CLOUD_SQL_MYSQL_PASSWORD": "" - } - } - } - } - - ``` -{{% /tab %}} -{{< /tabpane >}} - -## Use Tools - -Your AI tool is now connected to Cloud SQL for MySQL using MCP. Try asking your AI assistant to list tables, create a table, or define and execute other SQL statements. - -The following tools are available to the LLM: - -1. **list_tables**: lists tables and descriptions -1. **execute_sql**: execute any SQL statement - -{{< notice 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. -{{< /notice >}} + + + + + + diff --git a/docs/en/how-to/connect-ide/cloud_sql_pg_mcp.md b/docs/en/how-to/connect-ide/cloud_sql_pg_mcp.md index b5820a33d4..217d170569 100644 --- a/docs/en/how-to/connect-ide/cloud_sql_pg_mcp.md +++ b/docs/en/how-to/connect-ide/cloud_sql_pg_mcp.md @@ -5,260 +5,9 @@ weight: 2 description: > Connect your IDE to Cloud SQL for Postgres using Toolbox. --- - -[Model Context Protocol (MCP)](https://modelcontextprotocol.io/introduction) is an open protocol for connecting Large Language Models (LLMs) to data sources like Cloud SQL. This guide covers how to use [MCP Toolbox for Databases][toolbox] to expose your developer assistant tools to a Cloud SQL for Postgres instance: - -* [Cursor][cursor] -* [Windsurf][windsurf] (Codium) -* [Visual Studio Code ][vscode] (Copilot) -* [Cline][cline] (VS Code extension) -* [Claude desktop][claudedesktop] -* [Claude code][claudecode] - -[toolbox]: https://github.com/googleapis/genai-toolbox -[cursor]: #configure-your-mcp-client -[windsurf]: #configure-your-mcp-client -[vscode]: #configure-your-mcp-client -[cline]: #configure-your-mcp-client -[claudedesktop]: #configure-your-mcp-client -[claudecode]: #configure-your-mcp-client - -## Before you begin - -1. In the Google Cloud console, on the [project selector page](https://console.cloud.google.com/projectselector2/home/dashboard), select or create a Google Cloud project. - -1. [Make sure that billing is enabled for your Google Cloud project](https://cloud.google.com/billing/docs/how-to/verify-billing-enabled#confirm_billing_is_enabled_on_a_project). - - -## Set up the database - -1. [Enable the Cloud SQL Admin API in the Google Cloud project](https://console.cloud.google.com/flows/enableapi?apiid=sqladmin&redirect=https://console.cloud.google.com). - -1. [Create or select a Cloud SQL for PostgreSQL instance](https://cloud.google.com/sql/docs/postgres/create-instance). These instructions assume that your Cloud SQL instance has a [public IP address](https://cloud.google.com/sql/docs/postgres/configure-ip). By default, Cloud SQL assigns a public IP address to a new instance. Toolbox will connect securely using the [Cloud SQL connectors](https://cloud.google.com/sql/docs/postgres/language-connectors). - -1. Configure the required roles and permissions to complete this task. You will need [Cloud SQL > Client](https://cloud.google.com/sql/docs/postgres/roles-and-permissions#proxy-roles-permissions) role (`roles/cloudsql.client`) or equivalent IAM permissions to connect to the instance. - -1. Configured [Application Default Credentials (ADC)](https://cloud.google.com/docs/authentication/set-up-adc-local-dev-environment) for your environment. - -1. Create or reuse [a database user](https://cloud.google.com/sql/docs/postgres/create-manage-users) and have the username and password ready. - - -## Install MCP Toolbox - -1. Download the latest version of Toolbox as a binary. Select the [correct binary](https://github.com/googleapis/genai-toolbox/releases) corresponding to your OS and CPU architecture. You are required to use Toolbox version V0.6.0+: - - - {{< tabpane persist=header >}} -{{< tab header="linux/amd64" lang="bash" >}} -curl -O https://storage.googleapis.com/genai-toolbox/v0.7.0/linux/amd64/toolbox -{{< /tab >}} - -{{< tab header="darwin/arm64" lang="bash" >}} -curl -O https://storage.googleapis.com/genai-toolbox/v0.7.0/darwin/arm64/toolbox -{{< /tab >}} - -{{< tab header="darwin/amd64" lang="bash" >}} -curl -O https://storage.googleapis.com/genai-toolbox/v0.7.0/darwin/amd64/toolbox -{{< /tab >}} - -{{< tab header="windows/amd64" lang="bash" >}} -curl -O https://storage.googleapis.com/genai-toolbox/v0.7.0/windows/amd64/toolbox -{{< /tab >}} -{{< /tabpane >}} - - - -1. Make the binary executable: - - ```bash - chmod +x toolbox - ``` - -1. Verify the installation: - - ```bash - ./toolbox --version - ``` - -## Configure your MCP Client - -{{< tabpane text=true >}} -{{% tab header="Claude code" lang="en" %}} - -1. Install [Claude Code](https://docs.anthropic.com/en/docs/agents-and-tools/claude-code/overview). -1. Create a `.mcp.json` file in your project root if it doesn't exist. -1. Add the following configuration, replace the environment variables with your values, and save: - - ```json - { - "mcpServers": { - "cloud-sql-postgres": { - "command": "./PATH/TO/toolbox", - "args": ["--prebuilt","cloud-sql-postgres","--stdio"], - "env": { - "CLOUD_SQL_POSTGRES_PROJECT": "", - "CLOUD_SQL_POSTGRES_REGION": "", - "CLOUD_SQL_POSTGRES_INSTANCE": "", - "CLOUD_SQL_POSTGRES_DATABASE": "", - "CLOUD_SQL_POSTGRES_USER": "", - "CLOUD_SQL_POSTGRES_PASSWORD": "" - } - } - } - } - ``` - -1. Restart Claude code to apply the new configuration. -{{% /tab %}} - -{{% tab header="Claude desktop" lang="en" %}} - -1. Open [Claude desktop](https://claude.ai/download) and navigate to Settings. -1. Under the Developer tab, tap Edit Config to open the configuration file. -1. Add the following configuration, replace the environment variables with your values, and save: - - ```json - { - "mcpServers": { - "cloud-sql-postgres": { - "command": "./PATH/TO/toolbox", - "args": ["--prebuilt","cloud-sql-postgres","--stdio"], - "env": { - "CLOUD_SQL_POSTGRES_PROJECT": "", - "CLOUD_SQL_POSTGRES_REGION": "", - "CLOUD_SQL_POSTGRES_INSTANCE": "", - "CLOUD_SQL_POSTGRES_DATABASE": "", - "CLOUD_SQL_POSTGRES_USER": "", - "CLOUD_SQL_POSTGRES_PASSWORD": "" - } - } - } - } - ``` - -1. Restart Claude desktop. -1. From the new chat screen, you should see a hammer (MCP) icon appear with the new MCP server available. -{{% /tab %}} - -{{% tab header="Cline" lang="en" %}} - -1. Open the [Cline](https://github.com/cline/cline) extension in VS Code and tap the **MCP Servers** icon. -1. Tap Configure MCP Servers to open the configuration file. -1. Add the following configuration, replace the environment variables with your values, and save: - - ```json - { - "mcpServers": { - "cloud-sql-postgres": { - "command": "./PATH/TO/toolbox", - "args": ["--prebuilt","cloud-sql-postgres","--stdio"], - "env": { - "CLOUD_SQL_POSTGRES_PROJECT": "", - "CLOUD_SQL_POSTGRES_REGION": "", - "CLOUD_SQL_POSTGRES_INSTANCE": "", - "CLOUD_SQL_POSTGRES_DATABASE": "", - "CLOUD_SQL_POSTGRES_USER": "", - "CLOUD_SQL_POSTGRES_PASSWORD": "" - } - } - } - } - ``` - -1. You should see a green active status after the server is successfully connected. -{{% /tab %}} - -{{% tab header="Cursor" lang="en" %}} - -1. Create a `.cursor` directory in your project root if it doesn't exist. -1. Create a `.cursor/mcp.json` file if it doesn't exist and open it. -1. Add the following configuration, replace the environment variables with your values, and save: - - ```json - { - "mcpServers": { - "cloud-sql-postgres": { - "command": "./PATH/TO/toolbox", - "args": ["--prebuilt","cloud-sql-postgres","--stdio"], - "env": { - "CLOUD_SQL_POSTGRES_PROJECT": "", - "CLOUD_SQL_POSTGRES_REGION": "", - "CLOUD_SQL_POSTGRES_INSTANCE": "", - "CLOUD_SQL_POSTGRES_DATABASE": "", - "CLOUD_SQL_POSTGRES_USER": "", - "CLOUD_SQL_POSTGRES_PASSWORD": "" - } - } - } - } - ``` - -1. [Cursor](https://www.cursor.com/) and navigate to **Settings > Cursor Settings > MCP**. You should see a green active status after the server is successfully connected. -{{% /tab %}} - -{{% tab header="Visual Studio Code (Copilot)" lang="en" %}} - -1. Open [VS Code](https://code.visualstudio.com/docs/copilot/overview) and create a `.vscode` directory in your project root if it doesn't exist. -1. Create a `.vscode/mcp.json` file if it doesn't exist and open it. -1. Add the following configuration, replace the environment variables with your values, and save: - - ```json - { - "mcpServers": { - "cloud-sql-postgres": { - "command": "./PATH/TO/toolbox", - "args": ["--prebuilt","cloud-sql-postgres","--stdio"], - "env": { - "CLOUD_SQL_POSTGRES_PROJECT": "", - "CLOUD_SQL_POSTGRES_REGION": "", - "CLOUD_SQL_POSTGRES_INSTANCE": "", - "CLOUD_SQL_POSTGRES_DATABASE": "", - "CLOUD_SQL_POSTGRES_USER": "", - "CLOUD_SQL_POSTGRES_PASSWORD": "" - } - } - } - } - ``` -{{% /tab %}} - -{{% tab header="Windsurf" lang="en" %}} - -1. Open [Windsurf](https://docs.codeium.com/windsurf) and navigate to the Cascade assistant. -1. Tap on the hammer (MCP) icon, then Configure to open the configuration file. -1. Add the following configuration, replace the environment variables with your values, and save: - - ```json - { - "mcpServers": { - "cloud-sql-postgres": { - "command": "./PATH/TO/toolbox", - "args": ["--prebuilt","cloud-sql-postgres","--stdio"], - "env": { - "CLOUD_SQL_POSTGRES_PROJECT": "", - "CLOUD_SQL_POSTGRES_REGION": "", - "CLOUD_SQL_POSTGRES_INSTANCE": "", - "CLOUD_SQL_POSTGRES_DATABASE": "", - "CLOUD_SQL_POSTGRES_USER": "", - "CLOUD_SQL_POSTGRES_PASSWORD": "" - } - } - } - } - - ``` -{{% /tab %}} -{{< /tabpane >}} - -## Use Tools - -Your AI tool is now connected to Cloud SQL for PostgreSQL using MCP. Try asking your AI assistant to list tables, create a table, or define and execute other SQL statements. - -The following tools are available to the LLM: - -1. **list_tables**: lists tables and descriptions -1. **execute_sql**: execute any SQL statement - -{{< notice 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. -{{< /notice >}} + + + + + + diff --git a/docs/en/how-to/connect-ide/spanner_mcp.md b/docs/en/how-to/connect-ide/spanner_mcp.md index e880055c5e..9e38b28c6c 100644 --- a/docs/en/how-to/connect-ide/spanner_mcp.md +++ b/docs/en/how-to/connect-ide/spanner_mcp.md @@ -5,354 +5,9 @@ weight: 2 description: > Connect your IDE to Spanner using Toolbox. --- - -[Model Context Protocol (MCP)](https://modelcontextprotocol.io/introduction) is an open protocol for connecting Large Language Models (LLMs) to data sources like Spanner. This guide covers how to use [MCP Toolbox for Databases][toolbox] to expose your developer assistant tools to a Spanner instance: - -* [Cursor][cursor] -* [Windsurf][windsurf] (Codium) -* [Visual Studio Code ][vscode] (Copilot) -* [Cline][cline] (VS Code extension) -* [Claude desktop][claudedesktop] -* [Claude code][claudecode] - -[toolbox]: https://github.com/googleapis/genai-toolbox -[cursor]: #configure-your-mcp-client -[windsurf]: #configure-your-mcp-client -[vscode]: #configure-your-mcp-client -[cline]: #configure-your-mcp-client -[claudedesktop]: #configure-your-mcp-client -[claudecode]: #configure-your-mcp-client - -## Before you begin - -1. In the Google Cloud console, on the [project selector page](https://console.cloud.google.com/projectselector2/home/dashboard), select or create a Google Cloud project. - -1. [Make sure that billing is enabled for your Google Cloud project](https://cloud.google.com/billing/docs/how-to/verify-billing-enabled#confirm_billing_is_enabled_on_a_project). - - -## Set up the database - -1. [Enable the Spanner API in the Google Cloud project](https://console.cloud.google.com/flows/enableapi?apiid=spanner.googleapis.com&redirect=https://console.cloud.google.com). - -1. [Create or select a Spanner instance and database](https://cloud.google.com/spanner/docs/create-query-database-console). - -1. Configure the required roles and permissions to complete this task. You will need [Cloud Spanner Database User](https://cloud.google.com/spanner/docs/iam#roles) role (`roles/spanner.databaseUser`) or equivalent IAM permissions to connect to the instance. - -1. Configured [Application Default Credentials (ADC)](https://cloud.google.com/docs/authentication/set-up-adc-local-dev-environment) for your environment. - -## Install MCP Toolbox - -1. Download the latest version of Toolbox as a binary. Select the [correct binary](https://github.com/googleapis/genai-toolbox/releases) corresponding to your OS and CPU architecture. You are required to use Toolbox version V0.6.0+: - - - {{< tabpane persist=header >}} -{{< tab header="linux/amd64" lang="bash" >}} -curl -O https://storage.googleapis.com/genai-toolbox/v0.7.0/linux/amd64/toolbox -{{< /tab >}} - -{{< tab header="darwin/arm64" lang="bash" >}} -curl -O https://storage.googleapis.com/genai-toolbox/v0.7.0/darwin/arm64/toolbox -{{< /tab >}} - -{{< tab header="darwin/amd64" lang="bash" >}} -curl -O https://storage.googleapis.com/genai-toolbox/v0.7.0/darwin/amd64/toolbox -{{< /tab >}} - -{{< tab header="windows/amd64" lang="bash" >}} -curl -O https://storage.googleapis.com/genai-toolbox/v0.7.0/windows/amd64/toolbox -{{< /tab >}} -{{< /tabpane >}} - - - -1. Make the binary executable: - - ```bash - chmod +x toolbox - ``` - -1. Verify the installation: - - ```bash - ./toolbox --version - ``` - -## Configure your MCP Client - -{{< tabpane text=true >}} -{{% tab header="Claude code" lang="en" %}} - -1. Install [Claude Code](https://docs.anthropic.com/en/docs/agents-and-tools/claude-code/overview). -1. Create a `.mcp.json` file in your project root if it doesn't exist. -1. Add the following configuration, replace the environment variables with your values, and save: - - Spanner with `googlesql` dialect - ```json - { - "mcpServers": { - "spanner": { - "command": "./PATH/TO/toolbox", - "args": ["--prebuilt","spanner","--stdio"], - "env": { - "SPANNER_PROJECT": "", - "SPANNER_INSTANCE": "", - "SPANNER_DATABASE": "" - } - } - } - } - ``` - - Spanner with `postgresql` dialect - - ```json - { - "mcpServers": { - "spanner": { - "command": "./PATH/TO/toolbox", - "args": ["--prebuilt","spanner-postgres","--stdio"], - "env": { - "SPANNER_PROJECT": "", - "SPANNER_INSTANCE": "", - "SPANNER_DATABASE": "" } - } - } - } - ``` - -1. Restart Claude code to apply the new configuration. -{{% /tab %}} - -{{% tab header="Claude desktop" lang="en" %}} - -1. Open [Claude desktop](https://claude.ai/download) and navigate to Settings. -1. Under the Developer tab, tap Edit Config to open the configuration file. -1. Add the following configuration, replace the environment variables with your values, and save: - - Spanner with `googlesql` dialect - ```json - { - "mcpServers": { - "spanner": { - "command": "./PATH/TO/toolbox", - "args": ["--prebuilt","spanner","--stdio"], - "env": { - "SPANNER_PROJECT": "", - "SPANNER_INSTANCE": "", - "SPANNER_DATABASE": "" - } - } - } - } - ``` - - Spanner with `postgresql` dialect - - ```json - { - "mcpServers": { - "spanner": { - "command": "./PATH/TO/toolbox", - "args": ["--prebuilt","spanner-postgres","--stdio"], - "env": { - "SPANNER_PROJECT": "", - "SPANNER_INSTANCE": "", - "SPANNER_DATABASE": "" - } - } - } - } - ``` - -1. Restart Claude desktop. -1. From the new chat screen, you should see a hammer (MCP) icon appear with the new MCP server available. -{{% /tab %}} - -{{% tab header="Cline" lang="en" %}} - -1. Open the [Cline](https://github.com/cline/cline) extension in VS Code and tap the **MCP Servers** icon. -1. Tap Configure MCP Servers to open the configuration file. -1. Add the following configuration, replace the environment variables with your values, and save: - - Spanner with `googlesql` dialect - ```json - { - "mcpServers": { - "spanner": { - "command": "./PATH/TO/toolbox", - "args": ["--prebuilt","spanner","--stdio"], - "env": { - "SPANNER_PROJECT": "", - "SPANNER_INSTANCE": "", - "SPANNER_DATABASE": "" - } - } - } - } - ``` - - Spanner with `postgresql` dialect - - ```json - { - "mcpServers": { - "spanner": { - "command": "./PATH/TO/toolbox", - "args": ["--prebuilt","spanner-postgres","--stdio"], - "env": { - "SPANNER_PROJECT": "", - "SPANNER_INSTANCE": "", - "SPANNER_DATABASE": "" - } - } - } - } - ``` - -1. You should see a green active status after the server is successfully connected. -{{% /tab %}} - -{{% tab header="Cursor" lang="en" %}} - -1. Create a `.cursor` directory in your project root if it doesn't exist. -1. Create a `.cursor/mcp.json` file if it doesn't exist and open it. -1. Add the following configuration, replace the environment variables with your values, and save: - - Spanner with `googlesql` dialect - ```json - { - "mcpServers": { - "spanner": { - "command": "./PATH/TO/toolbox", - "args": ["--prebuilt","spanner","--stdio"], - "env": { - "SPANNER_PROJECT": "", - "SPANNER_INSTANCE": "", - "SPANNER_DATABASE": "" - } - } - } - } - ``` - - Spanner with `postgresql` dialect - - ```json - { - "mcpServers": { - "spanner": { - "command": "./PATH/TO/toolbox", - "args": ["--prebuilt","spanner-postgres","--stdio"], - "env": { - "SPANNER_PROJECT": "", - "SPANNER_INSTANCE": "", - "SPANNER_DATABASE": "" - } - } - } - } - ``` - -1. [Cursor](https://www.cursor.com/) and navigate to **Settings > Cursor Settings > MCP**. You should see a green active status after the server is successfully connected. -{{% /tab %}} - -{{% tab header="Visual Studio Code (Copilot)" lang="en" %}} - -1. Open [VS Code](https://code.visualstudio.com/docs/copilot/overview) and create a `.vscode` directory in your project root if it doesn't exist. -1. Create a `.vscode/mcp.json` file if it doesn't exist and open it. -1. Add the following configuration, replace the environment variables with your values, and save: - - Spanner with `googlesql` dialect - ```json - { - "mcpServers": { - "spanner": { - "command": "./PATH/TO/toolbox", - "args": ["--prebuilt","spanner","--stdio"], - "env": { - "SPANNER_PROJECT": "", - "SPANNER_INSTANCE": "", - "SPANNER_DATABASE": "" - } - } - } - } - ``` - - Spanner with `postgresql` dialect - - ```json - { - "mcpServers": { - "spanner": { - "command": "./PATH/TO/toolbox", - "args": ["--prebuilt","spanner-postgres","--stdio"], - "env": { - "SPANNER_PROJECT": "", - "SPANNER_INSTANCE": "", - "SPANNER_DATABASE": "" - } - } - } - } - ``` - -{{% /tab %}} - -{{% tab header="Windsurf" lang="en" %}} - -1. Open [Windsurf](https://docs.codeium.com/windsurf) and navigate to the Cascade assistant. -1. Tap on the hammer (MCP) icon, then Configure to open the configuration file. -1. Add the following configuration, replace the environment variables with your values, and save: - - Spanner with `googlesql` dialect - ```json - { - "mcpServers": { - "spanner": { - "command": "./PATH/TO/toolbox", - "args": ["--prebuilt","spanner","--stdio"], - "env": { - "SPANNER_PROJECT": "", - "SPANNER_INSTANCE": "", - "SPANNER_DATABASE": "" - } - } - } - } - ``` - - Spanner with `postgresql` dialect - - ```json - { - "mcpServers": { - "spanner": { - "command": "./PATH/TO/toolbox", - "args": ["--prebuilt","spanner-postgres","--stdio"], - "env": { - "SPANNER_PROJECT": "", - "SPANNER_INSTANCE": "", - "SPANNER_DATABASE": "" - } - } - } - } - ``` - -{{% /tab %}} -{{< /tabpane >}} - -## Use Tools - -Your AI tool is now connected to Spanner using MCP. Try asking your AI assistant to list tables, create a table, or define and execute other SQL statements. - -The following tools are available to the LLM: - -1. **list_tables**: lists tables and descriptions -1. **execute_sql**: execute DML SQL statement -1. **execute_sql_dql**: execute DQL SQL statement - -{{< notice 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. -{{< /notice >}} \ No newline at end of file + + + + + +