【MCP Server】Google ADK エージェントから CSV のデータにリアルタイムで接続しよう!

加藤龍彦
加藤龍彦
デジタルマーケティング
CData Connect AI のリモートMCP サーバー を活用して、Google ADK エージェントから CSV への安全なデータアクセスとアクション実行を実現する方法をご紹介します。

Google ADK(Agent Development Kit)は、さまざまなデータソースやサービスと連携できる AI エージェントを構築するための、モデル非依存の強力なフレームワークです。CData Connect AI のリモートMCP と組み合わせることで、自然言語クエリを通じてCSV のデータとリアルタイムでやり取りできるインテリジェントなエージェントを構築できます。この記事では、Connect AI Remote MCP を使用して CSV に接続し、Google ADK エージェントを設定して ADK Web 経由で とやり取りする方法をご紹介します。

CData Connect AI は、CSV のデータに接続するための専用クラウド間インターフェースを提供します。CData Connect AI Remote MCP Server により、Google ADK エージェントと CSVの間でセキュアな通信が可能になります。これにより、ネイティブ対応データベースへのデータレプリケーションを必要とせずに、エージェントから CSV のデータの読み取りや操作を実行できます。CData Connect AIは最適化されたデータ処理機能を備えており、フィルタや JOIN を含むサポート対象のすべての SQL 操作を効率的に CSVへ直接送信します。サーバーサイド処理を活用することで、要求されたCSV のデータ を迅速に取得できます。

この記事では、自然言語を使用してデータを会話形式で探索(Vibe Query)できる Google ADK エージェントの設定方法をご紹介します。Connect AI を使用すれば、CSV に加えて、数百の他のデータソースにもアクセスできるエージェントを構築できます。

ステップ 1:Google ADK 用の CSV 接続を設定する

Google ADK エージェントから CSV への接続は、CData Connect AI のリモートMCP を通じて実現されます。ADK エージェントから CSV とやり取りするために、まず CData Connect AI で CSV 接続を作成・設定していきましょう。

  1. Connect AI にログインし、「Sources」をクリックして、「Add Connection」をクリックします
  2. 接続の追加
  3. 「Add Connection」パネルから「CSV」を選択します
  4. データソースの選択
  5. CSV に接続するために必要な認証プロパティを入力します。

    CSV 接続プロパティの取得・設定方法

    DataSource プロパティにローカルフォルダ名を設定します。

    .csv、.tab、.txt ではない拡張子のファイルを扱う場合には、IncludeFiles 使用する拡張子をカンマ区切りで設定します。Microsoft Jet OLE DB 4.0 driver 準拠の場合にはExtended Properties を設定できます。別の方法として、Schema.ini ファイルにファイル形式を記述することも可能です。

    CSV ファイルを削除・更新する場合は、UseRowNumbers をTRUE に設定します。RowNumber はテーブルKey として扱われます。

    Amazon S3 内のCSV への接続

    URI をバケットおよびフォルダに設定します。さらに、次のプロパティを設定して認証します。

    • AWSAccessKey:AWS アクセスキー(username)に設定。
    • AWSSecretKey:AWS シークレットキーに設定。

    Box 内のCSV への接続

    URI をCSV ファイルを含むフォルダへのパスに設定します。Box へ認証するには、OAuth 認証標準を使います。 認証方法については、Box への接続 を参照してください。

    Dropbox 内のCSV への接続

    URI をCSV ファイルを含むフォルダへのパスに設定します。Dropbox へ認証するには、OAuth 認証標準を使います。 認証方法については、Dropbox への接続 を参照してください。ユーザーアカウントまたはサービスアカウントで認証できます。ユーザーアカウントフローでは、以下の接続文字列で示すように、ユーザー資格情報の接続プロパティを設定する必要はありません。

    SharePoint Online SOAP 内のCSV への接続

    URI をCSV ファイルを含むドキュメントライブラリに設定します。認証するには、User、Password、およびStorageBaseURL を設定します。

    SharePoint Online REST 内のCSV への接続

    URI をCSV ファイルを含むドキュメントライブラリに設定します。StorageBaseURL は任意です。指定しない場合、ドライバーはルートドライブで動作します。 認証するには、OAuth 認証標準を使用します。

    FTP 内のCSV への接続

    URI をルートフォルダとして使用されるフォルダへのパスが付いたサーバーのアドレスに設定します。認証するには、User およびPassword を設定します。

    Google Drive 内のCSV への接続

    デスクトップアプリケーションからのGoogle への認証には、InitiateOAuth をGETANDREFRESH に設定して、接続してください。詳細はドキュメントの「Google Drive への接続」を参照してください。

    接続の設定(Salesforce の例)
  6. 「Create & Test」をクリックします
  7. 「Add CSV Connection」ページの「Permissions」タブに移動し、ユーザーベースの権限を更新します。 権限の更新

