Open WebUI と CData Connect AI を連携してリアルタイムの Snowflake データと対話する
Open WebUI は、ホスト型の LLM API とローカルで提供されるモデルを、カスタマイズ可能な単一のインターフェースにまとめたオープンソースのセルフホスト型 AI チャットプラットフォームです。ツールサーバーフレームワークを通じて Model Context Protocol(MCP) をサポートしており、外部ツールやデータソースを設定することで、チャットがモデルの学習データの枠を超えてリアルタイムのシステムとやり取りできるようになります。
組み込みの MCP Server を介して Open WebUI を CData Connect AI と連携させると、Open WebUI はガバナンスの効いた状態でリアルタイムの Snowflake のデータ にアクセスできるようになります。これにより、自然言語のプロンプトを使ってカタログの一覧表示、スキーマの探索、Snowflake のデータ のレコードへのクエリが可能になり、すべてのデータアクセスは認可されたデータソースに対して安全に実行されます。
この記事では、Connect AI で Snowflake への接続を設定し、必要な Personal Access Token を生成して、Open WebUI をインストールし、Connect AI MCP Server を登録、LLM プロバイダーを設定したうえで、Open WebUI のチャットインターフェースからリアルタイムの Snowflake のデータ にクエリを実行して連携を確認するまでの手順を説明します。
Snowflake データ連携について
CData は、Snowflake のライブデータへのアクセスと統合を簡素化します。お客様は CData の接続機能を以下の目的で活用しています:
- Snowflake データを迅速かつ効率的に読み書きできます。
- 指定された Warehouse、Database、Schema のメタデータを動的に取得できます。
- OAuth、OKTA、Azure AD、Azure マネージド サービス ID、PingFederate、秘密鍵など、さまざまな方法で認証できます。
多くの CData ユーザーは、CData ソリューションを使用して、お気に入りのツールやアプリケーションから Snowflake にアクセスし、さまざまなシステムからデータを Snowflake にレプリケートして、包括的なウェアハウジングと分析を行っています。
CData ソリューションとの Snowflake 統合についての詳細は、ブログをご覧ください:https://jp.cdata.com/blog/snowflake-integrations
はじめに
Step 1: Open WebUI 向けに Snowflake への接続を設定
Open WebUI から Snowflake への接続は、Connect AI の Remote MCP Server を介して実現します。Open WebUI から Snowflake のデータ と対話するには、まず Connect AI で Snowflake 接続を作成・設定していきましょう。
- Connect AI にログインし、Sources をクリックして、 Add Connection をクリックします
- Add Connection パネルから Snowflake を選択します
-
Snowflake に接続するために必要な認証プロパティを入力します。
それでは、Snowflake データベースに接続していきましょう。認証に加えて、以下の接続プロパティを設定します。
- Url:お使いのSnowflake URL を指定します。例:https://orgname-myaccount.snowflakecomputing.com
- Legacy URL を使用する場合:https://myaccount.region.snowflakecomputing.com
- ご自身のURL は以下のステップで確認できます。
- Snowflake UI の左下にあるユーザー名をクリックします
- Account ID にカーソルを合わせます
- Copy Account URL アイコンをクリックして、アカウントURL をコピーします
- Database(オプション):CData 製品によって公開されるテーブルとビューを、特定のSnowflake データベースのものに制限したい場合に設定します
- Schema(オプション):CData 製品によって公開されるテーブルとビューを、特定のSnowflake データベーススキーマのものに制限したい場合に設定します
Snowflakeへの認証
CData 製品では、Snowflake ユーザー認証、フェデレーション認証、およびSSL クライアント認証をサポートしています。認証するには、User とPassword を設定し、AuthScheme プロパティで認証方法を選択してください。
キーペア認証
ユーザーアカウントに定義されたプライベートキーを使用してセキュアなトークンを作成し、キーペア認証で接続することも可能です。この方法で接続するには、AuthScheme をPRIVATEKEY に設定し、以下の値を設定してください。
- User:認証に使用するユーザーアカウント
- PrivateKey:プライベートキーを含む.pem ファイルへのパスなど、ユーザーに使用されるプライベートキー
- PrivateKeyType:プライベートキーを含むキーストアの種類(PEMKEY_FILE、PFXFILE など)
- PrivateKeyPassword:指定されたプライベートキーのパスワード
多要素認証(MFA)
Snowflake アカウントでMFA(Duo Security 経由)が有効になっている場合は、MFACode に Duo 認証アプリで生成されたパスコードを設定してください。
その他の認証方法については、ヘルプドキュメントの「Snowflakeへの認証」セクションをご確認ください。
- Url:お使いのSnowflake URL を指定します。例:https://orgname-myaccount.snowflakecomputing.com
- Save & Test をクリックします
- Permissions タブに移動し、ユーザーベースの権限を更新します
Personal Access Token を追加する
Personal Access Token(PAT)は、Open WebUI から Connect AI への接続を認証するために使用します。きめ細かなアクセス制御を維持するために、連携ごとに個別の PAT を作成することをおすすめします。
- Connect AI アプリの右上にある歯車アイコン()をクリックして Settings を開きます
- Settings ページで Access Tokens セクションに移動し、 Create PAT をクリックします
- PAT にわかりやすい名前を付けて Create をクリックします
- トークンが表示されたらコピーして安全な場所に保存してください。再度表示されることはありません
Snowflake 接続を設定し、PAT を生成すれば、Open WebUI から Connect AI を介して Snowflake のデータ に接続できるようになります。
Step 2: Open WebUI をインストールして Connect AI MCP を設定
次に、Open WebUI をローカルにインストールし、Connect AI Remote MCP Server をツールサーバーとして設定していきましょう。これにより、チャットインターフェースが Connect AI を通じてリアルタイムデータ向けのツールを検出・呼び出せるようになります。
- 公式の クイックスタートガイドに従って Open WebUI をインストールします
- インストールが完了したら、Open WebUI を起動してブラウザーで開き、チャットインターフェースにアクセスします
-
右上のプロフィールアイコンをクリックし、Admin Panel を選択します
-
Admin Panel の上部ナビゲーションバーで Settings をクリックします
-
左メニューから Integrations を選択し、Manage Tool Servers の横にある アイコンをクリックして新しい接続を追加します
-
Add Connection パネルで、次の値を使ってサーバーを設定します。
- Type: MCP Streamable HTTP
- Name: CData MCP、または任意の名前
- ID: cdata-mcp
- URL: https://mcp.cloud.cdata.com/mcp
- Auth: None
-
Advanced セクションを展開し、次の JSON を Headers フィールドに貼り付けます。
{ "Authorization": "Basic your_base64_encoded_email_PAT", "Content-Type": "application/json" }注意:Open WebUI は Connect AI との通信に Basic authentication を使用します。Connect AI のユーザーメールアドレスと、先ほど作成した PAT を email:PAT の形式で結合し、その文字列を Base64 エンコードして、先頭に Basic を付けます。たとえば [email protected]:ABC123...XYZ789 の場合、Authorization ヘッダーの値は次のようになります:Basic dXNlckBkb21haW4uY29tOkFCQzEyMy4uLlhZWjc4OQ==
- Save をクリックしてツールサーバーを登録します
MCP サーバーを有効化して LLM プロバイダーを設定する
Open WebUI でチャットを動かすには、少なくとも 1 つの LLM プロバイダーが必要です。チャット入力欄から MCP サーバーを有効化し、お好みのプロバイダーの API キーを設定しましょう。これにより、モデルがプロンプトを解釈し、Connect AI を介して MCP ツールを呼び出せるようになります。
-
チャットインターフェースに戻り、チャット入力欄の下部にある Integrations アイコンをクリックして Tools を選択し、CData MCP をオンに切り替えてツールをチャットに公開します
- チャット上部のモデルセレクターをクリックし、お好みの LLM プロバイダーとモデルを選択します。プロンプトが表示されたらプロバイダーの API キーを追加し、チャットでモデルを使用できるようにします
MCP サーバーと LLM プロバイダーの設定が完了すれば、Open WebUI から Connect AI を介してリアルタイムの Snowflake のデータ にクエリを実行する準備が整います。
Step 3: Open WebUI からリアルタイムの Snowflake のデータ にクエリ
連携が完了したら、Open WebUI のチャット入力欄を使い、設定した LLM が処理する自然言語のプロンプトでリアルタイムの Snowflake のデータ と対話してみましょう。
-
CData MCP サーバーを有効化してモデルを選択した状態で、チャット入力欄にプロンプトを入力します。たとえば次のようなプロンプトです。
- cdata mcp 内のすべてのカタログを一覧表示して
- Snowflake の利用可能なスキーマとテーブルを表示して
- Snowflake のデータ のテーブルから上位 5 件のレコードを取得して
-
Open WebUI が Connect AI MCP Server を呼び出し、Snowflake のデータ からリアルタイムの結果を返します
これで、Open WebUI インスタンスが Connect AI MCP Server と通信し、リモート MCP ツールを通じてチャットインターフェースから直接 Snowflake のデータ のリアルタイムデータを取得できるようになりました。
CData Connect AI の入手
数百種類の SaaS、ビッグデータ、NoSQL データソースにクラウドアプリケーションから直接アクセスするには、ぜひ CData Connect AI をお試しください。 14日間の無償トライアルを今すぐダウンロードしてみましょう。ご不明な点があれば、いつでも世界トップクラスのサポートチームがお手伝いします。