Grok を使って CData Connect AI 経由で HCL Domino のデータと対話する
Grok AI は、xAI が開発した大規模言語モデルです。 リアルタイムの推論やツール呼び出し、エージェントワークフローに対応しており、 ライブデータをもとに推論し、ツールを動的に検出してインテリジェントなアクションを実行する AI エージェントを構築できます。
CData Connect AI は、350 以上のエンタープライズデータソースを Grok AI と連携させるための、セキュアなクラウド間インターフェースを提供します。 Connect AI を使用すると、リアルタイムの HCL Domino のデータ をレプリケーションなしでリモート MCP エンドポイント経由で公開できるため、Grok AI エージェントがガバナンスされたエンタープライズデータに対してリアルタイムでセキュアにクエリや分析を実行できます。
Step 1: CData Connect AI で HCL Domino を設定
Grok からリアルタイムの HCL Domino のデータ にクエリを実行するには、まず CData Connect AI で HCL Domino 接続を作成します。 この接続は CData Remote MCP Server 経由で公開されます。
-
Connect AI にログインし、Sources をクリックしてから Add Connection をクリックします。
-
Add Connection パネルから「HCL Domino」を選択します。
-
必要な認証プロパティを入力します。
Domino への接続
それでは、Domino のデータに接続していきましょう。接続するには、以下のプロパティを設定してください。
- URL:Domino データベースをホスティングしているサーバーのホスト名またはIP アドレス。Domino データベースをホスティングしているサーバーのポートを含めます。例:http://sampleserver:1234/
- DatabaseScope:Domino Web UI でのスコープ名。CData 製品は、指定されたスコープに適合するスキーマのフォームとビューを公開します。Domino Admin UI で、サイドバーのScopes メニューを選択してください。このプロパティを既存のスコープ名に設定します
Domino での認証
続いて、認証方法を設定しましょう。Domino では、ログインクレデンシャル(OAuthPassword)またはMicrosoft Entra ID(AzureAD)のいずれかによる認証をサポートしています。
ログインクレデンシャル
ログインクレデンシャルで認証するには、以下のプロパティを設定してください:
- AuthScheme:OAuthPassword
- User:認証するDomino ユーザーのユーザー名
- Password:認証するDomino ユーザーに関連付けられたパスワード
ドライバーがログインクレデンシャルを使用して、自動的にOAuth トークン交換を実行します。
Microsoft Entra ID(Azure AD)
この認証方法は、Azure Active Directory をIdP として使用してJWT トークンを取得します。Azure Active Directory にカスタムのアプリケーションを作成し、それをIdP として設定する必要があります。詳しい手順については、ヘルプドキュメントの指示に従ってください。その後、以下のプロパティを設定します。
- AuthScheme:AzureAD
- InitiateOAuth:これをGETANDREFRESH に設定します。InitiateOAuth を使用すると、OAuth 交換の繰り返しやOAuthAccessToken の手動設定を避けることができます
- OAuthClientId:カスタムAzure AD アプリケーションの作成時に取得したクライアントID
- OAuthClientSecret:カスタムAzure AD アプリケーションの作成時に取得したクライアントシークレット
- CallbackURL:カスタムAzure AD アプリケーションの登録時に指定されたリダイレクトURI。例えば、https://localhost:33333
- AzureTenant:データにアクセスするために使用されるMicrosoft Online テナント。companyname.microsoft.com 形式の値またはテナントID のいずれかを指定してください
テナントID は、Azure ポータルのAzure Active Directory > プロパティページに表示されているディレクトリID と同じです。
Create & Test をクリックします。
-
Permissions タブを開き、ユーザーアクセスを設定します。
Personal Access Token の追加
Personal Access Token(PAT)は、Agno から CData Connect AI への MCP リクエストを認証するために使用されます。
- Settings を開き、Access Tokens に移動します。
- Create PAT をクリックします。
-
生成されたトークンを安全に保存します。
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 キーの生成
- xAI アカウントを作成するか、ログインします。
- xAI API コンソールを開きます。
- API Keys に移動します。
- 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 以上の外部システムへのリアルタイムかつセキュアなアクセスを提供できるか、ぜひ無料トライアルでお試しください。