Update docs formatting and bullet point indentation. Update option to move binary into executables folder.
4.0 KiB
Cloud Spanner MCP Server
The Cloud Spanner Model Context Protocol (MCP) Server gives AI-powered development tools the ability to work with your Google Cloud Spanner databases. It supports executing SQL queries and exploring schemas.
Features
An editor configured to use the Cloud Spanner MCP server can use its AI capabilities to help you:
- Query Data - Execute DML and DQL SQL queries
- Explore Schema - List tables and view schema details
Installation and Setup
Prerequisites
-
Download and install MCP Toolbox:
-
Download the Toolbox binary: Download the latest binary for your operating system and architecture from the storage bucket. Check the releases page for OS and CPU architecture support:
https://storage.googleapis.com/genai-toolbox/v0.21.0/<os>/<arch>/toolbox- Replace
<os>withlinux,darwin(macOS), orwindows. - Replace
<arch>withamd64(Intel) orarm64(Apple Silicon).
curl -L -o toolbox https://storage.googleapis.com/genai-toolbox/v0.21.0/linux/amd64/toolbox - Replace
-
Make it executable:
chmod +x toolbox -
Move binary to
/usr/local/bin/or/usr/bin/:sudo mv toolbox /usr/local/bin/ # sudo mv toolbox /usr/bin/On Windows, move binary to the
WindowsApps\folder:move "C:\Users\<path-to-binary>\toolbox.exe" "C:\Users\<username>\AppData\Local\Microsoft\WindowsApps\"Tip: Ensure the destination folder for your binary is included in your system's PATH environment variable. To check
PATH, useecho $PATH(orecho %PATH%on Windows).Note: You may need to restart Antigravity for changes to take effect.
-
-
A Google Cloud project with the Cloud Spanner API enabled.
-
Ensure Application Default Credentials are available in your environment.
-
IAM Permissions:
- Cloud Spanner Database User (
roles/spanner.databaseUser) (for data access) - Cloud Spanner Viewer (
roles/spanner.viewer) (for schema access)
- Cloud Spanner Database User (
Configuration
The MCP server is configured using environment variables.
export SPANNER_PROJECT="<your-gcp-project-id>"
export SPANNER_INSTANCE="<your-spanner-instance-id>"
export SPANNER_DATABASE="<your-spanner-database-id>"
export SPANNER_DIALECT="googlesql" # Optional: "googlesql" or "postgresql". Defaults to "googlesql".
Add the following configuration to your MCP client (e.g., settings.json for Gemini CLI):
{
"mcpServers": {
"spanner": {
"command": "toolbox",
"args": ["--prebuilt", "spanner", "--stdio"],
"env": {
"SPANNER_PROJECT": "your-project-id",
"SPANNER_INSTANCE": "your-instance-id",
"SPANNER_DATABASE": "your-database-name",
"SPANNER_DIALECT": "googlesql"
}
}
}
}
Usage
Once configured, the MCP server will automatically provide Cloud Spanner capabilities to your AI assistant. You can:
- "Execute a DML query to update customer names."
- "List all tables in the
my-database." - "Execute a DQL query to select data from
orderstable."
Server Capabilities
The Cloud Spanner MCP server provides the following tools:
| Tool Name | Description |
|---|---|
execute_sql |
Use this tool to execute DML SQL. |
execute_sql_dql |
Use this tool to execute DQL SQL. |
list_tables |
Lists detailed schema information for user-created tables. |
Documentation
For more information, visit the Cloud Spanner documentation.