﻿---
title: "安装 Spanner 插件"
summary: "从 Data Agent Kit 安装 spanner@data-agent-kit，配置 ADC 和 SPANNER_PROJECT 等实例信息，通过本地 spanner MCP 查询数据库。"
category: skills
level: intermediate
surfaces: [cli, app]
tags: ["plugins", "Spanner", "MCP", "Google Cloud", "data-agent-kit"]
canonical: /tips/spanner-codex-plugin/
---

# 安装 Spanner 插件

从 Data Agent Kit 安装 spanner@data-agent-kit，配置 ADC 和 SPANNER_PROJECT 等实例信息，通过本地 spanner MCP 查询数据库。

从 Data Agent Kit 安装 spanner@data-agent-kit，配置 ADC 和 SPANNER_PROJECT 等实例信息，通过本地 spanner MCP 查询数据库。

这是 [gemini-cli-extensions/spanner](https://github.com/gemini-cli-extensions/spanner) 的 Codex 专节。插件把 MCP Toolbox 的预置 `spanner` 封装为插件，用 ADC 加实例连接参数连 Cloud Spanner，用于查看 schema 和执行 SQL。

要 Codex **v0.117.0+**，本机有 Node / npx。先开 Spanner API，IAM 至少 `roles/spanner.databaseReader`（写库再加 `roles/spanner.databaseUser`），再准备 ADC：

```bash
gcloud auth application-default login
export SPANNER_PROJECT=YOUR_SPANNER_PROJECT
export SPANNER_INSTANCE=YOUR_SPANNER_INSTANCE
export SPANNER_DATABASE=YOUR_SPANNER_DATABASE
# 可选：SPANNER_DIALECT=googlesql 或 postgresql，默认 googlesql
```

不要把项目号写进 `http_headers` 当密钥。方言不要抄成 AlloyDB 那套 `ALLOYDB_POSTGRES_*`。

清单 `.agents/plugins/marketplace.json` 的 name 是 `data-agent-kit`，插件 name 是 `spanner`：

```bash
codex --version
codex plugin marketplace add GoogleCloudPlatform/data-agent-kit
codex plugin add spanner@data-agent-kit
codex plugin list
codex mcp list
```

IDE 扩展没有 `/plugins`。

插件会登记一台 **stdio** MCP，表名就是 `spanner`。command 是 `npx`，args 指定 `@toolbox-sdk/server@1.9.0 --prebuilt spanner --stdio`。**不要** `codex mcp login spanner`。插件已经带 MCP 时，不要再 `codex mcp add spanner -- npx @toolbox-sdk/server` 叠一张用户层表。


可选：`codex plugin marketplace upgrade data-agent-kit` 后再 `plugin add` 一次。0.154 起先看当前会话的 `/plugins` 和 `/mcp`；没有再新开。`codex mcp list` 里应有 `spanner`。连接失败先看 ADC 和三个必填 `SPANNER_*` 是不是进了同一进程，以及 npx 能不能拉到 Toolbox。

## 来源

- [gemini-cli-extensions/spanner](https://github.com/gemini-cli-extensions/spanner)
- [GoogleCloudPlatform/data-agent-kit](https://github.com/GoogleCloudPlatform/data-agent-kit)
- [Google Cloud · Use Spanner with MCP Toolbox](https://docs.cloud.google.com/spanner/docs/pre-built-tools-with-mcp-toolbox)
