Clickhouse数据库服务器

一个用于连接和执行Clickhouse数据库查询的服务器项目,支持多查询执行和配置管理。

  • by burakdirin
  • Python
  • 本地部署
  • 2 星标
  • 更新于
在 GitHub 查看 burakdirin/clickhouse-mcp-server

使用说明

Clickhouse MCP服务器

Clickhouse数据库MCP服务器项目。

安装

您可以使用以下命令安装该软件包 uv:

uv pip install clickhouse-mcp-server

或使用 pip:

pip install clickhouse-mcp-server

组件

工具

服务器提供两个工具:

  • connect_database:连接到特定的Clickhouse数据库

    • database 参数:要连接的数据库的名称(字符串)
    • 连接成功时返回确认消息
  • execute_query:执行Clickhouse查询

    • query 参数:SQL查询/要执行的查询(字符串)
    • 以JSON格式返回查询结果
    • 可以发送多个查询,用分号分隔

配置

服务器使用以下环境变量:

  • CLICKHOUSE_HOST:Clickhouse服务器地址(默认:“localhost”)
  • CLICKHOUSE_USER:Clickhouse用户名(默认:“root”)
  • CLICKHOUSE_PASSWORD:Clickhouse密码(默认:“”)
  • CLICKHOUSE_DATABASE:初始数据库(可选)
  • CLICKHOUSE_READONLY:只读模式(设置为1/true以启用,默认值:false)

快速启动

安装

克劳德桌面

MacOS: ~/Library/Application\ Support/Claude/claude_desktop_config.json

窗户: %APPDATA%/Claude/claude_desktop_config.json

Development/Unpublished Server Configuration
{
  "mcpServers": {
    "clickhouse-mcp-server": {
      "command": "uv",
      "args": [
        "--directory",
        "/Users/burakdirin/Projects/clickhouse-mcp-server",
        "run",
        "clickhouse-mcp-server"
      ],
      "env": {
        "CLICKHOUSE_HOST": "localhost",
        "CLICKHOUSE_USER": "root",
        "CLICKHOUSE_PASSWORD": "password",
        "CLICKHOUSE_DATABASE": "[optional]",
        "CLICKHOUSE_READONLY": "true"
      }
    }
  }
}
Published Server Configuration
{
  "mcpServers": {
    "clickhouse-mcp-server": {
      "command": "uvx",
      "args": [
        "clickhouse-mcp-server"
      ],
      "env": {
        "CLICKHOUSE_HOST": "localhost",
        "CLICKHOUSE_USER": "root",
        "CLICKHOUSE_PASSWORD": "password",
        "CLICKHOUSE_DATABASE": "[optional]",
        "CLICKHOUSE_READONLY": "true"
      }
    }
  }
}

通过Smithery安装

通过以下方式自动安装适用于Claude Desktop的Clickhouse数据库集成服务器 史密瑟里:

npx -y @smithery/cli install @burakdirin/clickhouse-mcp-server --client claude

发展

建筑与出版

准备分发包裹:

  1. 同步依赖关系并更新锁文件:
uv sync
  1. 构建包分发:
uv build

这将在 dist/ 目录。

  1. 发布到PyPI:
uv publish

注意:您需要通过环境变量或命令标志设置PyPI凭据:

  • 令牌: --token 或 UV_PUBLISH_TOKEN
  • 或用户名/密码: --username/UV_PUBLISH_USERNAME 和 --password/UV_PUBLISH_PASSWORD

调试

由于MCP服务器在stdio上运行,调试可能具有挑战性。为了达到最佳调试效果 经验,我们强烈建议使用 MCP检查员.

您可以通过以下方式启动MCP检查器 npm 使用此命令:

npx @modelcontextprotocol/inspector uv --directory /Users/burakdirin/Projects/clickhouse-mcp-server run clickhouse-mcp-server

启动后,检查器将显示一个URL,您可以在浏览器中访问该URL以开始调试。