7
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Microsoftの公式ドキュメントに基づいた回答を生成してくれるCopilotエージェントを作ってみた

7
Last updated at Posted at 2025-07-22

こんにちは!
「Microsoft Copilotが、Microsoftの公式ドキュメントを基に質問に答えてくれたら便利なのにな」と思ったことはありませんか?
今回は、Microsoft Copilot StudioとMicrosoft Learn Docs MCP Serverを使って、Microsoftの公式ドキュメントから最新情報を取得し、それをもとに回答を返してくれるCopilotエージェントを作ってみました。

2025/09/08追記
Copilot Studio(専用ポータルからアクセスする)を利用しているため、別途メッセージングライセンスが必要となります。作成したエージェントを実稼働するとメッセージを消費し、ランニングコストが別途発生するためご注意ください。

  • Microsoft 365 Copilotライセンスだけでは利用不可
  • Power Virtual Agentsの「メッセージングライセンス」が必要
  • テナント単位での課金となる

Microsoft Learn Docs MCP Serverとは?

AIが自然言語での問い合わせに対して、Microsoftの公式ドキュメントに基づいた回答を生成できるようになるクラウド型のMCPサーバです。

主な機能

  • Microsoft 公式ドキュメントがソース
    Microsoft Learn、Azure、Microsoft 365などの公式ドキュメントから、関連性の高い情報を探して取得できます。

  • セマンティック検索
    単語だけでなく、質問の「意味」や「文脈」を理解して、最も関連性の高い情報を見つける検索技術(ベクトル検索)を使っています。

  • 効率的な情報の取り出し
    1回の検索で、最大10個までのコンテンツ(それぞれ最大500トークン)をMarkdown形式で返します。各情報には、記事のタイトル・URL・内容の抜粋が含まれます。

  • リアルタイム更新
    最新の情報が取得できます。

セマンティック検索は、単にキーワードが一致する文章を探すのではなく、「言葉の意味」を理解して、より関連性の高い情報を探してくれる検索技術です。

例えば、「Azureで仮想マシンを作成する方法は?」と質問したとき、「仮想マシン」という言葉が含まれていない「VMのデプロイ方法」といったページでも、内容が意味的に近ければ、検索結果として表示されるようになります。

2025年7月12日時点ではパブリックプレビューとなっています。

前提条件

以下のサービスを利用しました。ライセンスについては省略します。

  • Microsoft 365 Copilot(企業向け)
  • Microsoft Copilot Studio
  • Microsoft Learn Docs MCP Server

作成手順

エージェントの作成

  1. Microsoft Copilot Studioを開く
  2. 画面左の「エージェント」→「+新しいエージェント」→「作成」→「設定」の順に進む
  3. 設定画面のオーケストレーションで「はい、利用できるツールやナレッジを適宜使用し、応答を動的にします。」が選択されていることを確認する
    image.png
  4. 設定画面のナレッジで「一般的なナレッジを使用する」を「オフ」にする
    image.png
  5. 「保存」→「×」で戻る
  6. 概要画面の詳細で「編集」からエージェントの「名前」を適宜修正して「保存」する
    image.png

カスタムコネクタの作成

以下のサイトを参考に、Microsoft Learn Docs MCP Serverを参照するカスタムコネクタを作成します。

  1. 概要画面のツールで「+ツールを追加する」を選択する
    image.png

  2. ツールの追加画面で「+新しいツール」を選択する
    image.png

  3. ツールの追加画面で「カスタムコネクタ」を選択する
    image.png

  4. カスタムコネクタ画面で「+カスタムコネクタの新規作成」から「OpenAPI ファイルをインポートします」を選択する
    image.png

  5. テキストエディタでMicrosoft Learn Docs MCP Server用のOpenAPIスキーマファイルを作成し、yaml形式で保存する

    swagger: '2.0'
    info:
      title: Microsoft Learn Docs MCP Server
      description: Microsoft Learn Docs MCP Server は、GitHub Copilot などの AI エージェントなどのクライアントが Microsoft の公式ドキュメントから信頼できる最新情報を直接取得できるようにするクラウドホスト型サービスです。
      version: 1.0.0
    host: learn.microsoft.com
    basePath: /api
    schemes:
      - https
    paths:
      /mcp:
        post:
          summary: Microsoft Learn Docs MCP Server
          x-ms-agentic-protocol: mcp-streamable-1.0
          operationId: InvokeMCP
          responses:
            '200':
              description: Success
    
    
  6. インポート画面で「コネクタ名」を適宜入力し、作成したMicrosoft Learn Docs MCP Server用のOpenAPIスキーマファイルをインポートする
    image.png

  7. カスタム コネクタ作成画面で「✓コネクタの作成」→「×閉じる」を選択する

  8. Copilot Studioのツールの追加画面に戻って「更新」を選択する
    image.png

  9. 「モデルコンテキストプロトコル」でフィルターをかけて、作成したカスタムコネクタを選択する
    image.png
    image.png

  10. 「新しい接続を作成する」を選択する
    image.png

  11. 「作成」を選択する

  12. 「エージェントに追加する」を選択する

  13. ツールにMicrosoft Learn Docs MCP Serverが追加される
    image.png

