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

# Using ClickHouse MCP server with Jan.ai

> This guide explains how to set up Jan.ai with a ClickHouse MCP server.

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

> This guide explains how to use the ClickHouse MCP server with [Jan.ai](https://jan.ai/docs).

<Steps>
  <Step title="Install Jan.ai" id="install-janai">
    Jan.ai is an open source ChatGPT-alternative that runs 100% offline.
    You can download Jan.ai for [Mac](https://jan.ai/docs/desktop/install/mac), [Windows](https://jan.ai/docs/desktop/windows), or [Linux](https://jan.ai/docs/desktop/linux).

    It's a native app, so once it's downloaded, you can launch it.
  </Step>

  <Step title="Add LLM to Jan.ai" id="add-llm-to-janai">
    We can enabled models via the settings menu.

    To enable OpenAI, we need to provide an API key, as shown below:

    <Image img="https://mintcdn.com/private-7c7dfe99-parallel-read-in-order-multi-part/37W7US7wfagQNRCb/images/use-cases/AI_ML/MCP/0_janai_openai.webp?fit=max&auto=format&n=37W7US7wfagQNRCb&q=85&s=48833ff789df911f94637fab848bf4e5" alt="Enable OpenAI models" size="md" width="938" height="359" data-path="images/use-cases/AI_ML/MCP/0_janai_openai.webp" />
  </Step>

  <Step title="Enable MCP servers" id="enable-mcp-servers">
    At the time of writing, MCP servers are an experimental feature in Jan.ai.
    We can enable them by toggling experimental features:

    <Image img="https://mintcdn.com/private-7c7dfe99-parallel-read-in-order-multi-part/37W7US7wfagQNRCb/images/use-cases/AI_ML/MCP/1_janai_mcp_servers.webp?fit=max&auto=format&n=37W7US7wfagQNRCb&q=85&s=c591b73aee46374f43d1bd97ed8ffcdd" alt="Enable MCP servers" size="md" width="1320" height="325" data-path="images/use-cases/AI_ML/MCP/1_janai_mcp_servers.webp" />

    Once that toggle is pressed, we'll see `MCP servers` on the left menu.
  </Step>

  <Step title="Configure ClickHouse MCP server" id="configure-clickhouse-mcp-server">
    If we click on the `MCP servers` menu, we'll see a list of MCP servers that we can connect to:

    <Image img="https://mintcdn.com/private-7c7dfe99-parallel-read-in-order-multi-part/37W7US7wfagQNRCb/images/use-cases/AI_ML/MCP/2_janai_mcp_servers_list.webp?fit=max&auto=format&n=37W7US7wfagQNRCb&q=85&s=fa3cde512700943e1ebd9a12038ae4af" alt="MCP servers list" size="md" width="1061" height="793" data-path="images/use-cases/AI_ML/MCP/2_janai_mcp_servers_list.webp" />

    There servers are all disabled by default, but we can able them by clicking the toggle.

    To install the ClickHouse MCP server, we need to click on the `+` icon and then populate the form with the following:

    <Image img="https://mintcdn.com/private-7c7dfe99-parallel-read-in-order-multi-part/37W7US7wfagQNRCb/images/use-cases/AI_ML/MCP/3_janai_add_mcp_server.webp?fit=max&auto=format&n=37W7US7wfagQNRCb&q=85&s=214374c6d62d75fec935a8a0a462ff86" alt="Add MCP server" size="md" width="543" height="551" data-path="images/use-cases/AI_ML/MCP/3_janai_add_mcp_server.webp" />

    Once we've done that, we'll need to toggle the ClickHouse Server if it's not already toggled:

    <Image img="https://mintcdn.com/private-7c7dfe99-parallel-read-in-order-multi-part/37W7US7wfagQNRCb/images/use-cases/AI_ML/MCP/4_janai_toggle.webp?fit=max&auto=format&n=37W7US7wfagQNRCb&q=85&s=9cfac1e08b36246a77be66010eaf5784" alt="Enable MCP server" size="md" width="759" height="147" data-path="images/use-cases/AI_ML/MCP/4_janai_toggle.webp" />

    The ClickHouse MCP server's tools will now be visible on the chat dialog:

    <Image img="https://mintcdn.com/private-7c7dfe99-parallel-read-in-order-multi-part/37W7US7wfagQNRCb/images/use-cases/AI_ML/MCP/5_jani_tools.webp?fit=max&auto=format&n=37W7US7wfagQNRCb&q=85&s=28bbb4e62ba9adc1a3d8c8fd00509517" alt="ClickHouse MCP server tools" size="md" width="625" height="367" data-path="images/use-cases/AI_ML/MCP/5_jani_tools.webp" />
  </Step>

  <Step title="Chat to ClickHouse MCP server with Jan.ai" id="chat-to-clickhouse-mcp-server">
    It's time to have a conversation about some data stored in ClickHouse!
    Let's ask a question:

    <Image img="https://mintcdn.com/private-7c7dfe99-parallel-read-in-order-multi-part/37W7US7wfagQNRCb/images/use-cases/AI_ML/MCP/6_janai_question.webp?fit=max&auto=format&n=37W7US7wfagQNRCb&q=85&s=05efefaf64d6d64d2b2c4fe9ecc955cb" alt="Question" size="md" width="830" height="183" data-path="images/use-cases/AI_ML/MCP/6_janai_question.webp" />

    Jan.ai will ask confirmation before calling a tool:

    <Image img="https://mintcdn.com/private-7c7dfe99-parallel-read-in-order-multi-part/37W7US7wfagQNRCb/images/use-cases/AI_ML/MCP/7_janai_tool_confirmation.webp?fit=max&auto=format&n=37W7US7wfagQNRCb&q=85&s=86dec02b3816bd7b4465ba1fb329690f" alt="Tool confirmation" size="md" width="538" height="274" data-path="images/use-cases/AI_ML/MCP/7_janai_tool_confirmation.webp" />

    It will then show us the list of tool calls that were made:

    <Image img="https://mintcdn.com/private-7c7dfe99-parallel-read-in-order-multi-part/37W7US7wfagQNRCb/images/use-cases/AI_ML/MCP/8_janai_tools_called.webp?fit=max&auto=format&n=37W7US7wfagQNRCb&q=85&s=d2cdc978aefc87bb75ee7235732fed1b" alt="Tools called" size="md" width="1174" height="577" data-path="images/use-cases/AI_ML/MCP/8_janai_tools_called.webp" />

    If we click on the tool call, we can see the details of the call:

    <Image img="https://mintcdn.com/private-7c7dfe99-parallel-read-in-order-multi-part/xGXivVTubiN8xcbD/images/use-cases/AI_ML/MCP/9_janai_tools_called_expanded.webp?fit=max&auto=format&n=xGXivVTubiN8xcbD&q=85&s=d40abbbd7b8d2b9d2251eab4798f8fcb" alt="Tools called expanded" size="md" width="1139" height="1418" data-path="images/use-cases/AI_ML/MCP/9_janai_tools_called_expanded.webp" />

    And then underneath, we have our result:

    <Image img="https://mintcdn.com/private-7c7dfe99-parallel-read-in-order-multi-part/37W7US7wfagQNRCb/images/use-cases/AI_ML/MCP/10_janai_result.webp?fit=max&auto=format&n=37W7US7wfagQNRCb&q=85&s=af4683188a01c3238803821dcb100172" alt="Result" size="md" width="1122" height="679" data-path="images/use-cases/AI_ML/MCP/10_janai_result.webp" />
  </Step>
</Steps>
