模型上下文协议 (MCP) 是一个标准化协议,旨在管理大型语言模型 (LLMs) 和外部系统之间的上下文。此仓库提供了一个安装程序和一个适用于 Singlestore 的 MCP 服务器,实现了无缝集成。
通过 MCP,您可以使用 Claude Desktop、Claude Code、Cursor 或任何兼容的 MCP 客户端以自然语言与 SingleStore 进行交互,使执行复杂操作变得更加轻松。
💡 小贴士:不确定 MCP 服务器能做什么?只需在聊天中调用 /help 提示!
首先,使用您的客户端安装 SingleStore MCP 服务器。
标准配置 在大多数工具中都能工作:
{
"mcpServers": {
"singlestore-mcp-server": {
"command": "uvx",
"args": [
"singlestore-mcp-server",
"start"
]
}
}
}
无需 API 密钥、令牌或环境变量! 当启动时,服务器会自动通过浏览器 OAuth 处理身份验证。
<details> <summary>Claude Desktop</summary>自动设置:
uvx singlestore-mcp-server init --client=claude-desktop
手动设置: 遵循 MCP 安装 指南,使用上述标准配置。
</details> <details> <summary>Claude Code</summary>自动设置:
uvx singlestore-mcp-server init --client=claude-code
这将自动为您运行 Claude CLI 命令。
手动设置:
claude mcp add singlestore-mcp-server uvx singlestore-mcp-server start
</details>
<details>
<summary>Cursor</summary>
自动设置:
uvx singlestore-mcp-server init --client=cursor
手动设置:
前往 Cursor 设置 -> MCP -> 添加新 MCP 服务器。按喜好命名,使用命令类型 uvx singlestore-mcp-server start。您也可以通过点击 编辑 来验证配置或添加命令行参数。
自动设置:
uvx singlestore-mcp-server init --client=vscode
手动设置: 遵循 MCP 安装 指南,使用上述标准配置。您也可以使用 VS Code CLI 进行安装:
code --add-mcp '{"name":"singlestore-mcp-server","command":"uvx","args":["singlestore-mcp-server","start"]}'
安装后,SingleStore MCP 服务器将在 VS Code 中与您的 GitHub Copilot 代理一起使用。
</details> <details> <summary>Windsurf</summary>自动设置:
uvx singlestore-mcp-server init --client=windsurf
手动设置: 遵循 Windsurf MCP 文档。使用上述标准配置。
</details> <details> <summary>Gemini CLI</summary>自动设置:
uvx singlestore-mcp-server init --client=gemini
手动设置: 遵循 MCP 安装 指南,使用上述标准配置。
</details> <details> <summary>LM Studio</summary>自动设置:
uvx singlestore-mcp-server init --client=lm-studio
手动设置:
前往右侧边栏中的 Program -> Install -> Edit mcp.json。使用上述标准配置。
仅手动设置:
前往 高级设置 -> 扩展 -> 添加自定义扩展。按喜好命名,使用类型 STDIO,并将 command 设置为 uvx singlestore-mcp-server start。点击“添加扩展”。
仅手动设置: 在 VSCode 或 IntelliJ 中打开 Qodo Gen 聊天面板 → 连接更多工具 → + 添加新 MCP → 粘贴上述标准配置。
点击 <code>保存</code>。
</details>注意:当使用 Docker 时需要 API 密钥,因为 OAuth 流程不支持在 Docker 容器中运行的服务器。
{
"mcpServers": {
"singlestore-mcp-server": {
"command": "docker",
"args": [
"run", "-i", "--rm", "--init", "--pull=always",
"-e", "MCP_API_KEY=your_api_key_here",
"singlestore/mcp-server-singlestore"
]
}
}
}
您可以自己构建 Docker 镜像:
docker build -t singlestore/mcp-server-singlestore .
为了更好的安全性,我们建议使用 Docker Desktop 来配置 SingleStore MCP 服务器——详情请参阅 这篇博客文章 关于 Docker 新的 MCP 目录。
服务器实现了以下工具:
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:列出用户可以访问的所有初始工作空间
create_starter_workspace:创建新的初始工作空间
terminate_starter_workspace:终止现有的初始工作空间
参数:workspace_id (字符串)
终止指定的初始工作空间
list_regions:获取支持工作空间的所有区域列表
list_sharedtier_regions:获取共享层级区域列表
run_sql:在连接的工作空间上执行 SQL 操作
workspace_id,database,sql_query 和连接参数create_notebook_file:在 SingleStore Spaces 中创建新的笔记本文件
notebook_name,content (可选)upload_notebook_file:将笔记本文件上传到 SingleStore Spaces
file_path,notebook_namecreate_job_from_notebook:从笔记本创建计划任务
notebook_path,schedule_mode 等的任务配置get_job:获取现有任务的详细资料
job_id (字符串)delete_job:删除现有任务
job_id (字符串)注意:组织管理工具 (choose_organization 和 set_organization) 仅在未设置 API 密钥环境变量时可用,允许在 OAuth 认证期间进行交互式组织选择。
git clone https://github.com/singlestore-labs/mcp-server-singlestore.git
cd mcp-server-singlestore
uv sync --dev
uv run pre-commit install
# 快速质量检查(快速反馈)
./scripts/check.sh
# 独立运行测试
./scripts/test.sh
# 综合验证(提交 PR 前)
./scripts/check-all.sh
# 创建并发布版本
./scripts/release.sh
# 运行带有覆盖率的测试套件
./scripts/test.sh
# 或直接使用 pytest
uv run pytest
uv run pytest --cov=src --cov-report=html
我们使用 Ruff 进行代码格式化和检查:
# 格式化代码
uv run ruff format src/ tests/
# 检查代码
uv run ruff check src/ tests/
# 自动修复问题
uv run ruff check --fix src/ tests/
版本通过 git 标签管理和自动化 PyPI 发布:
./scripts/release.sh(交互式工具)详情请参阅 scripts/dev-workflow.md 的开发流程文档。