Google Vertex AI Agent とリアルタイムの Workday データを CData Connect AI で統合

Yazhini G
Yazhini G
Technical Marketing Engineer
CData Connect AI のリモート MCP サーバーを活用して、Vertex AI ADK エージェントがインテリジェントなワークフロー内でリアルタイムのWorkday のデータにセキュアにアクセスし、操作できるようにします。

Vertex AI は、Agent Development Kit(ADK)を使用して AI エージェントを構築するための開発エコシステムを提供します。ADK を使用すると、開発者は推論、アクション実行、構造化されたツールインターフェースを通じた外部システムとの連携が可能なツール拡張エージェントを作成できます。これらのエージェントは ADK Web インターフェースでローカルにテストでき、エンタープライズワークフロー向けの高度なロジックで拡張できます。

Vertex AI ADK を CData Connect AI の組み込み MCP(Model Context Protocol)サーバーと統合することで、エージェントはリアルタイムでWorkday のデータをクエリ、分析、操作できるようになります。 この接続により、Google のエージェント構築フレームワークと CData Connect AI のガバナンスされたエンタープライズ接続が橋渡しされ、すべてのリクエストが手動のデータ移動なしに認可されたデータソースに対してセキュアに実行されます。

この記事では、Connect AI で Workday 接続を設定し、必要な認証トークンを生成し、Vertex AI ADK 環境を設定し、エージェントが CData MCP サーバーを通じてリアルタイムのWorkday のデータと正常に通信できることを確認する手順を説明します。

Workday データ連携について

CData は、Workday のライブデータにアクセスし、統合するための最も簡単な方法を提供します。お客様は CData の接続機能を以下の目的で使用しています:

  • Prism Analytics Data Catalog で作成したテーブルやデータセットにアクセスでき、Workday システムの忠実性を損なうことなく、ネイティブの Workday データハブを操作できます。
  • Workday Reports-as-a-Service にアクセスして、Prism から利用できない部門データセットや、Prism の許容サイズを超えるデータセットのデータを表示できます。
  • WQL、REST、または SOAP でベースデータオブジェクトにアクセスし、より詳細で細かいアクセスを実現できます(ただし、クエリの作成には Workday 管理者や IT の支援が必要な場合があります)。

ユーザーは、Tableau、Power BI、Excel などの分析ツールと Workday を統合し、当社のツールを活用して Workday データをデータベースやデータウェアハウスにレプリケートしています。アクセスは、認証されたユーザーの ID とロールに基づいて、ユーザーレベルで保護されます。

Workday を CData と連携させるための設定についての詳細は、ナレッジベース記事をご覧ください:Comprehensive Workday Connectivity through Workday WQL および Reports-as-a-Service & Workday + CData: Connection & Integration Best Practices


はじめに


ステップ1:Vertex AI 用の Workday 接続を設定

Vertex AI から Workday への接続は、CData Connect AI のリモート MCP サーバーを通じて実現できます。Vertex AI からWorkday のデータを操作するには、まず CData Connect AI で Workday 接続を作成・設定します。

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

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

    ここでは、4つのWorkday API の接続パラメータを設定する方法、およびTenant とBaseURL を取得する方法について説明します。必要なAPI のパラメータが設定され、カスタムOAuth および / またはAzure AD API クライアントを作成したら、接続の準備は完了です。

    接続の前提条件

    API / 前提条件 / 接続パラメータ
    WQL / WQL サービスを有効化(下記参照) / ConnectionTypeWQL
    Reports as a Service / カタログレポートの設定(ヘルプドキュメントの「データアクセスのファインチューニング」参照) / ConnectionTypeReports
    REST / 自動で有効化 / ConnectionTypeREST
    SOAP / 自動で有効化 / ヘルプドキュメントのWorkday SOAP API への認証を参照

    BaseURL およびTenant の取得

    BaseURL およびTenant プロパティを取得するため、Workday にログインしてView API Clients を検索します。 この画面では、Workday はBaseURLTenant の両方を含むURL であるWorkday REST API Endpoint を表示します。

    REST API Endpoint のフォーマットは、 https://domain.com//mycompany です。ここで、

    • https://domain.com(URL のサブディレクトリと会社名の前の部分)はBaseURL です。
    • mycompany(URL の最後のスラッシュの後の部分)はTenant です。

    例えば、REST API エンドポイントがhttps://wd3-impl-services1.workday.com/ccx/api/v1/mycompany の場合、 BaseURLhttps://wd3-impl-services1.workday.com であり、Tenantmycompany です。

    WQL サービスを有効化

    Workday WQL API を介して接続するには、はじめにWQL Service を有効にする必要があります。

    1. Workday を開きます。
    2. 検索バーにView Domain と入力します。
    3. プロンプトにWorkday Query Language と入力します。
    4. Allowed Security Group Types のいずれかに、接続するユーザーが含まれていることを確認します。

    Workday への認証

    Basic 認証以外のほとんどのWorkday 接続では、認証のためにOAuth ベースのカスタムAPI クライアントアプリケーションを作成する必要があります。これには、ユーザーがAzure AD 資格情報を介して接続するエンタープライズインストールも含まれます。 Workday への認証につての詳細は、ヘルプドキュメントの「Workday への認証」セクションを参照してください。

  4. 「Save & Test」をクリック
  5. Permissions」タブに移動し、ユーザーベースの権限を更新します

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

