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

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

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

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

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

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

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

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

    Paylocity への接続を確立するには以下を設定します。

    • RSAPublicKey:Paylocity アカウントでRSA 暗号化が有効になっている場合は、Paylocity に関連付けられたRSA キーを設定。

      このプロパティは、Insert およびUpdate ステートメントを実行するために必須です。この機能が無効になっている場合は必須ではありません。

    • UseSandbox:サンドボックスアカウントを使用する場合はTrue に設定。
    • CustomFieldsCategory:Customfields カテゴリに設定。これは、IncludeCustomFields がtrue に設定されている場合は必須です。デフォルト値はPayrollAndHR です。
    • Key:Paylocity の公開鍵で暗号化されたAES 共通鍵(base 64 エンコード)。これはコンテンツを暗号化するためのキーです。

      Paylocity は、RSA 復号化を使用してAES 鍵を復号化します。
      これはオプションのプロパティで、IV の値が指定されていない場合、ドライバーは内部でキーを生成します。

    • IV:コンテンツを暗号化するときに使用するAES IV(base 64 エンコード)。これはオプションのプロパティで、Key の値が指定されていない場合、ドライバーは内部でIV を生成します。

    OAuth

    OAuth を使用してPaylocity で認証する必要があります。OAuth では認証するユーザーにブラウザでPaylocity との通信を要求します。詳しくは、ヘルプドキュメントのOAuth セクションを参照してください。

    Pay Entry API

    Pay Entry API はPaylocity API の他の部分と完全に分離されています。個別のクライアントID とシークレットを使用し、アカウントへのアクセスを許可するにはPaylocity から明示的にリクエストする必要があります。 Pay Entry API を使用すると、個々の従業員の給与情報を自動的に送信できます。 Pay Entry API によって提供されるものの性質が非常に限られているため、CData では個別のスキーマを提供しないことを選択しましたが、UsePayEntryAPI 接続プロパティを介して有効にできます。

    UsePayEntryAPI をtrue に設定する場合は、CreatePayEntryImportBatch、MergePayEntryImportBatch、Input_TimeEntry、およびOAuth ストアドプロシージャのみ利用できることに注意してください。 製品のその他の機能を使用しようとするとエラーが発生します。また、OAuthAccessToken を個別に保存する必要があります。これは、この接続プロパティを使用するときに異なるOAuthSettingsLocation を設定することを意味します。

  4. 「Create & Test」をクリックします
  5. 「Add Paylocity Connection」ページの「Permissions」タブに移動し、ユーザーベースの権限を更新します。

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

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

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

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

ステップ 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 を通じて Paylocity データにアクセスできるデータクエリアシスタントです。
        
        ユーザーが Paylocity をリアルタイムで探索・クエリできるようサポートしてください。
        利用可能な 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. これで、自然言語クエリを使用してPaylocity との会話を開始できます。。

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

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

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

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

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

ユースケース例

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

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

エージェントのテスト

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

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

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

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

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

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

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

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