Amazon Connect Customer AIエージェントで会話を継続するツールタイプと終了するツールタイプを整理してみた

Amazon Connect Customer AIエージェントで会話を継続するツールタイプと終了するツールタイプを整理してみた

Amazon Connect Customer AIエージェントのツールタイプによって、会話が継続するのか終了するのかが異なります。その違いを整理し、Flow Module toolとReturn to Control toolの使い分けについて解説します。
2026.07.21

はじめに

Amazon Connect Customer AIエージェントでセルフサービスを構成していると、AIエージェントがツールを呼び出したあとに、会話が継続するのか、問い合わせフローへ制御が戻るのか迷うことがあります。

例えば、以下のような構成です。

顧客とAIエージェントが会話する

AIエージェントが問い合わせ内容を分類する

分類結果を問い合わせフローで参照する

後続の問い合わせフローで分岐する

このとき、フローモジュールツールの指示に「分類後は会話を終了してください」と記載するだけで、問い合わせフローへ制御が戻るのかが気になりました。

結論から言うと、AIエージェントとの会話を終了して問い合わせフローへ制御を戻すには、Tool TypeReturn to Control のツールを使用します。

一方、Out-of-the-box ツール、フローモジュールツール、サードパーティーの MCP ツール、Constant ツールは、AIエージェントとの会話を終了せず、ツールの実行結果を使って会話を継続します。

本記事では、Amazon Connect Customer AIエージェントで利用できるツールごとに、会話が継続するのか、終了して問い合わせフローへ制御が戻るのかを整理します。

結論

会話の継続と終了という観点では、以下のように整理できます。

ツール 会話の扱い 主な用途
Out-of-the-box ツール 継続 Amazon Connect Customer が提供する構築済みツールを利用する
フローモジュールツール 継続 フローモジュールを呼び出して業務ロジックを実行する
サードパーティーの MCP ツール 継続 外部システムやサードパーティーのツールを呼び出す
Constant ツール 継続 設定した静的文字列をAIエージェントへ返す
Return to Control ツール 終了 AIエージェントとの会話を終了し、問い合わせフローへ制御を戻す

問い合わせフローへ制御を戻すかどうかは、ツールの指示に「会話を終了する」と記載されているかではなく、Tool TypeReturn to Control かどうかで決まります。

公式ドキュメントでは、Return to Control について、AIエージェントに停止を指示し、問い合わせフローへ制御を返すものとして説明されています。

Return to Control – AI エージェントに停止を指示し、問い合わせフローに制御を返します。

https://docs.aws.amazon.com/ja_jp/connect/latest/adminguide/agentic-self-service.html

SelfServiceOrchestrator AIエージェントには、デフォルトで CompleteEscalateReturn to Control ツールが含まれます。

  • Complete:インタラクションを終了する
  • Escalate:有人エージェントへ転送する

また、任意の入力スキーマを持つカスタム Return to Control ツールも作成できます。

ツールごとの挙動

Out-of-the-box ツール

Out-of-the-box ツールは、Amazon Connect Customer が提供する構築済みのツールです。

公式ドキュメントでは、問い合わせ属性の更新やケース情報の取得など、一般的なタスクに利用できるツールとして説明されています。

Connect Customer には、問い合わせ属性の更新やケース情報の取得などの一般的なタスク用の構築済みのツールが含まれており、追加の設定なしですぐに機能できます。

https://docs.aws.amazon.com/ja_jp/connect/latest/adminguide/ai-agent-mcp-tools.html

Out-of-the-box ツールは、AIエージェントが会話中に情報を取得したり、アクションを実行したりするために利用します。

ツールの実行結果はAIエージェントへ返され、その結果を使って顧客への回答や次の処理を継続します。Out-of-the-box ツールを呼び出しただけでは、問い合わせフローへ制御は戻りません。

フローモジュールツール

フローモジュールツールは、新しく作成したフローモジュール、または既存のフローモジュールをAIエージェントから呼び出せるようにするものです。

公式ドキュメントでは、既存のフローモジュールを MCP ツールに変換し、同じビジネスロジックを再利用できると説明されています。

新しいフローモジュールを作成したり、既存のフローモジュールを MCP ツールに変換したりできるため、静的 AI ワークフローと生成 AI ワークフローの両方で同じビジネスロジックを再利用できます。

https://docs.aws.amazon.com/ja_jp/connect/latest/adminguide/ai-agent-mcp-tools.html

例えば、問い合わせ種別マスタを Data Table から取得する GetInquiryCategories というフローモジュールツールを作成したとします。