パーソナルアクセストークン(PAT)は、Vertex AI から Connect AI への接続を認証するために使用されます。アクセスを細かく管理するため、統合ごとに個別の PAT を作成することをお勧めします。

  1. Connect AI アプリの右上にある歯車アイコン()をクリックして設定を開きます
  2. 設定ページで「Access Tokens」セクションに移動し、「 Create PAT」をクリックします
  3. PAT にわかりやすい名前を付けて「Create」をクリックします
  4. トークンが表示されたらコピーして安全に保管します。再度表示されることはありません

Workday 接続が設定され PAT が生成されたので、Vertex AI は CData MCP サーバーを通じてWorkday のデータに接続できるようになりました。

ステップ2:必要な依存関係をインストール

Vertex AI ADK が Gemini モデルを実行し、エージェント環境を構築し、Google Cloud プロジェクト内のサポートサービスにアクセスできるように、必要な Google Cloud API を有効にします。これらの API は、開発と実行時に ADK が依存するバックエンド機能を提供します。

  1. Google Cloud Console にアクセスします
  2. ページ上部の「Project Picker」をクリックし、「New Project」を選択します
  3. プロジェクトを作成し、「Project ID」をメモします。この ID は後で環境設定で使用します
  4. 左側のナビゲーションメニューから「APIs & Services」を開き、「Enabled APIs & Services」を選択します
  5. Enable Apis and services」をクリックします
  6. 以下の API を有効にします:
    • Vertex AI API
    • Cloud Build API
    • Artifact Registry API
    • Service Networking API
    • Cloud Logging API

これらのサービスを有効にすると、Google Cloud プロジェクトで Vertex AI ADK の開発とローカルツール実行の準備が整います。

Vertex AI ADK プロジェクトフォルダの準備

プロジェクトディレクトリを作成し、Python 環境をセットアップします。このステップにより、ADK が正しくインストールされ、依存関係の競合なしにエージェントをロードできるクリーンなワークスペースが準備されます。

  1. Google Cloud Console を開き、Cloud Shell を選択します。プロジェクトピッカーから作成したプロジェクトが選択されていることを確認してください。
  2. ADK プロジェクトディレクトリを作成します:
  3. 				mkdir -p ~/adk_agents/cdata_mcp_agent
    				cd ~/adk_agents/cdata_mcp_agent
    			
  4. Python 仮想環境を作成してアクティベートします:
  5. 		python3 -m venv .venv
    		source .venv/bin/activate
    	
  6. 必要な ADK および MCP パッケージをインストールします:
  7. 				python -m pip install --upgrade pip
    				python -m pip install google-adk
    				python -m pip install mcp
    				python -m pip install --upgrade "google-cloud-aiplatform[agent_engines]"
    			

ステップ3:ADK エージェントファイルを作成