エージェントのテスト

作成したエージェントをテストしてみます。
画面右上の「テスト」を選択し、「活動マップ」アイコンを選択します。
image.png

試しに、Microsoft Learn Docs MCP Serverの例題のプロンプトを入力してみます。
例題にはMicrosoftドキュメントを検索してください。というフレーズを入力するように書かれていますが、「一般的なナレッジを使用する」も「Web検索」も「オフ」にしており、カスタムコネクタ以外のソースがないため、特に不要です。

  • Azure CLI コマンドを生成する
    マネージド ID を持つ Azure コンテナー アプリを作成するための Azure CLI コマンドを教えてください。
  • 正しい .NET コードを取得する
    .NET8のミニマル APIで IHttpClientFactory を実装する方法はこれで間違いないですか?
  • 事実に関するQ&A
    gpt-4.1-miniはEUリージョンで利用できますか?

初回実行時は資格情報を検証してくださいと表示されるため、「接続マネージャーを開く」から、接続してください。

Microsoft Learn Docs MCP Serverのmicrosoft_docs_searchを使って、公式ドキュメントを基にした回答が返ってきました。末尾には公式ドキュメントのリンクも含まれていますね。(ただし、英語版になるようです)
image.png

image.png

image.png

エージェントの公開

作成したエージェントを自身のMicrosoft Copilotから使えるようにします。

  1. 「チャネル」を開く
    image.png

  2. 「公開」を選択する
    image.png
    image.png

  3. 公開しましたと表示される

  4. Microsoftのチャネルの「Teams と Microsoft 365 Copilot」を選択する
    image.png

  5. 「チャネルを追加する」を選択する
    image.png

  6. 「Microsoft 365 で エージェント を表示する」を選択する
    image.png

  7. 「追加」を選択する
    image.png

追加されない場合は、再度公開してから追加すると成功することがあります。

実際に使ってみる

「Microsoft Copilot」を開くと、作成したエージェント「Microsoft Lean Docs」がエージェント一覧に追加されています。
image.png

色々問い合わせてみます。

  • Azure Load Balancerのルーティングアルゴリズムは?

image.png

  • Azure Firewallのスループットは?

image.png

  • Azure PowerShellでAzure Firewallを停止したい

image.png

初回実行時は資格情報を検証してくださいと表示されるため、「接続マネージャーを開く」から、接続してください。

共有設定

作成したエージェントを他の人に共有してみます。

エージェントの共有設定

  1. Microsoft Copilot Studioを開く
  2. 画面左の「エージェント」→作成したエージェントの名前の右横のオプション「…」→「共有する」を選択する
  3. エージェントの共有画面で共有するユーザもしくはグループを入力する
  4. 「共有」を選択し、閲覧者として共有する
    image.png

接続の共有設定

  1. Power Automateを開く
  2. 画面左の「接続」→作成した接続の名前の右横のその他のコマンド「…」→「共有」を選択する
  3. 接続の共有画面で共有するユーザもしくはグループを入力する
  4. 権限で「使用と共有が可能」を選択し、「保存」を選択する
    image.png

少しわかりづらいのですが、カスタムコネクターではなく接続を共有します。

リンクの共有

  1. Microsoft Copilot Studioを開く
  2. 画面左の「エージェント」→作成したエージェントを選択
  3. 画面上部の「チャネル」を開く
  4. Microsoftのチャネルの「Teams と Microsoft 365 Copilot」を選択する
  5. 「Microsoft 365でエージェントを表示する」を選択する
  6. 「リンク」アイコンを選択し、リンクをクリップボードにコピーする
    image.png
  7. コピーしたリンクを他の人に共有する

まとめ

Microsoft Copilot StudioとMicrosoft Learn Docs MCP Serverを組み合わせることで、Microsoft公式ドキュメントを根拠にした回答を返すCopilotエージェントを、ノーコードで作成できました。

実際に試してみたところ、業務効率化に十分活用できそうだと感じています。

エージェント活用メリット

  • 問い合わせ対応の効率化
  • AzureやMicrosoft 365に関する技術的な課題のトラブルシューティング
  • .NETやAzure CLIのコード例・構文提示による開発支援
  • Microsoft公式ドキュメントへのリンク添付による情報の信頼性確保

とはいえ、現時点では前提条件を無視して回答してしまうこともあるため、正確性が求められる場面ではリンク先のドキュメントも自分で確認しておくと安心です。将来的にエージェントの精度がもっと向上すれば、そうした確認も不要になっていくかもしれません。

今回はセットアップ手順を中心に紹介しましたが、今後はエージェントのルール設定や推奨プロンプトの活用なども試して、より実践的な使い方を探っていきたいと思います。

Copilotをうまく活用しながら、これからも業務の効率化をどんどん進めていきたいですね!

We Are Hiring!

7
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?