メインコンテンツまでスキップ
メインコンテンツまでスキップ

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を実行します。手動で依存関係をインストールしたい場合は、以下の手順に従ってください。

依存関係を手動でインストールする

  1. 依存関係をインストールします:

npm installを実行して、ノード依存関係をインストールします。

  1. mcp-clickhouseをインストールします:

新しいフォルダーexternalを作成し、その中にmcp-clickhouseリポジトリをクローンします。

mkdir -p external
git clone https://github.com/ClickHouse/mcp-clickhouse external/mcp-clickhouse

Python依存関係をインストールし、fastmcp CLIツールを追加します。

cd external/mcp-clickhouse
uv sync
uv add fastmcp

アプリケーションを構成する

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を開いて結果を確認してください。