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

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

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

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

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

SharePoint データ連携について

CData を使用すれば、SharePoint のライブデータへのアクセスと統合がこれまでになく簡単になります。お客様は CData の接続機能を以下の目的で利用しています:

  • Windows SharePoint Services 3.0、Microsoft Office SharePoint Server 2007 以降、SharePoint Online を含む、幅広い SharePoint バージョンのデータにアクセスできます。
  • 非表示カラムとルックアップカラムのサポートにより、SharePoint のすべてにアクセスできます。
  • フォルダを再帰的にスキャンして、すべての SharePoint データのリレーショナルモデルを作成できます。
  • SQL ストアドプロシージャを使用して、ドキュメントや添付ファイルをアップロード・ダウンロードできます。

多くのお客様は、SharePoint データをデータベースやデータウェアハウスに統合するために CData ソリューションを活用していますが、Power BI、Tableau、Excel などのお気に入りのデータツールと SharePoint データを統合しているお客様もいます。

お客様が CData の SharePoint ソリューションで問題を解決している方法については、ブログをご覧ください:Drivers in Focus: Collaboration Tools


はじめに


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

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

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

    Microsoft SharePoint への接続

    URL の設定:

    Microsoft SharePoint では、2つの範囲でデータを操作できます。グローバルなMicrosoft SharePoint サイト全体を対象にするか、個々のサイトのみを対象にするかを選択できます。

    グローバルなMicrosoft SharePoint サイトですべてのリストおよびドキュメントを操作したい場合は、URL 接続プロパティをサイトコレクションURL に設定しましょう。以下のような形式です。

    https://teams.contoso.com

    個々のサイトのリストおよびドキュメントのみを扱いたい場合は、URL 接続プロパティを個々のサイトURL に設定してください。以下のような形式です。

    https://teams.contoso.com/TeamA

    続いて、お使いの環境に適した認証プロパティを設定していきましょう。詳細な設定手順については、 href="/kb/help/" target="_blank">ヘルプドキュメントの「はじめに」をご参照ください。

    Microsoft SharePoint Online

    SharePointEdition を"SharePoint Online" に設定し、User およびPassword にはSharePoint へのログオンで使用するクレデンシャル(例:Microsoft Online Services アカウントのクレデンシャル)を設定します。

    Microsoft SharePoint Online は様々なクラウドベースアーキテクチャをサポートしており、それぞれ異なる認証スキームが利用できます。

    • Microsoft Entra ID(Azure AD)
    • ADFS、Okta、OneLogin、またはPingFederate SSO ID プロバイダーを介したシングルサインオン(SSO)
    • Azure MSI
    • Azure パスワード
    • OAuthJWT
    • SharePointOAuth

    Microsoft SharePoint オンプレミス

    Microsoft SharePoint オンプレミスでは、多くのオンプレミス環境に対応した認証方式をサポートしています。

    • Windows(NTLM)
    • Kerberos
    • ADFS
    • 匿名アクセス

    まずSharePointEdition を"SharePoint On-Premises" に設定しましょう。

    Windows(NTLM)認証

    これは最も一般的な認証方式です。そのため、CData 製品ではNTLM をデフォルトとして使用するよう事前設定されています。Windows のUser およびPassword を設定するだけで接続できます。

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

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

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

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

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

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

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

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

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

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

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

ユースケース例

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

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

エージェントのテスト

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

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

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

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

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

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

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

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