Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

ChainlitとClickHouse MCPサーバーでAIエージェントを構築する方法

このガイドでは、Chainlitの強力なチャットインターフェイスフレームワークと ClickHouse Model Context Protocol (MCP) Serverを組み合わせて、対話型のデータ アプリケーションを構築する方法を紹介します。Chainlitを使えば、AI アプリケーション向けの対話型インターフェイスを最小限のコードで構築でき、 ClickHouse MCPサーバーを使えば、ClickHouseの高性能な列指向データベースと シームレスにインテグレーションできます。

前提条件

  • Anthropic の API key が必要です
  • uv がインストールされている必要があります

基本的なChainlitアプリ

以下を実行すると、基本的なチャットアプリの例を確認できます。

uv run --with anthropic --with chainlit chainlit run chat_basic.py -w -h

次に http://localhost:8000 にアクセスします

ClickHouse MCPサーバー の追加

ClickHouse MCPサーバー を追加すると、さらに活用の幅が広がります。 uv コマンドを 使えるようにするには、.chainlit/config.toml ファイルを更新する必要があります。

[features.mcp.stdio]
    enabled = true
    # MCPのstdioサーバーには、許可リストに登録された実行可能ファイルのみ使用できます。
    # 実行可能ファイルのベース名のみ指定してください(例:"/usr/bin/npx"ではなく"npx")。
    # 現時点ではこの行をコメントアウトしないでください。実行可能ファイル名の解析に必要です。
    allowed_executables = [ "npx", "uvx", "uv" ]

MCPサーバーを Chainlit で動作させるための補助コードがあるため、代わりに次のコマンドで Chainlit を起動します。

uv run --with anthropic --with chainlit chainlit run chat_mcp.py -w -h

MCPサーバーを追加するには、チャットインターフェイスのプラグアイコンをクリックし、次に ClickHouse SQL Playground に接続して使用するため、以下のコマンドを追加します:

CLICKHOUSE_HOST=sql-clickhouse.clickhouse.com CLICKHOUSE_USER=demo CLICKHOUSE_PASSWORD= CLICKHOUSE_SECURE=true uv run --with mcp-clickhouse --python 3.13 mcp-clickhouse

独自の ClickHouse インスタンスを使用する場合は、環境変数の値を 調整できます。

その後、次のような質問ができます。

  • クエリできるテーブルについて教えて
  • ニューヨークのタクシーについて、何か興味深いことはありますか?
Navigation