前提条件
Connect AI で Gemini Enterprise を設定して使用するには、まず以下の手順を実行する必要があります。- Connect AI アカウントにデータソースを接続します。詳細については、データソース を参照してください。
- Gemini Enterprise アカウントが必要です(トライアル版あり)。
- 請求機能が有効になっている Google Cloud プロジェクトが必要です。
- Google Cloud CLI をインストールして設定します。
- Python 3.12 以降および UV パッケージマネージャー をインストールします。
google-adk>=1.31.1をインストールします。- ADK デプロイメントのステージング用に、Google Cloud Storage バケットを用意します。
google-adk>=1.31.1 を使用してください。バージョン 1.31.1 以前には、バインドされたトークン機構がMcpToolset のアウトバウンド HTTP リクエストに干渉し、header_provider の認証トークンが MCP サーバーに正しく渡されないという既知のバグがあります。Windows での ADK デプロイメントには既知の問題があります。 Windowsマシンでは、WSL(Windows Subsystem for Linux)経由でUbuntuを使用してください。MacおよびLinux環境では直接動作します。
CData Connect AI で OAuth アプリを作成する
Gemini Enterpriseは、 CData Connect AI MCP Serverに対するユーザー認証に、PKCEを伴う OAuth 2.0認証コードを使用します。これには、 CData Connect AI アカウントにユーザーベースの OAuth アプリが必要です。以下の設定を入力します:
- Name–わかりやすい名前を入力(例:GeminiEnterpriseOAuth)。
- Authentication Flow–**User-based (Authorization Code)**を選択。
- Callback URL–https://vertexaisearch.cloud.google.com/oauth-redirect を入力。

Google CLI および ADK 環境のセットアップ
Google Cloud CLI をインストールし、認証を行います:
ADK エージェントの開発
エージェントは、McpToolset、StreamableHTTPConnectionParams、およびheader_providerを使用して、 CData Connect AI MCP エンドポイントに接続します。header_provider は、 OAuth フロー後に Gemini Enterprise によって注入されたReadonlyContext からセッションごとの Bearer トークンを取得するため、エージェントのコードには認証情報が保存されません。
フォルダ構造
agents/ ディレクトリから、agent サブディレクトリを作成し、その中に移動します:
agent.py
.env
CONNECT_AI_AUTHID の値は、上記で生成された OAuth App ID です。これは、 Connect AI の設定にあるOAuth Apps ページで確認できます(形式:cdata-connect-ai-oauth_XXXXXXXXXXXXXXXXX)。__init__.py
Vertex AI Agent Engine へのデプロイ
デプロイには通常、約 5 分かかります。Gemini Enterprise にエージェントを追加する
認証画面で、以下の設定を使用して OAuth を構成します:
- Client ID および Client Secret–上記で作成した OAuth アプリから取得。
- Token URI–https://cloud-login.cdata.com/oauth/token を入力。
- Authorization URI–https://cloud-login.cdata.com/authorize?response_type=code を入力。
- PKCE verification を有効化。

設定画面で、以下を入力します:
- Agent name–適切な表示名を入力(例:CData Connect AI Agent)。
- Agent description–Geminiがこのエージェントをいつ呼び出すべきかを判断するのに役立つ説明を入力。
- Agent Engine inference engine–前のセクションからコピーしたリソース名を、以下の形式で入力します:projects/{project}/locations/{location}/reasoningEngines/{id}。


