使用说明
项目简介
SingleStore MCP Server 是一个基于 Model Context Protocol (MCP) 构建的后端服务器,旨在为大型语言模型 (LLM) 应用提供与 SingleStore 数据库交互的能力。通过此服务器,LLM 客户端可以安全、便捷地访问 SingleStore 数据库中的数据和功能,实现上下文感知和外部功能调用。
主要功能点
- 数据库表管理: 列出数据库中的所有表。
- SQL 查询执行: 执行自定义 SQL 查询,获取数据库数据。
- 表结构描述: 获取表的详细信息,包括模式定义和示例数据。
- ER 图生成: 生成数据库模式的 Mermaid 实体关系图,方便数据库结构可视化。
- 数据操作: 支持创建新表和向现有表插入合成数据。
- SQL 优化: 分析 SQL 查询性能并提供优化建议。
安装步骤
- 克隆仓库:
git clone https://github.com/madhukarkumar/singlestore-mcp-server cd singlestore-mcp-server - 安装依赖:
npm install - 构建项目:
npm run build
服务器配置
要将 SingleStore MCP Server 集成到 MCP 客户端(例如 Claude Desktop),您需要在客户端的 MCP 设置文件中添加服务器配置。以下是一个示例 'claude_desktop_config.json' 配置,请根据您的实际情况修改路径和数据库连接信息:
{ "mcpServers": { "singlestore": { "command": "node", "args": ["/path/to/singlestore-mcp-server/build/index.js"], "env": { "SINGLESTORE_HOST": "your-host.singlestore.com", // 您的 SingleStore 主机地址 "SINGLESTORE_PORT": "3306", // 您的 SingleStore 端口 "SINGLESTORE_USER": "your-username", // 您的 SingleStore 用户名 "SINGLESTORE_PASSWORD": "your-password", // 您的 SingleStore 密码 "SINGLESTORE_DATABASE": "your-database" // 您的 SingleStore 数据库名 } } } }
配置参数说明:
- 'server name': 服务器名称,例如 "singlestore",客户端通过此名称引用服务器。
- 'command': 启动服务器的命令,这里是 'node',表示使用 Node.js 运行 JavaScript 文件。
- 'args': 传递给 'command' 的参数,指向服务器构建后的入口文件 '/path/to/singlestore-mcp-server/build/index.js'。请替换为您的实际路径。
- 'env': 环境变量配置,用于配置数据库连接信息:
- 'SINGLESTORE_HOST': SingleStore 数据库主机地址。
- 'SINGLESTORE_PORT': SingleStore 数据库端口,默认为 3306。
- 'SINGLESTORE_USER': 连接 SingleStore 数据库的用户名。
- 'SINGLESTORE_PASSWORD': 连接 SingleStore 数据库的密码。
- 'SINGLESTORE_DATABASE': 要连接的 SingleStore 数据库名称。
注意: 请将 '/path/to/singlestore-mcp-server' 替换为您实际的项目路径。 确保在运行 MCP 客户端之前,您已经正确设置了这些环境变量。
基本使用方法
配置完成后,您可以使用 MCP 客户端提供的 'use_mcp_tool' 函数来调用 SingleStore MCP Server 提供的工具。以下是一些使用示例:
1. 列出所有表:
use_mcp_tool({ server_name: "singlestore", tool_name: "list_tables", arguments: {} })
2. 执行 SQL 查询:
use_mcp_tool({ server_name: "singlestore", tool_name: "query_table", arguments: { query: "SELECT * FROM your_table LIMIT 5" // 替换为您的 SQL 查询 } })
3. 描述表结构:
use_mcp_tool({ server_name: "singlestore", tool_name: "describe_table", arguments: { table: "your_table" // 替换为您要描述的表名 } })
4. 生成 ER 图:
use_mcp_tool({ server_name: "singlestore", tool_name: "generate_er_diagram", arguments: {} })
更多工具的使用方法,请参考仓库 README.md 文档中的 "Usage" 部分。
信息
分类
数据库与文件