バインディングを管理する

Agent Registry では、バインディングは、ソース エージェントとターゲット リソース(別のエージェント、 MCP サーバー、エンドポイントなど)間の 接続を表します。バインディングを作成することで、オーケストレータ エージェントがダウンストリーム機能とやり取りできる明示的な関係を確立できます。

Agent Registry に登録されているスタンドアロン スキルの場合、 関係とアクセスはポリシー バインディングによって管理されます。バインディングを作成してソース エージェントをターゲット スキルに接続し、エージェントがスキルをコンテキストに読み込めるようにします。

バインディングは、次の 2 つのシナリオで使用します。

  • リソース接続: ソース エージェントをターゲット リソース(別のエージェント、MCP サーバー、エンドポイントなど)にリンクできます。このシナリオでは、プライマリ オーケストレータがタスクを専門のサブエージェントまたはツールに委任するマルチエージェント ワークフローをマッピングできます。
  • 委任された権限: エージェントを 認証プロバイダに関連付けて、エージェントが独自の認証情報を使用するか、 個々のユーザーに 代わって外部ターゲットまたはカスタムツールに接続できるようにします。エージェントが OAuth トークンまたは API キーを使用してリモート MCP サーバーまたはツールに対して認証を行う必要がある場合は、このバインディングが必要です。バインディングを使用すると、コードで認証プロバイダを手動で定義する必要がなくなります。詳細な手順については、このドキュメントの 認証プロバイダ バインディングを作成するをご覧ください。

このドキュメントでは、Agent Registry でバインディングを作成、表示、更新、削除する方法について説明します。

始める前に

バインディングを管理する前に、次のことを行います。

  1. Agent Registry を設定します
  2. ソース コンポーネントとターゲット コンポーネントを登録します。詳細については、 エージェント コンポーネントを登録するをご覧ください。
  3. 委任された権限のバインディングを構成する場合は、auth プロバイダをAgent Identity 認証マネージャーを使用して作成します。 詳細については、 ツールとリソースに対して認証するをご覧ください。
  4. このドキュメントの Google Cloud CLI コマンドを使用するには、 gcloud CLI 環境が設定されていることを確認してください

必要なロール

Agent Registry でバインディングを管理するために必要な権限を取得するには、プロジェクトに対する次の IAM ロールを付与するよう管理者に依頼してください。

ロールの付与については、プロジェクト、フォルダ、組織へのアクセス権の管理をご覧ください。

必要な権限は、カスタム ロールや他の事前定義 ロールから取得することもできます。

バインディングを作成する

バインディングを作成して、ソース エージェントをターゲット リソースに接続します。

gcloud

gcloud agent-registry bindings create BINDING_NAME \
  --project=PROJECT_ID \
  --location=REGION \
  --display-name="DISPLAY_NAME" \
  --source-identifier="SOURCE_ID" \
  --target-identifier="TARGET_ID"

次のように置き換えます。

  • BINDING_NAME: バインディングに付ける名前(例: my-custom-binding)。
  • PROJECT_ID: プロジェクト ID。
  • REGION: レジストリ リージョン。
  • DISPLAY_NAME: バインディングに付ける人が読める形式の名前(例: My Custom Binding)。
  • SOURCE_ID: Uniform Resource Name(URN)形式のソース エージェントの 識別子
  • TARGET_ID: URN 形式のターゲット リソースの識別子( MCP サーバー識別子など)。

Terraform

ソース エージェントとターゲット リソースの間にバインディングを作成するには、google_agent_registry_binding リソースを構成します。バインディングには target ブロックが必要です。

resource "google_agent_registry_binding" "agent_binding" {
  location     = "REGION"
  binding_id   = "BINDING_NAME"
  display_name = "DISPLAY_NAME"
  description  = "Connects a source agent to a target resource."

  source {
    identifier = "urn:agent:my-publisher:my-namespace:SOURCE_AGENT_NAME"
  }

  target {
    identifier = "urn:mcp:my-publisher:my-namespace:TARGET_RESOURCE_NAME"
  }
}

次のように置き換えます。

  • REGION: レジストリ リージョン。
  • BINDING_NAME: バインディングに付ける一意の名前。
  • DISPLAY_NAME: バインディングの人が読める形式の名前。
  • SOURCE_AGENT_NAME: ソース エージェントの名前。
  • TARGET_RESOURCE_NAME: ターゲット リソースの名前(MCP サーバーやエンドポイントなど)。

認証プロバイダ バインディングを作成する

