SuperAPI AI 工具集

mcp-server-singlestore

SingleStore MCP Server 是 SingleStore Labs 提供的 Model Context Protocol(MCP)服务器,用于让兼容 MCP 的客户端(如 Claude Desktop、Claude Code、Cursor、VS Code、Windsurf、Goose 等)通过自然语言与 SingleStore 管理 API 及服务交互。它提供安装器,支持自动或手动配置,无需 API 密钥、令牌或环境变量,启动时通过浏览器 OAuth 自动完成认证。服务器内置多种工具,可获取用户与组织信息、管理组织、查看工作区组与工作区、恢复工作区、管理 Starter 工作区、查询区域、执行 SQL、创建与上传 Notebook、基于 Notebook 创建定时任务、管理 Stage 部署文件等。使用需 Python >= 3.10.0 且安装 uvx。Docker 方式需 API 密钥,因为容器内不支持 OAuth。

访问官网

工具介绍

SingleStore MCP Server 是一个基于 Model Context Protocol(MCP)的服务器,用于连接大语言模型(LLM)与 SingleStore 数据库平台。MCP 是一种标准化协议,用于管理 LLM 与外部系统之间的上下文。该仓库提供安装器和 MCP 服务器,使 Claude Desktop、Claude Code、Cursor 或任何兼容 MCP 的客户端能够使用自然语言与 SingleStore 交互,从而更轻松地执行复杂操作。

用途:通过自然语言与 SingleStore Management API 和服务交互,简化数据库管理、工作区操作、SQL 执行、Notebook 与任务管理、Stage 文件管理等任务。

主要能力:服务器实现了一系列工具,包括:

  • get_user_info:获取当前用户信息,无需参数。
  • organization_info:获取当前组织信息,无需参数。
  • choose_organization:从可用组织中选择(仅在未设置 API 密钥环境变量时可用),无需参数。
  • set_organization:设置活动组织(仅在未设置 API 密钥环境变量时可用),参数 organization_id(字符串)。
  • workspace_groups_info:获取用户可访问的工作区组信息,无需参数。
  • workspaces_info:获取特定工作区组中的工作区信息,参数 workspace_group_id(字符串)。
  • resume_workspace:恢复已暂停的工作区,参数 workspace_id(字符串)。
  • list_starter_workspaces:列出用户可访问的所有 Starter 工作区,无需参数。
  • create_starter_workspace:创建新的 Starter 工作区,参数为工作区配置参数。
  • terminate_starter_workspace:终止现有 Starter 工作区,参数 workspace_id(字符串)。
  • list_regions:获取支持工作区的所有区域列表,无需参数。
  • list_sharedtier_regions:获取共享层区域列表,无需参数。
  • run_sql:在连接的工作区上执行 SQL 操作,参数 workspace_id、database、sql_query 和连接参数,返回结构化查询结果。
  • create_notebook_file:在 SingleStore Spaces 中创建新的 Notebook 文件,参数 notebook_name、content(可选)。
  • upload_notebook_file:上传 Notebook 文件到 SingleStore Spaces,参数 file_path、notebook_name。
  • create_job_from_notebook:从 Notebook 创建定时任务,参数包括 notebook_path、schedule_mode 等任务配置。
  • get_job:获取现有任务详情,参数 job_id(字符串)。
  • delete_job:删除现有任务,参数 job_id(字符串)。
  • stage_list_files:列出 Stage 部署文件系统中的文件和文件夹,参数 deployment_id(字符串)、path(字符串,可选)。
  • stage_get_file:按路径从 Stage 获取文件,参数 deployment_id(字符串)、path(字符串)、return_type(字符串:'metadata'、'url' 或 'content'),返回文件元数据、下载 URL 或文本内容。
  • stage_create_folder:在 Stage 中创建文件夹,参数 deployment_id(字符串)、path(字符串)。
  • stage_upload_file:上传带文本内容的文件到 Stage,参数 deployment_id(字符串)、path(字符串)、content(字符串)、local_path(字符串)。
  • stage_move:在 Stage 中移动或重命名文件或文件夹,参数 deployment_id(字符串)、source_path(字符串)、destination_path(字符串)。
  • stage_delete:从 Stage 删除文件或文件夹,参数 deployment_id(字符串)、path(字符串)。 注意:组织管理工具(choose_organization 和 set_organization)仅在未设置 API 密钥环境变量时可用,允许在 OAuth 认证期间进行交互式组织选择。

使用方式: 先决条件:Python >= v3.10.0;在 Python 环境中安装 uvx;使用 VS Code、Cursor、Windsurf、Claude Desktop、Claude Code、Goose 或其他 MCP 客户端。 安装:使用标准配置在大多数工具中可用。无需 API 密钥、令牌或环境变量!服务器启动时通过浏览器 OAuth 自动处理认证。

  • 自动设置:可自动运行 Claude CLI 命令。
  • 手动设置:遵循 MCP 安装指南,使用标准配置。
  • Cursor:转到 Cursor 设置 -> MCP -> 添加新的 MCP 服务器,命名,使用命令类型,命令为 uvx singlestore-mcp-server start。也可通过点击编辑验证配置或添加命令行参数。
  • VS Code:遵循 MCP 安装指南,使用标准配置。也可使用 VS Code CLI 安装。安装后,SingleStore MCP 服务器将可用于 VS Code 中的 GitHub Copilot 代理。
  • Windsurf:遵循 Windsurf MCP 文档,使用标准配置。
  • 其他客户端:如 Program 侧边栏 -> 安装 -> 编辑 mcp.json,使用标准配置;或高级设置 -> 扩展 -> 添加自定义扩展,类型 STDIO,命令 uvx singlestore-mcp-server start;或 Qodo Gen 聊天面板 -> 连接更多工具 -> 添加新 MCP -> 粘贴标准配置。 注意:使用 Docker 时需要 API 密钥,因为 Docker 容器中运行的服务器不支持 OAuth 流程。可以自行构建 Docker 镜像。为更好安全性,建议使用 Docker Desktop 配置 SingleStore MCP 服务器。

开发:使用 uv 进行依赖管理。克隆仓库,安装依赖,设置 pre-commit 钩子(可选但推荐)。开发工作流使用 Ruff 进行 linting 和格式化。发布流程通过 git 标签和自动化 PyPI 发布管理:创建发布使用 ./scripts/release.sh(交互式工具),推送版本标签触发自动发布,无需手动上传 PyPI。详见 scripts/dev-workflow.md。

适用场景:适用于需要通过自然语言管理 SingleStore 数据库、工作区、组织、Notebook、任务和 Stage 文件的开发人员或数据团队,尤其适合使用 Claude Desktop、Cursor、VS Code 等 MCP 客户端的用户。

限制:需要 Python >= 3.10.0 和 uvx;Docker 方式需要 API 密钥且不支持 OAuth;组织管理工具仅在未设置 API 密钥环境变量时可用。其他具体限制暂未提供。