O servidor MCP ClickHouse é uma implementação do Model Context Protocol (MCP) desenvolvida oficialmente pelo ClickHouse, especificamente para fornecer aos assistentes de IA (como o Claude) uma conexão segura e capacidade de interação com o banco de dados ClickHouse. Este projeto, através do protocolo MCP padronizado, permite que os assistentes de IA executem consultas SQL, gerenciem a estrutura do banco de dados e realizem análises de dados em tempo real.
MCP (Model Context Protocol) é um padrão aberto, projetado para fornecer às aplicações de IA uma forma segura e padronizada de integração de serviços externos. Através deste servidor, os usuários podem permitir que os assistentes de IA acessem diretamente seus bancos de dados ClickHouse, possibilitando consultas e análises de dados inteligentes.
run_select_query
)readonly = 1
, garantindo a segurança dos dados.sql
(string): A instrução de consulta SQL a ser executada.list_databases
)list_tables
)database
(string): Nome do banco de dados.~/Library/Application Support/Claude/claude_desktop_config.json
%APPDATA%/Claude/claude_desktop_config.json
{
"mcpServers": {
"mcp-clickhouse": {
"command": "uv",
"args": [
"run",
"--with",
"mcp-clickhouse",
"--python",
"3.13",
"mcp-clickhouse"
],
"env": {
"CLICKHOUSE_HOST": "<clickhouse-host>",
"CLICKHOUSE_PORT": "<clickhouse-port>",
"CLICKHOUSE_USER": "<clickhouse-user>",
"CLICKHOUSE_PASSWORD": "<clickhouse-password>",
"CLICKHOUSE_SECURE": "true",
"CLICKHOUSE_VERIFY": "true",
"CLICKHOUSE_CONNECT_TIMEOUT": "30",
"CLICKHOUSE_SEND_RECEIVE_TIMEOUT": "30"
}
}
}
}
CLICKHOUSE_HOST
: Nome do host do servidor ClickHouse.CLICKHOUSE_USER
: Nome de usuário para autenticação.CLICKHOUSE_PASSWORD
: Senha para autenticação.CLICKHOUSE_PORT
: Número da porta.CLICKHOUSE_SECURE
: Habilita/Desabilita a conexão HTTPS.CLICKHOUSE_VERIFY
: Habilita/Desabilita a verificação do certificado SSL.CLICKHOUSE_CONNECT_TIMEOUT
: Tempo limite de conexão (segundos).CLICKHOUSE_SEND_RECEIVE_TIMEOUT
: Tempo limite de envio/recebimento (segundos).CLICKHOUSE_DATABASE
: Banco de dados padrão para conexão.{
"env": {
"CLICKHOUSE_HOST": "sql-clickhouse.clickhouse.com",
"CLICKHOUSE_PORT": "8443",
"CLICKHOUSE_USER": "demo",
"CLICKHOUSE_PASSWORD": "",
"CLICKHOUSE_SECURE": "true",
"CLICKHOUSE_VERIFY": "true"
}
}
# Configuração do arquivo .env
CLICKHOUSE_HOST=localhost
CLICKHOUSE_USER=default
CLICKHOUSE_PASSWORD=clickhouse
CLICKHOUSE_SECURE=false
CLICKHOUSE_VERIFY=false
CLICKHOUSE_HOST=your-instance.clickhouse.cloud
CLICKHOUSE_USER=default
CLICKHOUSE_PASSWORD=your-password
# Usando as configurações de segurança padrão
# Instalar dependências
uv sync
# Ativar o ambiente virtual
source .venv/bin/activate
# Iniciar o servidor de desenvolvimento
mcp dev mcp_clickhouse/mcp_server.py
# Instalar dependências de desenvolvimento
uv sync --all-extras --dev
# Verificação de código
uv run ruff check .
# Iniciar os serviços de teste
docker compose up -d test_services
# Executar os testes
uv run pytest tests
O projeto do servidor MCP ClickHouse constrói uma ponte segura e eficiente entre os assistentes de IA e o banco de dados ClickHouse. Através do protocolo MCP padronizado, ele permite que os assistentes de IA compreendam e operem estruturas de banco de dados complexas, executem consultas SQL sofisticadas e forneçam insights de dados em tempo real.
Este projeto representa uma nova direção na integração de IA e banco de dados, fornecendo aos desenvolvedores uma ferramenta poderosa e segura, permitindo que os assistentes de IA realmente compreendam e operem recursos de dados de nível empresarial.