委任された 権限のエージェントを 認証プロバイダに関連付けることができます。このバインディングを作成する前に、まず 認証プロバイダを Agent Identity 認証マネージャーを使用して作成する必要があります。 詳細については、 ツールとリソースに対して認証するをご覧ください。

--auth-provider リソース名を指定する場合は、プロジェクト ID を使用する必要があります。

gcloud

gcloud agent-registry bindings create BINDING_NAME \
  --project=PROJECT_ID \
  --location=REGION \
  --display-name="DISPLAY_NAME" \
  --source-identifier="SOURCE_ID" \
  --auth-provider="projects/PROJECT_ID/locations/REGION/connectors/AUTH_PROVIDER_ID"

AUTH_PROVIDER_ID は、認証プロバイダの ID に置き換えます。

Terraform

Terraform で認証プロバイダ バインディングを構成するには、コネクタ認証プロバイダの完全なリソースパス、スコープ、継続 URI を指定して auth_provider_binding ブロックを指定します。

resource "google_agent_registry_binding" "auth_binding" {
  location     = "REGION"
  binding_id   = "BINDING_NAME"
  display_name = "DISPLAY_NAME"

  source {
    identifier = "urn:agent:my-publisher:my-namespace:SOURCE_AGENT_NAME"
  }

  target {
    identifier = "urn:mcp:my-publisher:my-namespace:TARGET_RESOURCE_NAME"
  }

  auth_provider_binding {
    auth_provider = "projects/PROJECT_ID/locations/REGION/connectors/AUTH_PROVIDER_ID"
    scopes        = [SCOPES]
    continue_uri  = "CONTINUE_URI"
  }
}

次のように置き換えます。

  • REGION: レジストリ リージョン。
  • BINDING_NAME: バインディングに付ける一意の名前。
  • DISPLAY_NAME: バインディングの人が読める形式の名前。
  • SOURCE_AGENT_NAME: ソース エージェントの名前。
  • TARGET_RESOURCE_NAME: ターゲット リソースの名前(MCP サーバーやエンドポイントなど)。
  • PROJECT_ID: プロジェクト ID。
  • AUTH_PROVIDER_ID: コネクタ認証プロバイダの ID。
  • SCOPES: OAuth2 スコープのカンマ区切りのリスト( 例: "https://www.googleapis.com/auth/cloud-platform")。
  • CONTINUE_URI: 認証プロバイダの継続 URI(例: https://example.com/continue)。

エージェント コードでこれらのバインディングを使用する方法の例については、 Agent Development Kit(ADK)コードでバインディングを解決するをご覧ください。

スタンドアロン スキルのバインディングを作成する

Agent Registry に登録されているスタンドアロン スキルへのアクセスを管理するには、推論エンジン エージェント をターゲット スキルに接続するバインディングを作成します。スキルを MCP サーバー ツールに接続するバインディングは作成できません。

エージェントがスタンドアロン スキルを読み込めるようにします。

gcloud agent-registry bindings create BINDING_NAME \
  --project=PROJECT_ID \
  --location=REGION \
  --display-name="DISPLAY_NAME" \
  --source-identifier="urn:agent:projects-PROJECT_ID:projects:PROJECT_ID:locations:REGION:agentregistry:AGENT_ID" \
  --target-identifier="SKILL_URN"

SKILL_URN は、Google が作成したスキルまたは手動で登録したスキルの Uniform Resource Name(URN)に置き換えます。

バインディングの一覧表示

特定のロケーションのすべてのバインディングを一覧表示します。

gcloud agent-registry bindings list \
  --project=PROJECT_ID \
  --location=REGION

バインディングの詳細を表示する

単一のバインディングの詳細を取得します。

gcloud agent-registry bindings describe BINDING_NAME \
  --project=PROJECT_ID \
  --location=REGION

バインディングを更新する

gcloud CLI フラグを使用して、既存のバインディングのパラメータ(表示名や説明など)を更新します。

gcloud

gcloud agent-registry bindings update BINDING_NAME \
  --project=PROJECT_ID \
  --location=REGION \
  --display-name="NEW_DISPLAY_NAME"

Terraform

Terraform を使用してバインディングの表示名または説明を更新するには、構成内の既存の google_agent_registry_binding リソースを変更して terraform apply を実行します。

バインディングを削除する

リソース間の接続を削除するには、バインディング レコードを削除します。

gcloud

gcloud agent-registry bindings delete BINDING_NAME \
  --project=PROJECT_ID \
  --location=REGION

Terraform

バインディングを表す google_agent_registry_binding リソースを Terraform 構成から削除し、terraform apply を実行します。

次のステップ