本文档介绍如何将 AlloyDB Omni 实例连接到支持 Model Context Protocol (MCP) 的各种代理。
由于 AlloyDB Omni 与 PostgreSQL 兼容,因此您可以使用为 PostgreSQL 设计的工具和扩展程序。
如需进行最简单的设置,请使用 Gemini CLI 的专用 PostgreSQL 扩展程序;它直接将底层 MCP 服务器集成到扩展程序中,因此您无需单独设置服务器。您可以将 Gemini Code Assist 配置为使用 Gemini CLI,从而在 IDE 中获得类似的设置优势。
或者,支持 MCP 的其他 IDE 和代理可以通过 MCP Toolbox for Databases 进行连接。MCP Toolbox 是一款开源 MCP 服务器,旨在将 AI 智能体连接到您的数据。它可处理身份验证和连接池等任务,让您可以直接通过 IDE 使用自然语言与数据进行交互。
准备工作
在连接到 AlloyDB Omni 实例之前,请务必执行以下操作:
- 安装 AlloyDB Omni for Kubernetes 或 AlloyDB Omni for Containers,并拥有正在运行的数据库实例。
- 创建或重复使用数据库用户。准备好输入用户名和密码。
使用适用于 PostgreSQL 的 Gemini CLI 扩展程序
Gemini CLI 是一款开源 AI 智能体,旨在通过协助编码、调试、数据探索和内容创建来帮助完成开发工作流。其使命是提供一个代理接口,用于与 Data Cloud 服务和热门的开源数据库进行互动。
AlloyDB Omni 与 Gemini CLI 的集成是通过 PostgreSQL 扩展程序实现的。此扩展程序提供了一组用于与 PostgreSQL 和 AlloyDB Omni 进行互动的工具,让您能够直接从 Gemini CLI 使用自然语言提示管理数据库、执行查询和探索架构。
以下示例使用包含以下表的示例 ecommerce 数据库:
products:包含商品信息,包括product_id、product_name、category和price。customers:存储客户数据,例如customer_id、first_name、last_name和email。orders:包含订单信息,包括order_id、customer_id和order_date。
PostgreSQL 扩展程序中提供了以下工具:
| 类别 | 工具 | 自然语言提示示例 |
|---|---|---|
| 数据库操作 | execute_sql |
Show me the 10 most expensive products in the 'Laptops' category. |
get_query_plan |
Explain the query plan for a query that finds all customers who have not placed an order in the last 6 months. | |
list_active_queries |
What queries are running on the database? | |
database_overview |
Give me an overview of the current database. | |
list_tables |
Show me all the tables in the current database. | |
list_views |
What views are available? | |
list_schemas |
List all schemas. | |
list_triggers |
Show me the triggers on the orders table. | |
list_available_extensions |
What are the available extensions I can install? | |
list_installed_extensions |
List all the extensions that are installed. | |
list_indexes |
List all indexes. | |
list_sequences |
List all sequences. | |
| 数据库健康状况和维护 | list_autovacuum_configurations |
Show me the current autovacuum configuration. |
list_memory_configurations |
What are the current memory configurations? | |
list_top_bloated_tables |
List the top five most bloated tables. | |
list_replication_slots |
Display all active replication slots. | |
list_invalid_indexes |
Check for any invalid indexes in the ecommerce database. |
|
long_running_transactions |
Show me the long running transactions. | |
list_locks |
List all locks. | |
replication_stats |
Show me the replication stats. |
您可以通过以下两种方式使用适用于 PostgreSQL 的 Gemini CLI 扩展程序:
- 独立命令行工具
- 通过 Gemini Code Assist 集成到您的 IDE 中
Gemini CLI
- 安装 Gemini CLI(版本 0.6.0 或更高版本)。
- 使用以下命令从 GitHub 代码库安装适用于 Gemini CLI 的 PostgreSQL 扩展程序:
gemini extensions install https://github.com/gemini-cli-extensions/postgres
- 设置环境变量以连接到 AlloyDB Omni 实例:
export POSTGRES_HOST="DATABASE_HOST" export POSTGRES_PORT="DATABASE_PORT" export POSTGRES_DATABASE="DATABASE_NAME" export POSTGRES_USER="DATABASE_USER" export POSTGRES_PASSWORD="DATABASE_PASSWORD"
您还可以从工作目录中的
.env文件加载这些变量。 - 以互动模式启动 Gemini CLI:
该 CLI 会自动加载 PostgreSQL 扩展程序及其工具,您可以使用它们与数据库进行互动。gemini
Gemini Code Assist
为避免手动配置 MCP 服务器,可配置 Gemini Code Assist 以使用 Gemini CLI。
- 按照“Gemini CLI”标签页中的说明安装并配置 Gemini CLI 和
postgres扩展程序。 - 配置 Gemini Code Assist 以使用 Gemini CLI。
- 直接在 Gemini Code Assist 对话中使用自然语言开始与 AlloyDB Omni 实例互动。
使用 MCP Toolbox for Databases 连接其他 IDE
本部分介绍了如何使用 MCP Toolbox for Databases 从各种代理连接到 AlloyDB Omni 实例。
安装 MCP Toolbox for Databases
如需将 IDE 连接到 AlloyDB Omni,您必须安装 MCP Toolbox for Databases,这是一款可将 AI 代理连接到您的数据的开源服务器。
以二进制文件形式下载最新版本的 MCP Toolbox。选择与您的操作系统 (OS) 和 CPU 架构对应的二进制文件。
linux/amd64
curl -L -O https://storage.googleapis.com/genai-toolbox/v0.21.0/linux/amd64/toolbox
darwin/arm64
curl -L -O https://storage.googleapis.com/genai-toolbox/v0.21.0/darwin/arm64/toolbox
darwin/amd64
curl -L -O https://storage.googleapis.com/genai-toolbox/v0.21.0/darwin/amd64/toolbox
windows/amd64
curl -L -O https://storage.googleapis.com/genai-toolbox/v0.21.0/windows/amd64/toolbox.exe
将该二进制文件设为可执行文件。
chmod +x toolbox验证安装。
./toolbox --version
配置客户端
从以下选项中选择您的智能体工具:
光标
- 在项目根目录中创建
.cursor目录(如果尚不存在)。 - 创建
.cursor/mcp.json文件(如果尚不存在)并打开该文件。 - 添加以下配置,将环境变量替换为您的值,然后保存。
{
"mcpServers": {
"alloydbomni": {
"command": "PATH_TO_TOOLBOX",
"args": ["--prebuilt","postgres","--stdio"],
"env": {
"POSTGRES_HOST": "DATABASE_HOST",
"POSTGRES_PORT": "DATABASE_PORT",
"POSTGRES_DATABASE": "DATABASE_NAME",
"POSTGRES_USER": "DATABASE_USER",
"POSTGRES_PASSWORD": "DATABASE_PASSWORD"
}
}
}
}
- 打开 Cursor,然后依次前往设置 > Cursor 设置 > MCP。服务器连接时,系统会显示绿色的活跃状态。
Windsurf
- 打开 Windsurf 并前往 Cascade 助理。
- 点击 MCP 图标,然后点击配置以打开配置文件。
- 添加以下配置,将环境变量替换为您的值,然后保存。
{
"mcpServers": {
"alloydbomni": {
"command": "PATH_TO_TOOLBOX",
"args": ["--prebuilt","postgres","--stdio"],
"env": {
"POSTGRES_HOST": "DATABASE_HOST",
"POSTGRES_PORT": "DATABASE_PORT",
"POSTGRES_DATABASE": "DATABASE_NAME",
"POSTGRES_USER": "DATABASE_USER",
"POSTGRES_PASSWORD": "DATABASE_PASSWORD"
}
}
}
}
Visual Studio Code (Copilot)
- 打开 VS Code,并在项目根目录中创建
.vscode目录(如果尚不存在)。 - 创建
.vscode/mcp.json文件(如果尚不存在)并打开该文件。 - 添加以下配置,将环境变量替换为您的值,然后保存。
{
"servers": {
"alloydbomni": {
"command": "PATH_TO_TOOLBOX",
"args": ["--prebuilt","postgres","--stdio"],
"env": {
"POSTGRES_HOST": "DATABASE_HOST",
"POSTGRES_PORT": "DATABASE_PORT",
"POSTGRES_DATABASE": "DATABASE_NAME",
"POSTGRES_USER": "DATABASE_USER",
"POSTGRES_PASSWORD": "DATABASE_PASSWORD"
}
}
}
}
Cline
- 在 VS Code 中打开 Cline 扩展程序,然后点击 MCP 服务器图标。
- 点击配置 MCP 服务器以打开配置文件。
- 添加以下配置,将环境变量替换为您的值,然后保存。
{
"mcpServers": {
"alloydbomni": {
"command": "PATH_TO_TOOLBOX",
"args": ["--prebuilt","postgres","--stdio"],
"env": {
"POSTGRES_HOST": "DATABASE_HOST",
"POSTGRES_PORT": "DATABASE_PORT",
"POSTGRES_DATABASE": "DATABASE_NAME",
"POSTGRES_USER": "DATABASE_USER",
"POSTGRES_PASSWORD": "DATABASE_PASSWORD"
}
}
}
}
- 服务器成功连接后,系统会显示绿色的活跃状态。
Claude Desktop
- 打开 Claude Desktop,然后前往设置。
- 在开发者标签页中,点击修改配置以打开配置文件。
- 添加配置,将环境变量替换为您的值,然后保存。
{
"mcpServers": {
"alloydbomni": {
"command": "PATH_TO_TOOLBOX",
"args": ["--prebuilt","postgres","--stdio"],
"env": {
"POSTGRES_HOST": "DATABASE_HOST",
"POSTGRES_PORT": "DATABASE_PORT",
"POSTGRES_DATABASE": "DATABASE_NAME",
"POSTGRES_USER": "DATABASE_USER",
"POSTGRES_PASSWORD": "DATABASE_PASSWORD"
}
}
}
}
- 重启 Claude Desktop。
- 新聊天界面会显示锤子 (MCP) 图标以及新的 MCP 服务器。
Claude Code
- 安装 Claude Code。
- 在项目根目录中创建
.mcp.json目录(如果尚不存在)。 - 添加配置,将环境变量替换为您的值,然后保存。
{
"mcpServers": {
"alloydbomni": {
"command": "PATH_TO_TOOLBOX",
"args": ["--prebuilt","postgres","--stdio"],
"env": {
"POSTGRES_HOST": "DATABASE_HOST",
"POSTGRES_PORT": "DATABASE_PORT",
"POSTGRES_DATABASE": "DATABASE_NAME",
"POSTGRES_USER": "DATABASE_USER",
"POSTGRES_PASSWORD": "DATABASE_PASSWORD"
}
}
}
}
- 重启 Claude Code 以应用新配置。