AIエージェント

GetInquiryCategories を呼び出す

フローモジュール内で Data Table を List 取得する

問い合わせ種別候補をAIエージェントへ返す

AIエージェントとの会話を継続する

GetInquiryCategories は、Data Table から取得した問い合わせ種別候補をAIエージェントへ返すためのツールです。

フローモジュールツールの指示に、以下のように記載しても、それだけでは問い合わせフローへ制御は戻りません。

分類後は追加質問や追加説明をせず、会話を終了してください。

この指示はAIエージェントの振る舞いを誘導するものですが、問い合わせフローへの制御返却を実行するものではありません。

問い合わせフローへ制御を戻すには、フローモジュールツールの処理後に Return to Control ツールを呼び出す必要があります。

サードパーティーの MCP ツール

サードパーティーの MCP ツールは、Amazon Bedrock AgentCore Gatewayを使用して、外部システムやサードパーティーのツールをAIエージェントから利用するものです。

公式ドキュメントでは、AWS マネジメントコンソールに AgentCore Gatewayを登録することで、リモート MCP サーバーなどで利用可能なツールへアクセスできると説明されています。

Amazon Bedrock AgentCore Gateway を使用して、サードパーティーの統合を使用できます。AWS マネジメントコンソールに AgentCore Gateway を登録することで、リモート MCP サーバーなど、それらのサーバーで使用できる任意のツールにアクセスできます。

https://docs.aws.amazon.com/ja_jp/connect/latest/adminguide/ai-agent-mcp-tools.html

また、AIエージェントは問い合わせフローへ制御を戻すことなく、会話中に MCP ツールを呼び出すと説明されています。

AI エージェントは、問い合わせフローに制御を戻すことなく、会話中に MCP ツールを呼び出します。

https://docs.aws.amazon.com/ja_jp/connect/latest/adminguide/agentic-self-service.html

そのため、サードパーティーの MCP ツールを呼び出した場合も、ツールの実行結果がAIエージェントへ返され、会話が継続します。

外部システムの処理が完了したあとに問い合わせフローへ戻したい場合は、その後に Return to Control ツールを呼び出す構成にします。

Constant ツール

Constant ツールは、設定した静的文字列をAIエージェントへ返すツールです。

公式ドキュメントでは、Constant ツールの挙動について以下のように説明されています。

定数ツールは、呼び出し時に設定された静的文字列値を AI エージェントに返します。Return to Control ツールとは異なり、定数ツールは AI 会話を終了しません。AI エージェントは文字列を受け取り、会話を続行します。

https://docs.aws.amazon.com/ja_jp/connect/latest/adminguide/agentic-self-service.html

例えば、実際の注文管理システムへ接続する前に、以下のような固定レスポンスを返す Constant ツールを作成できます。

{
  "orderId": "ORDER-12345",
  "status": "shipped"
}

このツールをAIエージェントが呼び出しても、問い合わせフローへ制御は戻りません。

AIエージェントは返された静的文字列を使って、顧客への回答や次の処理を継続します。

Return to Control ツール

Return to Control ツールは、AIエージェントとの会話を終了し、問い合わせフローへ制御を戻すためのツールです。

Return to Control ツールが呼び出された際の動作は以下です。

  • AIエージェントとの会話が終了する
  • 問い合わせフローへ制御が戻る
  • 呼び出されたツール名と入力パラメータが Amazon Lex のセッション属性に格納される

問い合わせフローでは、これらのセッション属性を参照し、呼び出されたツールや入力パラメータに応じて後続処理へ分岐できます。

https://docs.aws.amazon.com/ja_jp/connect/latest/adminguide/agentic-self-service.html#agentic-self-service-escalation-flow-steps

Return to Control ツールには、デフォルトのツールとカスタムツールがあります。

ツール 用途
Complete インタラクションを終了する
Escalate 有人エージェントへ転送する
カスタム Return to Control ツール 入力スキーマで定義した値を問い合わせフローへ渡す

単にAIエージェントとの会話を終了したい場合は、デフォルトの Complete を利用できます。

一方、問い合わせ分類結果や会話要約などの値を問い合わせフローへ渡したい場合は、入力スキーマを持つカスタム Return to Control ツールを作成します。

問い合わせ分類での構成例

問い合わせ分類では、問い合わせ種別の管理方法によって構成が異なります。

Return to Control ツールだけで構成する場合

問い合わせ種別が固定されており、カスタム Return to Control ツールの入力スキーマにすべて定義できる場合は、Return to Control ツールだけで構成できます。

