
ClickHouse MCP
Подключает агента к ClickHouse: посмотреть базы и таблицы, выполнить SQL, оценить объём чтения до запуска. По умолчанию запросы только на чтение.
Как подключить
Что сделать до подключения
Менеджер пакетов uv; Python 3.12 рекомендуется для локального запуска
CLICKHOUSE_HOSTадрес вашего сервера ClickHouse или ClickHouse Cloud
CLICKHOUSE_USERотдельный пользователь ClickHouse с минимальными правами
CLICKHOUSE_PASSWORDпароль этого пользователя
CLICKHOUSE_PORTHTTP-порт: 8443 с TLS или 8123 без него; нативные порты 9000 и 9440 не подходят
Конфиг для вашего клиента
Команда в терминале, в папке проекта. Флаг --scope user подключит сервер для всех проектов. Подробно о Claude Code
claude mcp add --env 'CLICKHOUSE_HOST=<clickhouse-host>' --env 'CLICKHOUSE_USER=<clickhouse-user>' --env 'CLICKHOUSE_PASSWORD=<clickhouse-password>' --env CLICKHOUSE_SECURE=true --transport stdio clickhouse \
-- uv run --with mcp-clickhouse --python 3.12 mcp-clickhouseПроверка: claude mcp list показывает статус рядом с каждым сервером: ✔ Connected, ! Needs authentication или ✘ Failed to connect. Внутри сессии то же видно по команде /mcp.
Файл ~/.codex/config.toml или .codex/config.toml в доверенном проекте. Можно и командой codex mcp add. Подробно о Codex
[mcp_servers.clickhouse]
command = "uv"
args = ["run", "--with", "mcp-clickhouse", "--python", "3.12", "mcp-clickhouse"]
[mcp_servers.clickhouse.env]
CLICKHOUSE_HOST = "<clickhouse-host>"
CLICKHOUSE_USER = "<clickhouse-user>"
CLICKHOUSE_PASSWORD = "<clickhouse-password>"
CLICKHOUSE_SECURE = "true"Проверка: В интерфейсе codex введите /mcp: появится список активных серверов. Из терминала то же покажет codex mcp list.
Файл ~/.cursor/mcp.json для всех проектов или .cursor/mcp.json в папке проекта. Подробно о Cursor
{
"mcpServers": {
"clickhouse": {
"command": "uv",
"args": [
"run",
"--with",
"mcp-clickhouse",
"--python",
"3.12",
"mcp-clickhouse"
],
"env": {
"CLICKHOUSE_HOST": "<clickhouse-host>",
"CLICKHOUSE_USER": "<clickhouse-user>",
"CLICKHOUSE_PASSWORD": "<clickhouse-password>",
"CLICKHOUSE_SECURE": "true"
}
}
}
}Проверка: Откройте Customize в боковой панели: там список серверов с переключателями. Ошибки подключения смотрите в панели Output (Cmd+Shift+U), пункт MCP Logs в выпадающем списке.
Файл .mcp.json в корне проекта или ~/.copilot/mcp-config.json для всех проектов. Подробно о VS Code
{
"mcpServers": {
"clickhouse": {
"type": "stdio",
"command": "uv",
"args": [
"run",
"--with",
"mcp-clickhouse",
"--python",
"3.12",
"mcp-clickhouse"
],
"env": {
"CLICKHOUSE_HOST": "<clickhouse-host>",
"CLICKHOUSE_USER": "<clickhouse-user>",
"CLICKHOUSE_PASSWORD": "<clickhouse-password>",
"CLICKHOUSE_SECURE": "true"
}
}
}
}Проверка: Попросите Copilot выполнить безобидную задачу через сервер и раскройте вызов инструмента в чате. Одна запись в конфиге подключение не подтверждает.
Файл ~/.qwen/settings.json или .qwen/settings.json в проекте. Подробно о Qwen Code
{
"mcpServers": {
"clickhouse": {
"command": "uv",
"args": [
"run",
"--with",
"mcp-clickhouse",
"--python",
"3.12",
"mcp-clickhouse"
],
"env": {
"CLICKHOUSE_HOST": "<clickhouse-host>",
"CLICKHOUSE_USER": "<clickhouse-user>",
"CLICKHOUSE_PASSWORD": "<clickhouse-password>",
"CLICKHOUSE_SECURE": "true"
}
}
}
}Проверка: Запустите qwen и введите /mcp: откроется окно управления серверами. Из терминала статус покажет qwen mcp list.
Файл ~/.gemini/settings.json или .gemini/settings.json в проекте. Подробно о Gemini CLI
{
"mcpServers": {
"clickhouse": {
"command": "uv",
"args": [
"run",
"--with",
"mcp-clickhouse",
"--python",
"3.12",
"mcp-clickhouse"
],
"env": {
"CLICKHOUSE_HOST": "<clickhouse-host>",
"CLICKHOUSE_USER": "<clickhouse-user>",
"CLICKHOUSE_PASSWORD": "<clickhouse-password>",
"CLICKHOUSE_SECURE": "true"
}
}
}
}Проверка: gemini mcp list показывает каждый сервер, его настройки и статус Connected или Disconnected. В сессии /mcp выводит CONNECTED, CONNECTING или DISCONNECTED и список инструментов.
Файл opencode.json в папке проекта или ~/.config/opencode/opencode.json. Подробно о OpenCode
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"servers": {
"clickhouse": {
"type": "local",
"command": [
"uv",
"run",
"--with",
"mcp-clickhouse",
"--python",
"3.12",
"mcp-clickhouse"
],
"environment": {
"CLICKHOUSE_HOST": "<clickhouse-host>",
"CLICKHOUSE_USER": "<clickhouse-user>",
"CLICKHOUSE_PASSWORD": "<clickhouse-password>",
"CLICKHOUSE_SECURE": "true"
}
}
}
}
}Проверка: opencode mcp list показывает состояние каждого сервера, подключённый выглядит как ✓ context7 connected. Внутри OpenCode то же видно в /mcps.
Настройки → Разработчик → Изменить конфиг: файл claude_desktop_config.json. После правки перезапустите приложение. Подробно о Claude Desktop
{
"mcpServers": {
"clickhouse": {
"command": "uv",
"args": [
"run",
"--with",
"mcp-clickhouse",
"--python",
"3.12",
"mcp-clickhouse"
],
"env": {
"CLICKHOUSE_HOST": "<clickhouse-host>",
"CLICKHOUSE_USER": "<clickhouse-user>",
"CLICKHOUSE_PASSWORD": "<clickhouse-password>",
"CLICKHOUSE_SECURE": "true"
}
}
}
}Проверка: Нажмите «Add files, connectors, and more /» в левом нижнем углу поля ввода, наведите на Connectors и откройте Manage connectors. Выберите сервер, чтобы увидеть его инструменты.
Вкладка Program → Install → Edit mcp.json. Подробно о LM Studio
{
"mcpServers": {
"clickhouse": {
"command": "uv",
"args": [
"run",
"--with",
"mcp-clickhouse",
"--python",
"3.12",
"mcp-clickhouse"
],
"env": {
"CLICKHOUSE_HOST": "<clickhouse-host>",
"CLICKHOUSE_USER": "<clickhouse-user>",
"CLICKHOUSE_PASSWORD": "<clickhouse-password>",
"CLICKHOUSE_SECURE": "true"
}
}
}
}Проверка: Попросите модель в чате выполнить задачу через инструмент сервера. Через API сервер из mcp.json вызывают по id в integrations, например mcp/playwright.
Инструменты сервера
run_queryвыполняет SQL-запросlist_databasesпоказывает базыlist_tablesпоказывает таблицы с колонкамиrun_chdb_select_queryвыполняет запрос во встроенном chDBЧто попросить агента
Для каких задач
Ограничения
Запись выключена по умолчанию; INSERT и CREATE включаются через CLICKHOUSE_ALLOW_WRITE_ACCESS=true, а DROP, TRUNCATE и DELETE ещё и через CLICKHOUSE_ALLOW_DROP=true
Защита от удаления на стороне сервера MCP не заменяет права: реальную границу задают гранты пользователя ClickHouse
Сервер ходит только в HTTP-интерфейс ClickHouse, нативный протокол clickhouse-client не поддерживается
chDB ставится отдельно: pip install 'mcp-clickhouse[chdb]', на Python 3.15 он не устанавливается