OpenCode から MCP 経由で Snowflake のデータをクエリする方法(CData Connect AI)
OpenCode は、幅広い LLM プロバイダーに対応するオープンソースの AI コーディングエージェントです。Model Context Protocol(MCP)をサポートしており、設定ファイルでローカルまたはリモートの MCP サーバーを構成できます。これにより外部ツールやデータソースを追加し、エージェントがリアルタイムデータにアクセスできるようになります。
OpenCode を組み込みの MCP Server 経由で CData Connect AI と連携すると、OpenCode はガバナンスの効いたリアルタイムのSnowflake のデータへのアクセスが可能になります。自然言語のプロンプトでSnowflake のデータのカタログ一覧表示、スキーマ探索、レコードのクエリが行え、すべてのデータアクセスは認可されたソースに対してセキュアに実行されます。
この記事では、Connect AI での Snowflake 接続設定、必要な Personal Access Token の生成、OpenCode のインストール、プロジェクト設定ファイルへの Connect AI MCP Server の追加、LLM プロバイダーの設定、そして OpenCode からリアルタイム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
ステップ 1:OpenCode 用に Snowflake への接続を設定
OpenCode から Snowflake への接続は、Connect AI の Remote MCP Server を通じて実現されます。OpenCode から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)は、OpenCode から Connect AI への接続を認証するために使用します。アクセス制御の粒度を維持するために、連携ごとに個別の PAT を作成することをおすすめします。
- Connect AI アプリ右上の歯車アイコン()をクリックして Settings を開く
- Settings ページで Access Tokens セクションに移動し、 Create PAT をクリック
- PAT にわかりやすい名前を付けて Create をクリック
- 表示されたトークンをコピーして安全に保管してください。一度しか表示されません
Snowflake のコネクションと PAT の設定が完了しました。これで OpenCode は Connect AI 経由でSnowflake のデータに接続する準備が整いました。
ステップ 2:OpenCode のインストールと Connect AI MCP Server の設定
次に OpenCode をインストールし、プロジェクト設定ファイルに Connect AI Remote MCP Server を追加して、LLM プロバイダーを設定します。これにより、エージェントが Connect AI 経由でリアルタイムデータのツールを検出・呼び出せるようになります。
- 公式のインストールガイドに従って OpenCode をダウンロード・インストールします
- プロジェクト用の新しいフォルダを作成するか、既存のプロジェクトディレクトリを開きます
-
そのディレクトリのルートに opencode.json という名前のファイルを作成し、以下の設定を貼り付けます:
{ "$schema": "https://opencode.ai/config.json", "mcp": { "cdata-connect-ai": { "type": "remote", "url": "https://mcp.cloud.cdata.com/mcp", "enabled": true, "oauth": false, "headers": { "Authorization": "Basic your_base64_encoded_email_PAT" }, "timeout": 30000 } } }注意:OpenCode は Connect AI との通信に Basic 認証を使用します。Connect AI のユーザーメールアドレスと先ほど作成した PAT を email:PAT の形式で組み合わせ、その文字列を Base64 エンコードして先頭に Basic を付けてください。例えば [email protected]:ABC123...XYZ789 の場合、Authorization ヘッダーの値は Basic dXNlckBkb21haW4uY29tOkFCQzEyMy4uLlhZWjc4OQ== のような値になります
-
OpenCode でプロジェクトディレクトリを開きます。プロジェクトドロップダウンから選択するか、Add project をクリックして opencode.json を含むフォルダを指定します
-
エージェントがプロンプトを解釈し MCP ツールを呼び出せるように、LLM プロバイダーを設定します。モデルセレクター(Ctrl + ')を開き、OpenAI、Anthropic、Google などのプロバイダーを選択して API キーを入力します
opencode.json への MCP サーバーの追加と LLM プロバイダーの設定が完了したので、OpenCode は Connect AI 経由でリアルタイムSnowflake のデータをクエリできる状態になりました。
ステップ 3:OpenCode からリアルタイム Snowflake のデータ をクエリ
連携設定が完了したら、OpenCode から、設定した LLM が処理する自然言語プロンプトでリアルタイムSnowflake のデータを操作してみましょう。
-
新しいセッションで、チャット入力欄にプロンプトを入力します。例:
- cdata-connect-ai のツールを使ってすべてのカタログを一覧表示して
- Snowflake で利用可能なスキーマとテーブルを表示して
- Snowflake のテーブルから上位 5 件のレコードをクエリして
-
OpenCode が Connect AI MCP Server を呼び出し、Snowflake のデータのリアルタイム結果を返します
これで OpenCode が Connect AI MCP Server と通信し、AI コーディングエージェントから直接 Remote MCP ツールを通じてリアルタイムSnowflake のデータを取得できるようになりました。
CData Connect AI でビジネスシステムのデータ活用を今すぐスタート
いかがでしたか?OpenCode から Snowflake へのデータ連携が思ったより手軽にできたのではないでしょうか。業務に使えそう、と感じてくださった方は、CData Connect AI をぜひお試しください。 14 日間の無償トライアルで、クラウドアプリケーションから数百種類の SaaS、ビッグデータ、NoSQL ソースへのリアルタイムアクセスを体験いただけます。ご不明点がございましたら、サポートチームまでお気軽にお問い合わせください。