CopilotKitとClickHouse MCPサーバーを使ったAIエージェントの構築方法
これは、ClickHouseに保存されたデータを使用してエージェントアプリケーションを構築する方法の例です。 ClickHouseからデータをクエリし、そのデータに基づいてチャートを生成するために、 ClickHouse MCP Serverを使用します。
CopilotKitは、UIを構築し、ユーザーにチャットインターフェースを提供するために使用されます。
この例のコードは、examples repositoryで見つけることができます。
前提条件
Node.js >= 20.14.0
uv >= 0.1.0
依存関係のインストール
プロジェクトをローカルにクローンします: git clone https://github.com/ClickHouse/examples
その後、ai/mcp/copilotkit
ディレクトリに移動します。
このセクションをスキップして、依存関係をインストールするためにスクリプト./install.sh
を実行します。手動で依存関係をインストールしたい場合は、以下の手順に従ってください。
依存関係を手動でインストールする
- 依存関係をインストールします:
npm install
を実行して、ノード依存関係をインストールします。
- mcp-clickhouseをインストールします:
新しいフォルダーexternal
を作成し、その中にmcp-clickhouseリポジトリをクローンします。
Python依存関係をインストールし、fastmcp CLIツールを追加します。
アプリケーションを構成する
env.example
ファイルを.env
にコピーし、ANTHROPIC_API_KEY
を提供するように編集します。
自分のLLMを使用する
Anthropic以外のLLMプロバイダーを使用したい場合は、Copilotkitランタイムを変更して、別のLLMアダプターを使用することができます。 こちらにサポートされているプロバイダーのリストがあります。
自分のClickHouseクラスターを使用する
デフォルトでは、この例はClickHouseデモクラスターに接続するように構成されています。 次の環境変数を設定することで、自分のClickHouseクラスターを使用することもできます:
CLICKHOUSE_HOST
CLICKHOUSE_PORT
CLICKHOUSE_USER
CLICKHOUSE_PASSWORD
CLICKHOUSE_SECURE
アプリケーションを実行する
npm run dev
を実行して、開発サーバーを開始します。
次のようなプロンプトを使用してエージェントをテストできます:
"マンチェスターの過去10年間の価格の推移を見せてください。"
ブラウザでhttp://localhost:3000を開いて結果を確認してください。