Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

Использование MCP-сервера ClickHouse с LibreChat

В этом руководстве показано, как настроить LibreChat с MCP-сервером ClickHouse с помощью Docker и подключить его к демонстрационным наборам данных ClickHouse.

Установите Docker

Для запуска LibreChat и MCP-сервера вам понадобится Docker. Чтобы установить Docker:

  1. Перейдите на docker.com
  2. Скачайте Docker Desktop для своей операционной системы
  3. Установите Docker, следуя инструкциям для своей операционной системы
  4. Откройте Docker Desktop и убедитесь, что он запущен

Дополнительные сведения см. в документации Docker.

Клонируйте репозиторий LibreChat

Откройте терминал (командную строку или PowerShell) и клонируйте репозиторий LibreChat с помощью следующей команды:

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

Создайте и отредактируйте файл `.env`

Скопируйте пример файла конфигурации из .env.example в .env:

cp .env.example .env

Откройте файл .env в любом удобном для вас текстовом редакторе. Вы увидите разделы для многих популярных провайдеров LLM, включая OpenAI, Anthropic, AWS Bedrock и т. д., например:

.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=

Замените user_provided на API-ключ провайдера LLM, который вы хотите использовать.

Создайте файл librechat.yaml

Выполните следующую команду, чтобы создать новый файл librechat.yaml:

cp librechat.example.yaml librechat.yaml

Это создаст основной файл конфигурации для LibreChat.

Добавьте MCP-сервер ClickHouse в Docker Compose

Далее добавим MCP-сервер ClickHouse в файл Docker Compose для LibreChat, чтобы LLM могла взаимодействовать с песочницей ClickHouse SQL.

Создайте файл docker-compose.override.yml и добавьте в него следующую конфигурацию:

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

Если вы хотите изучить собственные данные, это можно сделать, используя хост, имя пользователя и пароль своего сервиса ClickHouse Cloud.

Начать работу с ClickHouse Cloud

Если у вас ещё нет аккаунта Cloud, начните работу с ClickHouse Cloud уже сегодня и получите $300 кредитов. По окончании 30-дневного бесплатного пробного периода вы сможете перейти на тариф с оплатой по мере использования или связаться с нами, чтобы узнать больше о наших скидках в зависимости от объёма. Подробности см. на странице с тарифами.

Настройка MCP Server в librechat.yaml

Откройте librechat.yaml и добавьте в конец файла следующую конфигурацию:

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

Это настраивает LibreChat для подключения к MCP-серверу, работающему в Docker.

Найдите следующую строку:

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

Для простоты пока отключим аутентификацию:

librechat.yamltext
socialLogins: []

Добавление локальной LLM с помощью Ollama (необязательно)

Установка Ollama

Перейдите на сайт Ollama и установите Ollama для своей системы.

После установки вы сможете запустить модель следующим образом:

ollama run qwen3:32b

Это скачает модель на ваш локальный компьютер, если её там ещё нет.

Список моделей см. в библиотеке Ollama

Настройка Ollama в librechat.yaml

После загрузки модели укажите её в 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"

Запустите все сервисы

В корневой папке проекта LibreChat выполните следующую команду, чтобы запустить все сервисы:

docker compose up

Подождите, пока все сервисы полностью не заработают.

Откройте LibreChat в браузере

Когда все сервисы будут запущены, откройте браузер и перейдите по адресу http://localhost:3080/

Создайте бесплатную учетную запись LibreChat, если у вас ее еще нет, и войдите в систему. Теперь вы должны увидеть интерфейс LibreChat, подключенный к MCP-серверу ClickHouse, а при желании — к вашей локальной LLM.

В интерфейсе чата выберите clickhouse-playground в качестве MCP-сервера:

Выберите MCP-сервер

Теперь вы можете дать LLM промпт для изучения примерных наборов данных ClickHouse. Попробуйте:

Prompttext
What datasets do you have access to?

Если в разделе mcpServers внутри interface для use установлено значение false, в чате не будет отображаться раскрывающийся список выбора MCP:

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