ADK がエージェントを認識できるようにエージェントモジュールを定義します。この構造により、Vertex AI が MCP 設定をロードし、CData MCP サーバーが公開するツールを登録できます。

  1. agent.py ファイルを作成し、以下のコードを貼り付けます
  2. 		
    import os
    import base64
    import logging
    
    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
    
    # ---------- Logging ----------
    logging.basicConfig(level=logging.INFO)
    logger = logging.getLogger(__name__)
    
    # ---------- CData MCP config ----------
    CDATA_MCP_URL = os.environ.get("CDATA_MCP_URL", "https://mcp.cloud.cdata.com/mcp")
    CDATA_USER_ID = os.environ.get("CDATA_USER_ID")
    CDATA_PAT = os.environ.get("CDATA_PAT")
    
    tools = []
    
    if not (CDATA_USER_ID and CDATA_PAT):
        logger.warning(
            "CData MCP credentials not set (CDATA_USER_ID or CDATA_PAT missing); "
            "starting agent WITHOUT MCP tools."
        )
    else:
        # Basic auth header: base64("user:pat")
        basic_auth_bytes = f"{CDATA_USER_ID}:{CDATA_PAT}".encode("utf-8")
        basic_auth_header = base64.b64encode(basic_auth_bytes).decode("utf-8")
    
        try:
            logger.info("Initializing CData MCPToolset against %s", CDATA_MCP_URL)
    
            tools.append(
                MCPToolset(
                    connection_params=StreamableHTTPConnectionParams(
                        url=CDATA_MCP_URL,
                        headers={
                            "Authorization": f"Basic {basic_auth_header}",
                            # ADK handles content-type etc. internally;
                            # we just pass auth headers.
                        },
                    ),
                )
            )
    
            logger.info("CData MCPToolset initialized successfully.")
        except Exception as e:
            logger.exception("Failed to initialize CData MCPToolset")
    
    # ---------- Root agent ----------
    root_agent = LlmAgent(
        model="gemini-2.0-flash",
        name="cdata_mcp_agent",
        instruction=(
            "You are a data assistant. Use the CData MCP tools (if available) to "
            "list connections, list catalogs/schemas/tables, and run SQL-style queries."
        ),
        tools=tools,
    )
    	
  3. もう1つのファイル __int__.py を作成し、以下のコードを貼り付けます
  4. 		
    		from .agent import root_agent
    		__all__ = ["root_agent"]
    

環境変数のエクスポート

Connect AI に認証するために必要な環境変数をエクスポートします。これらの値により、エージェントは MCP ツールセットを初期化し、CData MCP サーバーと通信できます。その前に、ADK が Gemini モデルに認証できるように Google API キーを取得します。このキーにより、エージェントは Vertex AI ADK 環境内で LLM 推論を実行し、ツールコールを正しくルーティングできます。

  1. Google AI Studio API Key ページにアクセスします
  2. Create API Key」をクリックします。API キーに名前を付け、プロジェクトがない場合は選択または作成します
  3. Create a key」をクリックし、API キーをコピーします
  4. Google Cloud Shell ページに戻り、環境変数のエクスポートを実行します。「your_cdata_email」、「your_pat」、「your-project-id」、「your_google_api_key」を実際の値に置き換えてください
  5. 		export CDATA_MCP_URL="https://mcp.cloud.cdata.com/mcp"
    		export CDATA_USER_ID="your_cdata_email"
    		export CDATA_PAT="your_pat"
    		export GOOGLE_API_KEY="your_google_api_key"
    		export VERTEXAI_PROJECT="your-project-id"
    		export VERTEXAI_LOCATION="us-central1"
    	

ステップ4:ADK Web インターフェースを起動

ADK Web インターフェースを起動してエージェントをロードします。インターフェースはランタイムを初期化し、MCP 対応エージェントをインタラクティブテスト用に利用可能にします。

  1. 親フォルダに移動します:
  2. 				cd ~/adk_agents
    			
  3. ADK Web を起動します:
  4. 				adk web .
    			

ステップ5:エージェントを選択して MCP 接続をテスト

ADK Web インターフェースからエージェントを選択します。ADK は MCP ツールをロードし、リアルタイムの MCP クエリを実行できるように環境を準備します。

  1. ブラウザタブから ADK Web UI を開きます
  2. エージェントのドロップダウンから「cdata_mcp_agent」を選択します
  3. チャットパネルに「list catalogs」と入力します。ADK は Connect AI 接続のリアルタイムリストを返します

これで、Vertex AI ADK エージェントは CData Connect AI MCP サーバーと通信し、リモート MCP ツールを通じてリアルタイムのWorkday のデータメタデータを取得できるようになりました。

CData Connect AI を入手

300 以上の SaaS、ビッグデータ、NoSQL ソースへのリアルタイムデータアクセスをクラウドアプリケーションから直接取得するには、CData Connect AI を今すぐお試しください!

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

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

無料トライアル お問い合わせ