Mcp Server Spanner

Mcp Server Spanner

🚀 适用于Spanner的模型上下文协议服务器

适用于Spanner的模型上下文协议服务器(MCP Server for Spanner)是一个支持Model Context Protocol(MCP)的服务器,它能够连接到Google Cloud Spanner数据库并执行SQL查询。该服务器主要用于实现AI助手等工具与Spanner数据库之间的交互,为数据操作提供了便利。

🚀 快速开始

MCP Server for Spanner 可帮助你轻松连接 Google Cloud Spanner 数据库并执行各类 SQL 查询。以下将为你详细介绍其安装和使用方法。

✨ 主要特性

  • 查询执行:支持执行 SELECT 查询、数据更新(INSERT、UPDATE、DELETE)查询以及 DDL(CREATE TABLE、ALTER TABLE 等)查询。
  • 表信息获取:可以获取数据库中的表列表,并显示指定表的详细结构信息。

📦 安装指南

先决条件

  • Node.js 22 或更高版本
  • 可用的 Spanner 模拟器或 devcontainer 环境

设置步骤

# 克隆仓库
git clone 
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_ID Google Cloud 项目 ID,默认值为 dev-project
INSTANCE_ID Spanner 实例 ID,默认值为 dev-instance
DATABASE_ID Spanner 数据库 ID,默认值为 dev-database
API_ENDPOINT Spanner API 端点(用于模拟器),默认值为 spanner-emulator:9010
SPANNER_EMULATOR_HOST Spanner 模拟器的主机,默认从 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

📄 许可证

请参考项目仓库中的许可证文件。

  • 0 关注
  • 0 收藏,10 浏览
  • system 提出于 2025-09-24 19:15

相似服务问题