使用说明
ClickHouse MCP服务器
一个模型上下文协议(MCP)服务器,连接到ClickHouse数据库,允许像Claude这样的LLM通过自然语言查询来探索和分析数据。
特性
- 连接到ClickHouse数据库
- 将表架构作为资源公开
- 从自然语言指令运行SQL查询
- 执行只读SQL查询
- 适用于macOS的Claude Desktop
演示
https://github.com/user-attachments/assets/b496b9b0-5955-49d5-8c26-733f34662d8f
安装
- 克隆此存储库
- 安装依赖项:
npm install
- 在
.env文件(参见.env.example供参考)。 确保您使用只读数据库用户来限制DDL和DML的执行 - 构建项目:
npm run build
用法
在本地运行服务器
npm start
与Claude Desktop集成
-
创建或更新您的Claude Desktop配置文件:
- 在 macOS 上:
~/Library/Application Support/Claude/claude_desktop_config.json
- 在 macOS 上:
-
添加服务器配置:
{
"mcpServers": {
"clickhouse-analytics": {
"command": "node",
"args": [
"/absolute/path/to/clickhouse-mcp-server/dist/index.js"
],
"env": {
"CLICKHOUSE_URL": "your_clickhouse_url",
"CLICKHOUSE_USERNAME": "your_username",
"CLICKHOUSE_PASSWORD": "your_password",
"CLICKHOUSE_DATABASE": "your_database"
}
}
}
}
- 重新启动克劳德桌面
可用特征
资源
db://info-数据库信息,包括表和模式table://{tableName}/schema-特定表的架构table://{tableName}/sample-特定表中的示例数据(5行)
工具
execute-sql-对数据库运行只读SQL查询natural-language-query-用自然语言询问有关数据的问题
安全考虑
- 此服务器只允许只读SQL查询
- 敏感凭据应安全地存储在环境变量中
- 服务器执行基本验证以防止DDL或DML语句执行
- 执行前始终检查查询请求
许可证
麻省理工学院