Copilot StudioのエージェントからPower Automateフローを呼び出す方法|在庫・単価検索を例に解説

はじめに
この記事では、Copilot Studio で作成したエージェントから Power Automate のフローを呼び出す方法 を解説します。
題材は「ユーザーが商品名を尋ねると、エージェントがフローを呼び出し、Excel の商品マスターから単価と在庫数を取得して回答する」というシンプルな在庫検索ボットです。
入力1つ・出力複数という構成なので、エージェントとフローの間でどう引数を受け渡しするかが分かりやすい題材になっています。

「Copilot Studio のエージェントに、社内のExcelやデータベースを検索させたい」というニーズはとても多いかと思います。その第一歩が、今回紹介する Power Automate フローの呼び出しです。
この記事で作るもの(完成イメージ)
完成すると、チャットで「りんごの在庫は?」と聞くだけで、エージェントが次のように答えてくれるようになります。
| 商品名 | 在庫数 | 単価 |
|---|---|---|
| りんご | 120個 | 150円 |
裏側では、エージェントが質問から「りんご」という商品名だけを抜き出してフローに渡し、フローが Excel を検索して結果を返しています。
事前準備:サンプルのExcelファイル
OneDrive に product-master.xlsx を用意し、「商品マスター」という名前のテーブルを作っておきます。
| 商品名 | 単価 | 在庫数 |
|---|---|---|
| りんご | 150 | 120 |
| バナナ | 80 | 340 |
| みかん | 100 | 75 |
| ぶどう | 300 | 40 |
| いちご | 500 | 18 |
全体の流れ
- エージェントを新規作成する
- エージェントに「ツール」を追加 →「新しいフローを作成」
- 開いた Power Automate でフローを構築・保存
- Copilot Studio に戻り、ツールの入出力を確認
- テストパネルで実際に質問して動作確認
STEP1:エージェントを作成する
Copilot Studio にアクセスします。
エージェントを新規作成します。今回は名前を「在庫案内ボット」にしました。

作成が完了すると、エージェントの概要画面が表示されます。

STEP2:ツールとして Power Automate フローを追加する
エージェントに「ツール」を追加します。ツールとは、エージェントが必要に応じて呼び出せる外部の処理(=今回は Power Automate フロー)のことです。
「ツール」タブから[ツールを追加]を選びます。

[新しいフローを作成]を選択します。

Power Automate が開き、「エージェントがフローを呼び出すとき」トリガーと「エージェントに応答する」アクションがセットになった雛形が自動生成されます。この2つがエージェント連携用フローの必須パーツです。

STEP3:Power Automate でフローを構築する
3-1. トリガーに入力「商品名」を追加
トリガー「エージェントがフローを呼び出すとき」に、入力として 商品名(テキスト) を1つ追加します。これがエージェントからフローへ渡される値になります。

3-2. Excel「行を取得する」アクションを追加
次に Excel Online (Business) の「行を取得する」アクションを追加します。

設定は以下のとおりです。
- ファイル:
/product-master.xlsx - テーブル:商品マスター
- キー列:商品名
- キー値:トリガーの「商品名」

3-3. 「エージェントに応答する」で出力を設定
最後に「エージェントに応答する」アクションで、エージェントへ返す値を設定します。
- 単価 = 行を取得する の「単価」
- 在庫数 = 行を取得する の「在庫数」
- 商品名 = 行を取得する の「商品名」

3-4. 非同期応答を「オフ」にする

なお、フローは 100秒以内 に応答する必要があります。重いクエリや大量データの処理は避けましょう。
3-5. フローを保存
ここまでで3つのアクション(トリガー → 行を取得する → エージェントに応答する)が揃いました。保存します。

STEP4:ツールの入出力を確認する
Copilot Studio に戻ると、作成したフローがツールとして追加されています。

ツールを開き、入力(商品名)と出力(単価・在庫数)が正しく認識されているか確認します。

最大の落とし穴:商品名の抽出設定
このまま使うと、AI がユーザーの発言まるごと(例:「りんごの単価と在庫数を教えてください」)を商品名として渡してしまい、Excel 検索でヒットしません。
これを防ぐため、ツールの入力「商品名」の 追加情報 →「説明」 に、何を抽出すべきかを明記します。
ユーザーの質問から商品名のみを抽出する。例: りんご、バナナ、みかん、ぶどう、いちご
STEP5:テストパネルで動作確認
テストパネルで「りんごの在庫は?」と質問してみます。

エージェントがフローを呼び出します。左側にフローの呼び出し状況(入力=りんご、出力=単価/在庫数/商品名)が表示されます。

フローが Excel を検索し、単価・在庫数を含む回答が返ってきました。

これで、チャットの質問 → フロー呼び出し → Excel検索 → 回答 という一連の流れが完成しました。
【発展】Teamsから呼び出すには?
ここまではテストパネル(Copilot Studio 上)でエージェントを動かしてきました。実運用では Microsoft Teams から呼び出せると便利です。
Copilot Studio の「チャネル」ページを開くと、Teams や Microsoft 365、SharePoint などの接続先が並んでいます。

「Microsoft 365 と Microsoft Teams」を選ぶと、設定ダイアログが表示されます。

[チャネルを追加する]をクリックすると、Teams チャネルが追加されます。

注意:Teamsで実際に使うには「公開」と有償ライセンスが必要
- エージェントの「公開」が必須:チャネルを追加した段階ではエージェントは「未公開」状態です。Teams や Microsoft 365 でほかのユーザーに使ってもらうには、エージェントを公開する必要があります。設定ダイアログ内の[Teams で エージェント を表示する]ボタンも、公開するまで無効のままです。
- 公開には有償ライセンスが必要:試用版(トライアル)環境では、公開しようとすると「現時点で Copilot Studio に公開するためのユーザー ライセンスがありません」というメッセージが表示され、公開できません。Teams 連携を実際に運用するには、Copilot Studio の有償ライセンスを用意してください。
まとめ
Copilot Studio のエージェントから Power Automate フローを呼び出す手順を、在庫・単価検索を例に解説しました。ポイントを振り返ります。
- フローは「エージェントがフローを呼び出すとき」トリガー+「エージェントに応答する」アクションが必須
- 「エージェントに応答する」の非同期応答はオフ(オンだと結果が返らない)
- フローは100秒以内に応答する
- 入力の「説明」に抽出ルール(商品名だけを取り出す等)を明記すると、AI が文章から正しく値を取り出せる
- Teams で実際に使うにはエージェントの公開+有償ライセンスが必要
入力1つ・出力複数のシンプルな例ですが、ここを押さえれば、Excel 以外のデータソースや、もっと複雑なフローへの応用もしやすくなります。ぜひ試してみてください。
本番ライセンス購入前に試したい方は、Copilot Studio 試用版の利用方法とDataverse追加のトラブルシュート も併せてご覧ください。





