> ## Documentation Index
> Fetch the complete documentation index at: https://private-7c7dfe99-vortex-format.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Como usar o servidor MCP do ClickHouse com o Open WebUI

> Este guia explica como configurar o Open WebUI com o servidor MCP do ClickHouse usando Docker.

export const Image = ({img, alt, size = "lg"}) => {
  const normalizedSize = ["sm", "md", "lg"].includes(size) ? size : "lg";
  return <div className={`ch-image-${normalizedSize}`}>
      <Frame>
        <img src={img} alt={alt} />
      </Frame>
    </div>;
};

> Este guia explica como configurar o [Open WebUI](https://github.com/open-webui/open-webui) com um servidor MCP do ClickHouse
> e conectá-lo aos conjuntos de dados de exemplo do ClickHouse.

<Steps>
  <Step title="Instalar o uv" id="install-uv">
    Você precisará instalar o [uv](https://docs.astral.sh/uv/) para seguir as instruções deste guia.
    Se não quiser usar o uv, será necessário atualizar a config do servidor MCP para usar um gerenciador de pacotes alternativo.
  </Step>

  <Step title="Iniciar o Open WebUI" id="launch-open-webui">
    Para iniciar o Open WebUI, você pode executar o seguinte comando:

    ```bash theme={null}
    uv run --with open-webui open-webui serve
    ```

    Acesse [http://localhost:8080/](http://localhost:8080/) para ver a UI.
  </Step>

  <Step title="Configurar o servidor MCP do ClickHouse" id="configure-clickhouse-mcp-server">
    Para configurar o servidor MCP do ClickHouse, precisaremos converter o servidor MCP em endpoints OpenAPI.
    Primeiro, vamos definir variáveis de ambiente que nos permitirão conectar ao playground SQL do ClickHouse:

    ```bash theme={null}
    export CLICKHOUSE_HOST="sql-clickhouse.clickhouse.com"
    export CLICKHOUSE_USER="demo"
    export CLICKHOUSE_PASSWORD=""
    ```

    Em seguida, podemos executar `mcpo` para criar os endpoints OpenAPI:

    ```bash theme={null}
    uvx mcpo --port 8000 -- uv run --with mcp-clickhouse --python 3.10 mcp-clickhouse
    ```

    Você pode ver uma lista dos endpoints criados acessando [http://localhost:8000/docs](http://localhost:8000/docs)

    <Image img="https://mintcdn.com/private-7c7dfe99-vortex-format/mc_CXbtYxT_GqYxL/images/use-cases/AI_ML/MCP/0_endpoints.webp?fit=max&auto=format&n=mc_CXbtYxT_GqYxL&q=85&s=e08cb52990ea84f3739005932686f2f6" alt="Endpoints OpenAPI" size="md" width="1455" height="759" data-path="images/use-cases/AI_ML/MCP/0_endpoints.webp" />

    Para usar esses endpoints com o Open WebUI, precisamos ir até as configurações:

    <Image img="https://mintcdn.com/private-7c7dfe99-vortex-format/mc_CXbtYxT_GqYxL/images/use-cases/AI_ML/MCP/1_settings.webp?fit=max&auto=format&n=mc_CXbtYxT_GqYxL&q=85&s=5140bc7444bf2890cfa7d05b968a13fe" alt="Configurações do Open WebUI" size="md" width="518" height="575" data-path="images/use-cases/AI_ML/MCP/1_settings.webp" />

    Clique em `Tools`:

    <Image img="https://mintcdn.com/private-7c7dfe99-vortex-format/mc_CXbtYxT_GqYxL/images/use-cases/AI_ML/MCP/2_tools_page.webp?fit=max&auto=format&n=mc_CXbtYxT_GqYxL&q=85&s=e63a420bdaf31537a3f6744c041642d5" alt="Ferramentas do Open WebUI" size="md" width="1829" height="1190" data-path="images/use-cases/AI_ML/MCP/2_tools_page.webp" />

    Adicione [http://localhost:8000](http://localhost:8000) como URL da ferramenta:

    <Image img="https://mintcdn.com/private-7c7dfe99-vortex-format/mc_CXbtYxT_GqYxL/images/use-cases/AI_ML/MCP/3_add_tool.webp?fit=max&auto=format&n=mc_CXbtYxT_GqYxL&q=85&s=3de5b7f95709fa59909a47f3f24cfe8d" alt="Ferramenta do Open WebUI" size="md" width="1838" height="1201" data-path="images/use-cases/AI_ML/MCP/3_add_tool.webp" />

    Depois de fazer isso, deveremos ver um `1` ao lado do ícone da ferramenta na barra de chat:

    <Image img="https://mintcdn.com/private-7c7dfe99-vortex-format/mc_CXbtYxT_GqYxL/images/use-cases/AI_ML/MCP/4_tools_available.webp?fit=max&auto=format&n=mc_CXbtYxT_GqYxL&q=85&s=66a911187a8151bf7282570b74e46a71" alt="Ferramentas disponíveis no Open WebUI" size="md" width="1495" height="229" data-path="images/use-cases/AI_ML/MCP/4_tools_available.webp" />

    Se clicarmos no ícone da ferramenta, poderemos listar as ferramentas disponíveis:

    <Image img="https://mintcdn.com/private-7c7dfe99-vortex-format/mc_CXbtYxT_GqYxL/images/use-cases/AI_ML/MCP/5_list_of_tools.webp?fit=max&auto=format&n=mc_CXbtYxT_GqYxL&q=85&s=bc669ff4d482a808e4e54a1236e35962" alt="Lista de ferramentas do Open WebUI" size="md" width="1373" height="711" data-path="images/use-cases/AI_ML/MCP/5_list_of_tools.webp" />
  </Step>

  <Step title="Configurar o OpenAI" id="configure-openai">
    Por padrão, o Open WebUI funciona com modelos do Ollama, mas também podemos adicionar endpoints compatíveis com OpenAI.
    Eles são configurados pelo menu de configurações, mas desta vez precisamos clicar na aba `Connections`:

    <Image img="https://mintcdn.com/private-7c7dfe99-vortex-format/mc_CXbtYxT_GqYxL/images/use-cases/AI_ML/MCP/6_connections.webp?fit=max&auto=format&n=mc_CXbtYxT_GqYxL&q=85&s=306fcbe4dffd227370be6ca20158925e" alt="Conexões do Open WebUI" size="md" width="1824" height="1184" data-path="images/use-cases/AI_ML/MCP/6_connections.webp" />

    Vamos adicionar o endpoint e nossa chave da OpenAI:

    <Image img="https://mintcdn.com/private-7c7dfe99-vortex-format/mc_CXbtYxT_GqYxL/images/use-cases/AI_ML/MCP/7_add_connection.webp?fit=max&auto=format&n=mc_CXbtYxT_GqYxL&q=85&s=aa1dca3f6404b413c592aa1b84345487" alt="Open WebUI - Adicionar OpenAI como conexão" size="md" width="1821" height="1192" data-path="images/use-cases/AI_ML/MCP/7_add_connection.webp" />

    Os modelos da OpenAI ficarão disponíveis no menu superior:

    <Image img="https://mintcdn.com/private-7c7dfe99-vortex-format/mc_CXbtYxT_GqYxL/images/use-cases/AI_ML/MCP/8_openai_models_more.webp?fit=max&auto=format&n=mc_CXbtYxT_GqYxL&q=85&s=50866552c34d4a309df93b37d7f838f6" alt="Open WebUI - Modelos" size="md" width="1574" height="1248" data-path="images/use-cases/AI_ML/MCP/8_openai_models_more.webp" />
  </Step>

  <Step title="Conversar com o servidor MCP do ClickHouse no Open WebUI" id="chat-to-clickhouse-mcp-server">
    Em seguida, podemos iniciar uma conversa, e o Open WebUI acionará o servidor MCP se necessário:

    <Image img="https://mintcdn.com/private-7c7dfe99-vortex-format/mc_CXbtYxT_GqYxL/images/use-cases/AI_ML/MCP/9_conversation.webp?fit=max&auto=format&n=mc_CXbtYxT_GqYxL&q=85&s=811df4b7acf2ede51f59a178efed4881" alt="Open WebUI - Conversar com o servidor MCP do ClickHouse" size="md" width="2449" height="1839" data-path="images/use-cases/AI_ML/MCP/9_conversation.webp" />
  </Step>
</Steps>
