【MCP Server】LangChain からAct-On のデータに連携しよう!

加藤龍彦
加藤龍彦
デジタルマーケティング
LangChain とCData Connect AI MCP Server で Act-On へのリアルタイムアクセスを実現。自然言語クエリでデータ探索できる AI ワークフローを構築する方法をご紹介します。

LangChain は、開発者やデータエンジニア、AI 実践者が LLM、ツール、API、データコネクタを組み合わせて AI 活用アプリケーションやワークフローを構築するためのフレームワークです。LangChain と CData Connect AI を組み込みの MCP Server を通じて統合することで、ワークフローからライブの Act-On にリアルタイムで簡単にアクセスして対話できるようになります。

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

この記事では、CData Connect AI での Act-On 接続の設定、LangChain への MCP サーバーの登録、そして Act-On をリアルタイムでクエリするワークフローの構築方法をご紹介します。

前提条件

ステップ 1:LangChain 用の Act-On 接続を設定する

それでは早速、LangChain から Act-On にアクセスできるようにしていきましょう。まず、CData Connect AI で Act-On 接続を作成します。この接続は、その後リモート MCP サーバーを通じて LangChain に公開されます。

  1. Connect AI にログインし、「Sources」をクリックして「+ Add Connection」をクリックします
  2. 利用可能なデータソースから「Act-On」を選択します
  3. Act-On に接続するために必要な認証情報を入力しましょう。

    ActOn はOAuth 認証標準を利用しています。OAuth を使って認証するには、アプリケーションを作成してOAuthClientIdOAuthClientSecret、およびCallbackURL 接続プロパティを取得する必要があります。

    認証方法についての詳細は、ヘルプドキュメントの「認証の使用」を参照してください。

  4. 「Create & Test」をクリックします
  5. 認証が完了したら、Act-On 接続の「Permissions」タブを開き、必要に応じてユーザーベースの権限を設定します

パーソナルアクセストークン(PAT)を生成する

LangChain は、アカウントのメールアドレスとパーソナルアクセストークン(PAT)を使用して Connect AI に認証します。アクセス制御の粒度を維持するために、統合ごとに個別の PAT を作成することをおすすめします。

  1. Connect AI で、右上の歯車アイコンを選択して「Settings」を開きます
  2. 「Access Tokens」で、「Create PAT」を選択します
  3. トークンのわかりやすい名前を付けて、「Create」を選択します
  4. トークンをコピーして安全に保管してください。PAT は作成時にのみ表示されます

これで Act-On 接続の設定と PAT の生成が完了しました。LangChain から CData MCP サーバーを通じて Act-On に接続する準備が整いました。

注:Connect AI の「Integrations」セクションの「LangChain」から PAT を生成することもできます。「Connect」→「 Create PAT」をクリックするだけで生成できます。

ステップ 2:LangChain で MCP サーバーに接続する

続いて、LangChain をCData Connect AI のリモートMCP サーバー に接続していきましょう。推論に OpenAI(ChatGPT)を使用するには、MCP サーバーエンドポイントと認証情報を config.py ファイルで設定します。これらを設定することで、LangChain が MCP サーバーツールを呼び出せるようになり、OpenAI が自然言語での推論を処理してくれます。

  1. LangChain MCP 用のフォルダを作成します
  2. フォルダ内にconfig.pylangchain.py の2つの Python ファイルを作成します。
  3. config.py で、MCP サーバーの認証と URL を定義する Config クラスを作成します。Base64 エンコードされた CData Connect AI のユーザー名と PAT(前提条件で取得したもの)を指定する必要があります。
     
    class Config: 
          MCP_BASE_URL = "https://mcp.cloud.cdata.com/mcp"   # MCP Server の URL 
          MCP_AUTH = "base64encoded(EMAIL:PAT)"   # Base64 エンコードされた Connect AI の Email:PAT 
    

    注:Base64 エンコードツールを使用して、MCP_AUTH の Base64 エンコード版を作成できます。

  4. langchain.py で、MCP サーバーと MCP クライアントを設定して、ツールとプロンプトを呼び出します:
     
    """ 
    LangChain ReAct エージェントと CData Connect AI MCP サーバーを統合します。
    このスクリプトは、ツールの取得、フィルタリング、LLM を使用したエージェントベースの推論を実行します。
    """ 
    
    import asyncio 
    from langchain_mcp_adapters.client import MultiServerMCPClient 
    from langchain_openai import ChatOpenAI 
    from langgraph.prebuilt import create_react_agent 
    from config import Config 
    
    async def main(): 
        # 1 つ以上のサーバー URL で MCP クライアントを初期化
        mcp_client = MultiServerMCPClient( 
            connections={ 
                "default": {  # お好きな名前でOKです
                    "transport": "streamable_http", 
                    "url": Config.MCP_BASE_URL, 
                    "headers": {"Authorization": f"Basic {Config.MCP_AUTH}"}, 
                } 
            } 
        ) 
    
        # サーバーによって公開されているリモート MCP ツールを読み込む
        all_mcp_tools = await mcp_client.get_tools() 
        print("検出された MCP ツール:", [tool.name for tool in all_mcp_tools]) 
    
        # ReAct スタイルのエージェントを作成して実行
        llm = ChatOpenAI( 
            model="gpt-4o",  
            temperature=0.2, 
            api_key="YOUR_OPEN_API_KEY"  # ここに OpenAI API キーを使用します(https://platform.openai.com/ で確認できます)
        ) 
    
        agent = create_react_agent(llm, all_mcp_tools) 
    
        user_prompt = "[rootadoname]1 で利用可能なテーブルはいくつありますか?"  # 必要に応じてプロンプトを変更してください
        print(f"
    ユーザープロンプト: {user_prompt}") 
    
        # エージェントに MCP ツールを使用するように求めるプロンプトを送信
        response = await agent.ainvoke( 
            {"messages": [{"role": "user", "content": (user_prompt),}]} 
        ) 
    
        # エージェントの最終応答を出力
        final_msg = response["messages"][-1].content 
        print("エージェントの最終応答:", final_msg) 
    
    if __name__ == "__main__": 
        asyncio.run(main()) 
    

ステップ 3:LangChain と LangGraph パッケージをインストールする

それでは、LangChain を CData Connect AI MCP と組み合わせて使用し、推論に OpenAI を統合するために必要なPython パッケージをインストールしていきましょう。

プロジェクトのターミナルで次のコマンドを実行してください。

 
pip install langchain-mcp-adapters langchain-openai langgraph 

ステップ 4:LangChain を使用して Act-On にプロンプトを送信する(MCP サーバー経由)

  1. インストールが完了したら、
    python langchain.py
    を実行してスクリプトを実行します
  2. スクリプトは MCP サーバーに接続し、接続されたデータをクエリするために利用可能な CData Connect AI MCP ツールを検出します
  3. プロンプトを入力します(例:「Act-On で利用可能なテーブルはいくつありますか?」)
  4. それに応じて、エージェントが結果を返します

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

いかがでしたか?LangChain から Act-On へのデータ接続が簡単に完了したのではないでしょうか。業務に使えそう、と感じてくださった方は、14 日間の無償トライアルで AI ツールからビジネスシステムへのリアルタイムデータ接続をぜひお試しください。

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

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

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