例えば、問い合わせ種別が以下の3種類で固定されているケースです。

inquiryTypeName
請求
契約
その他

カスタム Return to Control ツールの入力スキーマに、問い合わせ種別を enum として定義します。

{
  "type": "object",
  "properties": {
    "inquiryTypeName": {
      "type": "string",
      "description": "会話内容に最も近い問い合わせ種別。",
      "enum": [
        "請求",
        "契約",
        "その他"
      ]
    }
  },
  "required": [
    "inquiryTypeName"
  ]
}

AIエージェントは会話内容をもとに inquiryTypeName を選択し、カスタム Return to Control ツールを呼び出します。

顧客とAIエージェントが会話する

AIエージェントが inquiryTypeName を選択する

Return to Control ツールを呼び出す

AIエージェントとの会話が終了する

問い合わせフローへ制御が戻る

問い合わせ種別が少なく、変更頻度も低い場合は、この構成がシンプルです。

フローモジュールツールと Return to Control ツールを組み合わせる場合

問い合わせ種別を Data Table で管理し、フローモジュールツールから取得する場合は、フローモジュールツールと Return to Control ツールを組み合わせます。

例えば、Data Table に以下の問い合わせ種別マスタを登録しているケースです。

inquiryTypeName examples
請求 支払い遅延、請求書再発行
契約 解約、プラン変更
その他 担当部署不明、上記に該当しない問い合わせ

この構成では、2つのツールの役割を分けます。

GetInquiryCategories
  → フローモジュールツール
  → Data Table から問い合わせ種別候補を取得する
  → AIエージェントへ候補を返す
  → AIエージェントとの会話を継続する

CompleteInquiryClassification
  → カスタム Return to Control ツール
  → AIエージェントが選択した inquiryTypeName を渡す
  → AIエージェントとの会話を終了する
  → 問い合わせフローへ制御を戻す

GetInquiryCategoriesCompleteInquiryClassification は例示のツール名です。実際の環境では、ツール名や入力スキーマを要件に合わせて置き換えてください。

この構成における役割は以下です。

ツール 役割
フローモジュールツール Data Table から問い合わせ種別候補を取得する
Return to Control ツール 分類結果を問い合わせフローへ渡し、AIエージェントとの会話を終了する

フローモジュールツールに会話終了の役割を持たせるのではなく、候補取得と制御返却を別のツールで実行します。

問い合わせフローで確認する値

Return to Control ツールが呼び出されると、AIエージェントとの会話が終了し、問い合わせフローへ制御が戻ります。呼び出されたツール名と入力パラメータは、Amazon Lex のセッション属性に格納されます。

問い合わせフローでは、顧客の入力を取得する ブロックのデフォルト出力後に コンタクト属性を確認する ブロックを配置し、以下の値を確認します。

項目
名前空間 Lex
キー セッション属性
セッション属性キー Tool
条件値 呼び出された Return to Control ツール名

https://docs.aws.amazon.com/ja_jp/connect/latest/adminguide/agentic-self-service.html#agentic-self-service-escalation-flow-steps

例えば、カスタム Return to Control ツール名が CompleteInquiryClassification の場合は、ToolCompleteInquiryClassification であることを確認します。

Tool とツールの入力パラメータは、役割が異なります。

用途
Tool CompleteInquiryClassification 呼び出された Return to Control ツールを判断する
inquiryTypeName 請求 問い合わせ分類結果として後続処理で使用する

今回の例では、GetInquiryCategories はフローモジュールツールです。そのため、Tool で確認する値は GetInquiryCategories ではなく、問い合わせフローへ制御を戻した CompleteInquiryClassification です。

まとめ

Amazon Connect Customer AIエージェントで利用できるツールについて、会話が継続するツールと終了するツールを整理しました。

Out-of-the-box ツール、フローモジュールツール、サードパーティーの MCP ツール、Constant ツールは、実行結果をAIエージェントへ返して会話を継続します。一方、Return to Control ツールは、AIエージェントとの会話を終了し、問い合わせフローへ制御を戻します。

問い合わせ種別を入力スキーマに直接定義できる場合は、カスタム Return to Control ツールだけで構成できます。問い合わせ種別を Data Table で管理する場合は、候補取得をフローモジュールツール、分類結果の受け渡しと会話終了を Return to Control ツールで行います。

フローモジュールツールの指示に「会話を終了する」と記載するだけでは問い合わせフローへ制御は戻らないため、制御返却が必要な箇所では Return to Control ツールを利用しましょう。

この記事をシェアする

AWSのお困り事はクラスメソッドへ

関連記事