Grok を使って CData Connect AI 経由で Odoo のデータと対話する

Anusha M B
Anusha M B
Technical Marketing Engineer
CData Connect AI Remote MCP Server を活用して、Grok AI が Odoo のデータ に対して安全に質問やアクションを実行できるようにします。

Grok AI は、xAI が開発した大規模言語モデルです。 リアルタイムの推論やツール呼び出し、エージェントワークフローに対応しており、 ライブデータをもとに推論し、ツールを動的に検出してインテリジェントなアクションを実行する AI エージェントを構築できます。

CData Connect AI は、350 以上のエンタープライズデータソースを Grok AI と連携させるための、セキュアなクラウド間インターフェースを提供します。 Connect AI を使用すると、リアルタイムの Odoo のデータ をレプリケーションなしでリモート MCP エンドポイント経由で公開できるため、Grok AI エージェントがガバナンスされたエンタープライズデータに対してリアルタイムでセキュアにクエリや分析を実行できます。

Odoo データ連携について

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

  • Odoo API 8.0+ と Odoo.sh クラウド ERP の両方からライブデータにアクセスできます。
  • 多対一、一対多、多対多のデータプロパティをインテリジェントに処理することで、ネイティブの Odoo 機能を拡張できます。CData の接続ソリューションは、Odoo 内の複雑なデータプロパティもインテリジェントに処理します。テキストや日付などの単純な値を持つカラムに加えて、各行に複数の値を含むカラムもあります。ドライバーは、値の元となるカラムのタイプに応じて、これらの種類の値を異なる方法でデコードします:
    • 多対一カラムは、別のモデル内の単一の行への参照です。CData ソリューションでは、多対一カラムは整数として表され、その値は他のモデルで参照している ID です。
    • 多対多カラムは、別のモデル内の多くの行への参照です。CData ソリューションでは、多対多カラムはカンマ区切りの整数リストを含むテキストとして表されます。リスト内の各値は、参照されている行の ID です。
    • 一対多カラムは、別のモデル内の多くの行への参照です。多対多カラムと同様(カンマ区切りの整数リスト)ですが、参照されるモデルの各行はメインモデルの 1 つにのみ属する必要があります。
  • SQL ストアドプロシージャを使用して、Odoo 内のサーバーサイド RFC を呼び出すことができます。

ユーザーは、Power BI や Qlik Sense などの分析ツールと Odoo を統合し、当社のツールを活用して Odoo データをデータベースやデータウェアハウスにレプリケートしています。


はじめに


Step 1: CData Connect AI で Odoo を設定

Grok からリアルタイムの Odoo のデータ にクエリを実行するには、まず CData Connect AIOdoo 接続を作成します。 この接続は CData Remote MCP Server 経由で公開されます。

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

    接続するには、URL にOdoo インスタンスURL、User およびAPIToken にユーザー資格情報、Database にOdoo データベース名を設定します。 API トークン(Odoo 14 以降でのみ利用可能)を使用していない場合、代わりにAPIToken フィールドにパスワードを直接入力することができます。

    接続方法の詳細は、ヘルプドキュメントの「はじめに」セクションを参照してください。

    Create & Test をクリックします。
  4. Permissions タブを開き、ユーザーアクセスを設定します。

Personal Access Token の追加

Personal Access Token(PAT)は、Agno から CData Connect AI への MCP リクエストを認証するために使用されます。

  1. Settings を開き、Access Tokens に移動します。
  2. Create PAT をクリックします。
  3. 生成されたトークンを安全に保存します。

Step 2: 必要な依存関係のインストール

Remote MCP Tools を使うと、Grok を外部の MCP(Model Context Protocol)サーバーに接続して、サードパーティや独自実装のカスタムツールで機能を拡張できます。サーバー URL とオプション設定を指定するだけで、xAI が MCP サーバーへの接続とやり取りを代行してくれます。

ターミナルを開き、pip を使って MCP 連携に必要な依存関係をインストールします。

	pip install xai-sdk==1.4.0

xai-sdk(v1.4.0)は Remote MCP Tools を有効にします。また、python-dotenv は環境変数を安全に読み込むために使用します。

	pip install python-dotenv

Step 3: xAI API キーの生成

  1. xAI アカウントを作成するか、ログインします。
  2. xAI API コンソールを開きます。
  3. API Keys に移動します。
  4. create API key をクリックします。

API キーを生成したら、安全な場所に保存してください。ターミナルで環境変数としてエクスポートするか、 .env ファイルに保存する方法がおすすめです。

Step 4: CData Connect AI に接続

Grok クライアントを初期化し、CData Connect AI への MCP 接続を設定します。以下のコードでは、セキュアな接続を確立し、データソースに対して自然言語クエリを送信します。

import os

from xai_sdk import Client
from xai_sdk.chat import user
from xai_sdk.tools import mcp

client = Client(api_key="Your_xAI-API_KEY")
chat = client.chat.create(
	model="grok-4-1-fast-non-reasoning",
	tools=[
		mcp(
			server_url="https://mcp.cloud.cdata.com/mcp",
			extra_headers={"Authorization": "Basic Username:PAT"} #Base64 Encoded Username:PAT
		)
		],
	include=["verbose_streaming"],
)

chat.append(user("List the top two catalogs for me please"))

is_thinking = True
for response, chunk in chat.stream():
	# View the server-side tool calls as they are being made in real-time
	for tool_call in chunk.tool_calls:
		print(f"
Calling tool: {tool_call.function.name} with arguments: {tool_call.function.arguments}")
	if response.usage.reasoning_tokens and is_thinking:
		print(f"
Thinking... ({response.usage.reasoning_tokens} tokens)", end="", flush=True)
	if chunk.content and is_thinking:
		print("

Final Response:")
		is_thinking = False
	if chunk.content and not is_thinking:
		print(chunk.content, end="", flush=True)

print("

Usage:")
print(response.usage)
print(response.server_side_tool_usage)
print("

Server Side Tool Calls:")
print(response.tool_calls)

このコードでは、Grok AI クライアントを初期化し、Basic 認証を使って MCP 経由で CData Connect AI に接続して、レスポンスをリアルタイムでストリーミングします。エージェントは利用可能なツールを自動的に検出し、ライブデータにクエリを実行して、ツール呼び出しと最終結果の両方を表示します。

スクリプトを実行して、Grok が接続先のデータソースにクエリを実行する様子を確認してみましょう。

クエリ結果

以下の出力は、Grok が CData Connect AI を通じて MCP ツールを呼び出し、接続先のデータソースからリアルタイムのデータを返す様子を示しています。

これで、Grok AI を通じて自然言語でライブデータにクエリを実行できるようになりました。

Grok と CData Connect AI でエージェントワークフローを構築

Grok AI と CData Connect AI を組み合わせることで、パイプラインやカスタム連携なしに AI 駆動のデータアクセスを実現できます。CData がどのように Grok に 350 以上の外部システムへのリアルタイムかつセキュアなアクセスを提供できるか、ぜひ無料トライアルでお試しください。

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

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

無料トライアル