Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

Usando o servidor MCP ClickHouse com o LibreChat

Este guia explica como configurar o LibreChat com um servidor MCP ClickHouse usando Docker e conectá-lo aos datasets de exemplo do ClickHouse.

Instale o Docker

Você precisará do Docker para executar o LibreChat e o servidor MCP. Para instalar o Docker:

  1. Acesse docker.com
  2. Baixe o Docker Desktop para o seu sistema operacional
  3. Instale o Docker seguindo as instruções do seu sistema operacional
  4. Abra o Docker Desktop e verifique se ele está em execução

Para mais informações, consulte a documentação do Docker.

Faça um clone do repositório do LibreChat

Abra um terminal (Prompt de Comando, terminal ou PowerShell) e faça o clone do repositório do LibreChat usando o seguinte comando:

git clone https://github.com/danny-avila/LibreChat.git
cd LibreChat

Crie e edite o arquivo `.env`

Copie o arquivo de configuração de exemplo de .env.example para .env:

cp .env.example .env

Abra o arquivo .env no editor de texto de sua preferência. Você verá seções para vários provedores populares de LLM, incluindo OpenAI, Anthropic, AWS Bedrock etc., por exemplo:

.venvtext
#============#
# Anthropic  #
#============#
ANTHROPIC_API_KEY=user_provided
# ANTHROPIC_MODELS=claude-opus-4-20250514,claude-sonnet-4-20250514,claude-3-7-sonnet-20250219,claude-3-5-sonnet-20241022,claude-3-5-haiku-20241022,claude-3-opus-20240229,claude-3-sonnet-20240229,claude-3-haiku-20240307
# ANTHROPIC_REVERSE_PROXY=

Substitua user_provided pela sua API key do provedor de LLM que você quer usar.

Crie um arquivo librechat.yaml

Execute o comando a seguir para criar um novo arquivo librechat.yaml:

cp librechat.example.yaml librechat.yaml

Isso cria o arquivo de configuração principal do LibreChat.

Adicione o servidor MCP do ClickHouse ao Docker Compose

Em seguida, vamos adicionar o servidor MCP do ClickHouse ao arquivo Docker Compose do LibreChat para que o LLM possa interagir com o playground do ClickHouse SQL.

Crie um arquivo chamado docker-compose.override.yml e adicione a seguinte configuração a ele:

docker-compose.override.ymlyml
services:
  api:
    volumes:
      - ./librechat.yaml:/app/librechat.yaml
  mcp-clickhouse:
    image: mcp/clickhouse
    container_name: mcp-clickhouse
    ports:
      - 8001:8000
    extra_hosts:
      - "host.docker.internal:host-gateway"
    environment:
      - CLICKHOUSE_HOST=sql-clickhouse.clickhouse.com
      - CLICKHOUSE_USER=demo
      - CLICKHOUSE_PASSWORD=
      - CLICKHOUSE_MCP_SERVER_TRANSPORT=sse
      - CLICKHOUSE_MCP_BIND_HOST=0.0.0.0

Se você quiser explorar seus próprios dados, pode fazer isso usando o host, nome de usuário e senha do seu serviço ClickHouse Cloud.

Comece a usar o ClickHouse Cloud

Se você ainda não tem uma conta Cloud, comece a usar o ClickHouse Cloud hoje mesmo e receba US$ 300 em créditos. Ao final do teste gratuito de 30 dias, continue com um plano pré-pago conforme o uso ou entre em contato conosco para saber mais sobre nossos descontos por volume. Visite nossa página de preços para mais detalhes.

Configure o servidor MCP no librechat.yaml

Abra librechat.yaml e adicione a seguinte configuração ao final do arquivo:

mcpServers:
  clickhouse-playground:
    type: sse
    url: http://host.docker.internal:8001/sse

Isso configura o LibreChat para se conectar ao servidor MCP rodando no Docker.

Encontre a seguinte linha:

librechat.yamltext
socialLogins: ['github', 'google', 'discord', 'openid', 'facebook', 'apple', 'saml']

Para simplificar, vamos eliminar a necessidade de autenticação por enquanto:

librechat.yamltext
socialLogins: []

Adicione um LLM local usando o Ollama (opcional)

Instale o Ollama

Acesse o site do Ollama e instale o Ollama no seu sistema.

Depois da instalação, você pode executar um modelo assim:

ollama run qwen3:32b

Isso baixará o modelo para sua máquina local, caso ele ainda não esteja presente.

Para ver uma lista de modelos, consulte a biblioteca do Ollama

Configure o Ollama em librechat.yaml

Depois que o modelo for baixado, configure-o em librechat.yaml:

librechat.yamltext
custom:
  - name: "Ollama"
    apiKey: "ollama"
    baseURL: "http://host.docker.internal:11434/v1/"
    models:
      default:
        [
          "qwen3:32b"
        ]
      fetch: false
    titleConvo: true
    titleModel: "current_model"
    summarize: false
    summaryModel: "current_model"
    forcePrompt: false
    modelDisplayLabel: "Ollama"

Inicie todos os serviços

Na pasta raiz do projeto LibreChat, execute o comando a seguir para iniciar os serviços:

docker compose up

Aguarde até que todos os serviços estejam em pleno funcionamento.

Abra o LibreChat no navegador

Quando todos os serviços estiverem em execução, abra o navegador e acesse http://localhost:3080/

Crie uma conta gratuita no LibreChat, caso ainda não tenha uma, e faça login. Agora você deverá ver a interface do LibreChat conectada ao ClickHouse MCP server e, opcionalmente, ao seu LLM local.

Na interface de chat, selecione clickhouse-playground como seu servidor MCP:

Selecione seu MCP server

Agora você pode enviar um prompt ao LLM para explorar os datasets de exemplo do ClickHouse. Experimente:

Prompttext
What datasets do you have access to?

Se use estiver definido como false na seção mcpServers, em interface, a lista suspensa para seleção de MCP não aparecerá no chat:

librechat.yamlyml
interface:
  mcpServers:
    use: true
    share: false
    create: false
    public: false
Navigation