パーソナルアクセストークンの追加

パーソナルアクセストークン(PAT)は、Google ADK エージェントから Connect AI への接続を認証するために使用されます。アクセスの粒度を維持するために、サービスごとに個別の PAT を作成することをおすすめします。

  1. Connect AI アプリの右上にある歯車アイコン()をクリックして、設定ページを開きます。
  2. 設定ページの「Access Tokens」セクションに移動し、「Create PAT」をクリックします。
  3. PAT に名前を付けて「Create」をクリックします。 新しい PAT の作成
  4. パーソナルアクセストークンは作成時にのみ表示されますので、必ずコピーして安全な場所に保管してください。

これで接続の設定と PAT の生成が完了しました。Google ADK エージェントから CSV に接続する準備が整いました。

ステップ 2:Google ADK エージェントを CData Connect AI 用に設定する

以下の手順に従って、CData Connect AI に接続するように Google ADK エージェントを設定していきましょう。事前構築済みのエージェントをこちらから使用できます。または、以下の手順に従って独自のエージェントを作成することもできます。

  1. Google ADK Python SDK がインストールされていることを確認してください。インストールされていない場合は、pip を使用してインストールします。
    pip install google-genkit google-adk
  2. エージェントの設定ファイル(通常は agent.py)を作成または更新して、CData Connect AI MCP 接続を含めます。Connect AI 認証情報を使用して MCP ツールセットを設定する必要があります。
  3. MCP サーバー接続用の環境変数または設定をセットアップします。プロジェクトのルートに .env ファイルを作成し、以下の変数を設定します。
    MCP_SERVER_URL=https://mcp.cloud.cdata.com/mcp
    MCP_USERNAME=YOUR_EMAIL
    MCP_PASSWORD=YOUR_PAT
        
    YOUR_EMAIL を Connect AI のメールアドレスに、YOUR_PAT をステップ 1 で作成したパーソナルアクセストークンに置き換えてください。
  4. CData Connect AI MCP Server を使用するように agent.py ファイルを設定します。以下は設定例です。
    import os
    import base64
    from google.adk.agents import LlmAgent
    from google.adk.tools.mcp_tool.mcp_toolset import MCPToolset
    from google.adk.tools.mcp_tool.mcp_session_manager import StreamableHTTPConnectionParams
    from dotenv import load_dotenv
    
    # 環境変数を読み込む
    load_dotenv()
    
    # 環境から設定を取得
    MCP_SERVER_URL = os.getenv('MCP_SERVER_URL', 'https://mcp.cloud.cdata.com/mcp')
    MCP_USERNAME = os.getenv('MCP_USERNAME', '')
    MCP_PASSWORD = os.getenv('MCP_PASSWORD', '')
    
    # MCP サーバー用の認証ヘッダーを作成
    auth_header = {}
    if MCP_USERNAME and MCP_PASSWORD:
        credentials = f"{MCP_USERNAME}:{MCP_PASSWORD}"
        auth_header = {"Authorization": f"Basic {base64.b64encode(credentials.encode()).decode()}"}
    
    # CData MCP ツールを使用してエージェントを定義
    root_agent = LlmAgent(
        model='gemini-2.0-flash-exp',  # サポートされている任意のモデルを使用できます
        name='data_query_assistant',
        instruction="""あなたは CData Connect AI を通じて CSV データにアクセスできるデータクエリアシスタントです。
        
        ユーザーが CSV をリアルタイムで探索・クエリできるようサポートしてください。
        利用可能な MCP ツールを使用して以下を実行できます:
        - 利用可能なデータベースとスキーマの一覧表示
        - テーブル構造の探索
        - SQL クエリの実行
        - データに関する洞察の提供
        
        実行内容を常に説明し、結果を明確にフォーマットしてください。""",
        
        tools=[
            MCPToolset(
                connection_params=StreamableHTTPConnectionParams(
                    url=MCP_SERVER_URL,
                    headers=auth_header
                )
            )
        ],
    )
        
  5. ADK Web でエージェントを実行します。プロジェクトディレクトリから以下を実行してください。
    adk web --port 5000 .

    注:pip install --user で ADK をインストールした場合、adk コマンドが PATH に含まれていない可能性があります。以下のいずれかの方法で対処できます。

    • フルパスを使用:~/Library/Python/3.x/bin/adk(macOS の場合)
    • PATH に追加:export PATH="$HOME/Library/Python/3.x/bin:$PATH"
    • PATH が自動的に設定される仮想環境を使用
  6. ブラウザでADK のWeb インターフェースを開きます(通常は http://localhost:5000)。
  7. ドロップダウンメニューからエージェントを選択します(エージェント設定の name パラメータに基づいて名前が付けられています)。
  8. これで、自然言語クエリを使用してCSV との会話を開始できます。。

ステップ 3:CSV データへのアクセスを備えたインテリジェントエージェントを構築する

Google ADK エージェントを設定して CData Connect AI に接続できたので、自然言語を使用して CSV とやり取りする高度なエージェントを構築できます。MCP 統合により、エージェントに強力なデータアクセス機能が提供されます。

エージェントで使用可能な MCP ツール

Google ADK エージェントは、以下のCData Connect AI MCP ツールにアクセスできます。

  • queryData:接続されたデータソースに対してSQL クエリを実行
  • execData:ストアドプロシージャを実行
  • getCatalogs:利用可能なデータベース接続を取得
  • getSchemas:特定のカタログのデータベーススキーマを一覧表示
  • getTables:スキーマ内のテーブルを一覧表示
  • getColumns:特定のテーブルの列情報を取得
  • getPrimaryKeys:プライマリキー情報を取得
  • getIndexes:テーブルのインデックス情報を取得
  • getProcedures:利用可能なストアドプロシージャを一覧表示

ユースケース例

CSV のデータにアクセスできるGoogle ADK エージェントでできることの例をいくつかご紹介します。

  • データ分析エージェント:CSV のトレンド、パターン、異常を分析するエージェントを構築
  • レポート生成エージェント:自然言語リクエストに基づいてカスタムレポートを生成するエージェントを作成
  • データ品質エージェント:リアルタイムでデータ品質を監視・検証するエージェントを開発
  • ビジネスインテリジェンスエージェント:複数のデータソースをクエリして複雑なビジネスの質問に答えるエージェントを構築
  • 自動化ワークフローエージェント:CSV のデータ条件に基づいてアクションをトリガーするエージェントを作成

エージェントのテスト

ADK Web にデプロイすると、自然言語クエリを通じてエージェントとやり取りできます。以下のような質問を試してみてください。

  • 「過去 30 日間のすべての顧客を表示して」
  • 「今四半期の売上トップの製品は何?」
  • 「売上トレンドを分析して異常を特定して」
  • 「アクティブなプロジェクトのサマリーレポートを生成して」
  • 「特定の条件に一致するすべてのレコードを検索して」

Google ADK エージェントは、これらの自然言語クエリを自動的に適切な SQL クエリに変換し、CData Connect AI MCP Server を通じて CSV データに対して実行します。複雑な SQL を記述したり、基盤となるデータ構造を理解したりすることなく、ユーザーにリアルタイムの洞察を提供できます。

CData Connect AI でビジネスシステムのデータ活用を今すぐスタート

いかがでしたか?Google ADK エージェントから CSV へのデータ接続が 10 分もかからずに完了したのではないでしょうか。業務に使えそう、と感じてくださった方は、14 日間の無償トライアルで AI ツールからビジネスシステムへのリアルタイムデータ接続をぜひお試しください。

はじめる準備はできましたか?

CData Connect AI の詳細、または無料トライアルにお申し込みください:

無料トライアル