mcpField
M
MCP Server for Spanner

MCP Server for Spanner

本地服务
github.com/k65miyazakiy数据库080 周前更新

关于 MCP Server for Spanner

MCP Server for Spanner 连接 Spanner 模拟器,让 AI 助手检查架构并执行 SQL,适用于使用 Spanner 的开发者;目前仅支持连接模拟器。

主要功能

  1. 01执行 SELECT 查询
  2. 02执行 INSERT、UPDATE 和 DELETE
  3. 03执行 DDL 语句
  4. 04列出数据库表
  5. 05查看表结构

适用场景

  1. 01查询 Spanner 模拟器中的数据
  2. 02开发时检查数据表
  3. 03通过 MCP 测试数据库变更

MCP 相关

该服务向 MCP 客户端提供五种工具:read_query、list_tables、describe_table、execute_ddl 和 execute_write。目前仅支持连接 Spanner 模拟器。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

MCP Server for Spanner

MCP Server for Spanner 是一个 Model Context Protocol (MCP) 服务,用于连接 Google Cloud Spanner 数据库并执行 SQL 查询。它主要作为 AI 助手等与 Spanner 数据库交互的工具。

功能

  • 执行 SELECT 查询
  • 执行数据更新(INSERT、UPDATE、DELETE)查询
  • 执行 DDL(CREATE TABLE、ALTER TABLE 等)查询
  • 获取表列表
  • 显示表结构详情

安装

前提条件
  • Node.js 22 或更高版本
  • 可使用 Spanner 模拟器或 devcontainer 的环境
设置
# リポジトリのクローン
git clone <repository-url>
cd mcp-server-spanner

# 依存関係のインストール
npm install

# TypeScriptのビルド
npm run build

注:目前,此工具仅支持连接 Spanner 模拟器。

使用方法

按照 MCP 服务的一般启动方法操作。 这里列出具体的使用示例,包括在 Claude Desktop 中使用,以及使用开发用 MCP Inspector 的方法。

在 Claude Desktop 中配置(Mac/Linux)

请参照 Claude Desktop 的配置,编辑以下配置中的 Spanner 模拟器连接信息部分并添加配置。

    "spanner": {
      "command": "bash",
      "args": [
        "YOUR_LOCAL_REPOSITORY_ROOT/bin/mcp-server-spanner",
        "--project-id=YOUR_PROJECT_ID",
        "--instance-id=YOUR_INSTANCE_ID",
        "--database-id=YOUR_DATABASE_ID",
        "--api-endpoint=localhost:9010"
      ],
    }

之后,请重启 Claude Desktop。

提供的工具

作为 MCP 服务,提供以下工具:

  1. read_query:执行 SELECT 查询
  2. list_tables:获取数据库的表列表
  3. describe_table:显示指定表的结构
  4. execute_ddl:执行 DDL 查询
  5. execute_write:执行更新类(INSERT、UPDATE、DELETE)查询

环境变量

环境变量说明默认值
PROJECT_IDGoogle Cloud 项目 IDdev-project
INSTANCE_IDSpanner 实例 IDdev-instance
DATABASE_IDSpanner 数据库 IDdev-database
API_ENDPOINTSpanner API 端点(用于模拟器)spanner-emulator:9010
SPANNER_EMULATOR_HOSTSpanner 模拟器的主机(根据 API_ENDPOINT 自动设置)

开发者信息

使用 devcontainer 构建环境

本仓库支持使用 devcontainer 进行开发。 在 VSCode 中克隆本仓库后,请在容器中打开。

devcontainer 会自动设置容器、Spanner 模拟器、实例和数据库。

使用 Inspector

在 shell 中运行以下命令。

# MCPプロトコル形式でサーバーを起動
npm run inspect

可以通过环境变量指定所用 Spanner 模拟器的端点:

# 環境変数で接続情報を指定する例
export PROJECT_ID=your-project-id
export INSTANCE_ID=your-instance-id
export DATABASE_ID=your-database-id
export API_ENDPOINT=localhost:9010
npm run inspect

许可证

MIT

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。