このページでは、カスタム Model Context Protocol(MCP)サーバーを使用してデータソースを接続し、Gemini Enterprise が企業のプライベート データに安全にアクセスできるようにする方法について説明します。
カスタム MCP サーバー データストアを使用すると、プライベート データ、カスタム 内部ツール、MCP 準拠のサードパーティ システムを Google Cloud コンソールに直接統合できます。このアプローチでは、標準コネクタが使用できない場合に、内部システムとレガシー システムを接続する統一された方法が提供されます。この統合により、AI エージェントは、プライベート インフラストラクチャ内のビジネスに不可欠な情報や特殊なロジックにアクセスできるようになり、既存のテクノロジー投資の価値を最大限に高めることができます。
制限事項
カスタム MCP サーバーには次の制限があります。
- サーバー送信イベント(SSE): 古い
SSEトランスポートはサポートされていません。コネクタは、新しいStreamableHTTPトランスポートのみをサポートします。 - Private Service Connect(PSC): 現在のバージョンでは PSC 統合はサポートされていません。
- アクションの上限: 最適なパフォーマンスを確保するため、カスタム MCP サーバー データストアで有効にする アクションの数を一度に 100 個までに制限してください。詳細については、アクションを有効にするをご覧ください。
- VPC Service Controls: 現在のプレビューでは VPC-SC はサポートされていません。
始める前に
カスタム MCP サーバー接続を設定する前に、次のことを確認してください。
カスタム MCP データストアには、いくつかの組織のポリシー制約が適用されます。次の操作を行う必要があります。
カスタム MCP データストアの作成をブロックする組織のポリシー制約をオーバーライドします。詳細については、 カスタム MCP データストアの組織のポリシーをオーバーライドするをご覧ください。
カスタム MCP サーバーの URL、認可 URL、トークン URL の完全修飾ドメイン名(FQDN)を明示的に許可します。詳細については、 許可される下り(外向き)FQDN を構成するをご覧ください。
- プロジェクトの適用が有効になっている場合、またはプロジェクトが VPCSC で保護されている場合は、許可されるデータソースに
custom_mcpを追加する必要があります。許可されるデータソースを構成する をご覧ください。
ディスカバリー エンジン編集者 ロール(
roles/discoveryengine.editor)を付与します。このロールは、管理者がデータストアを作成するために必要です。このロールを付与する手順は次のとおりです。
コンソールで、[IAM] ページに移動します。 Google Cloud
ユーザー アカウントを見つけて、[edit] [Edit] アイコンをクリックします。
ユーザーに
Discovery Engine Editorロールを付与します。 詳細については、IAM のロールと権限をご覧ください。
Gemini Enterprise を、ID プロバイダ(Okta、Azure AD、Google など)に OAuth クライアント アプリケーションとして登録します。
アプリを登録する手順は次のとおりです。
認可リダイレクト URL を
https://vertexaisearch.cloud.google.com/oauth-redirectに設定します。必要な OAuth スコープをクライアント アプリに付与します。
クライアント アプリを登録したら、次の手順でカスタム MCP サーバー データストアの構成に必要な
client_idとclient_secretを取得します。
カスタム MCP サーバー データストアを作成する
構成フローを設定する手順は次のとおりです。
コンソールで、[Gemini Enterprise] ページに移動します。 Google Cloud
ナビゲーション メニューで [データストア] をクリックします。
[ Create data store] をクリックします。
[データソースを選択] ページで、[ソースを検索] フィールドに「Custom MCP Server」と入力します。 [Custom MCP Server(プレビュー)] カードが表示されます。
[MCP サーバーを追加] をクリックします。[MCP サーバーの構成] ページが表示されます。
[認証の設定] セクションで、次の必須フィールドに値を入力します。
フィールド 説明 MCP サーバーの URL これは、MCP サーバーがホストされているエンドポイントです。HTTPS URL である必要があります。Gemini Enterprise は StreamableHTTPトランスポートのみをサポートしており、URL は/mcpで終わることがよくあります。例:https://mcp.example.com/mcp認可 URL ユーザーが Gemini Enterprise に MCP サーバーへのアクセスを認可するためのベース URL。例: https://mcp.example.com/authorize認可 URL パラメータ 省略可。認可 URL に必要な追加のパラメータ。 たとえば、Google MCP サーバーから更新トークンを取得するには、 &access_type=offline&prompt=consentと入力します。
認可サーバーにaudienceパラメータが必要な場合は、この設定でパラメータとして追加できます。例:&audience=https://api.your-domain.com/v1/.トークン URL OAuth 認証中に認可コードをアクセス トークンと交換するために使用されるエンドポイント。例: https://mcp.cymbal.com/token.クライアント ID Gemini Enterprise を表すために ID プロバイダに登録した OAuth アプリの一意の識別子。 Client Secret Gemini Enterprise を表すために ID プロバイダに登録した OAuth アプリに関連付けられた機密鍵。 スコープ Gemini Enterprise がユーザーに代わって実行できるアクション、またはアクセスできるデータを定義する権限。スコープは MCP サーバーへのアクセスに使用されます。Gemini Enterprise は、ユーザーの認可時にこれらのスコープをリクエストします。OAuth アプリがこれらのスコープを使用するように構成されていることを確認してください。
スコープを指定する場合は、次の点を考慮してください。- スコープをスペース区切りのリストで指定します。たとえば、Box の場合は
root_readwrite manage_managed_users manage_groupsを指定します。 - 指定したスコープが、ユーザーがログインして管理者によって有効にされたツールやアクションを使用するのに十分であることを確認します。そうでない場合、エージェントはアプリにアクセスできません。
- 一般的なスコープは
offline_accessで、アプリが更新トークンをリクエストできるようにします。
- スコープをスペース区切りのリストで指定します。たとえば、Box の場合は
[ログイン] をクリックして、ログインを完了します。
[**続行**] をクリックすると、[**詳細オプション**] セクションが開きます。
[MCP サーバーの説明] フィールドに、サーバーの機能と使用するタイミングを Gemini Enterprise が理解できるように説明を入力します。詳細については、 効果的な MCP サーバーの説明と手順を作成するをご覧ください。
[続行] をクリックします。
[データコネクタの構成] セクションで、[マルチリージョン] フィールド リストから [データコネクタのロケーション] を選択します。
[データコネクタ名] フィールドに、データストアの名前を入力します。
[作成] をクリックします。Gemini Enterprise によってデータストアが作成され、[データストア] ページにデータストアが表示されます。
カスタム MCP サーバーの状態を確認する
カスタム MCP サーバーの状態を確認する手順は次のとおりです。
[データストア] リストでデータストアをクリックします。データストアの詳細が表示されます。
データストアの状態が
Activeに変わるまでモニタリングします。データストアの状態がCreatingからActiveに変わると、カスタム MCP サーバー データストアを使用できるようになります。
アクションを有効にする
デフォルトでは、すべてのアクションはオフになっています。MCP サーバーを接続すると、そのツールはすべてインポートされ、Gemini Enterprise データストアにアクションとして表示されます。最適なエクスペリエンスを確保するため、一度に有効にできるアクションは 100 個までです。ユーザーに対してこれらのアクションを有効にする手順は次のとおりです。
- カスタム MCP サーバー データストアに移動します。
[アクション > カスタム アクションを再読み込み] をクリックして、再認証します。
有効にするアクションを選択します。
[アクションを有効にする] をクリックします。
ユーザーの確認をスキップするようにアノテーションを構成する
MCP サーバーのツールがアクションとして Gemini Enterprise データストアにインポートされると、Gemini Enterprise はツールの注釈を確認して、ユーザーの確認が必要かどうかを判断します。デフォルトでは、Gemini Enterprise はすべてのオペレーションが破壊的で、データを変更する可能性があると想定しているため、アクションに対するすべての呼び出しでユーザーの確認が必要です。
サーバーが読み取り専用機能(データベースのクエリなど)を提供していて、ユーザー エクスペリエンスを向上させるためにこの確認をスキップする場合は、MCP ツールの仕様で、アクションとしてインポートされる前にアノテーションを構成できます。
データストア アクションのユーザー確認を管理するには、MCP ツールの定義で次のアノテーションを構成することをおすすめします。
readOnlyHint: オペレーションが非破壊的で、データの読み取りのみを行う場合は、このアノテーションをツール定義に追加します。ツールの実行では ユーザーの確認がバイパスされます。destructiveHint: ツールがデータを変更する場合は、このアノテーションを明示的に使用します。これにより、デフォルトの確認動作が維持されます。
たとえば、Python の場合:
@mcp.tool(annotations={ "destructiveHint": False, "readOnlyHint": True })
変更が設定に反映されるように、カスタム アクションを再読み込みします。 詳細については、アクションを有効にするをご覧ください。
次のステップ
- 悪意のある入力と出力から保護するには、Model Armor を有効にします。詳細については、 Model Armor を有効にするをご覧ください。
- Gemini Enterprise アシスタントではなく、カスタム エージェントを使用して MCP サーバーにクエリを実行する場合は、 エージェントを作成するをご覧ください。
- データストアがアプリに接続されていない場合は、データストアを アプリに接続して Gemini Enterpriseを承認するをご覧ください。
- カスタム MCP サーバーに接続されているエージェントを使用するには、エージェントを使用する をご覧ください。