MoreBeerMorePower

Power Platform中心だけど、ノーコード/ローコード系を書いてます。

【CopilotStudio】Microsoft Learn MCPサーバーにカスタムコネクターで接続

最近なんだかよく聞く MCP という単語。 Model Context Protocol ですが、非常に雑に言えばAIと外部サービスが会話するための通信手段のようなものです。

少し前に、Microsoft Docs (Learn) のMCPサーバーが公開されました。検索性が悪いとか、目的の情報にたどり着きにくいとか、いろいろ言われることの多いDocsですが、これによってMicrosoftの公式ドキュメント類にAIから自然な人間語で検索をかけることが可能になります。

今回は Copilot Studio から、カスタムコネクターを利用して Microsoft DocsのMCPサーバーに接続する方法をご紹介します。

Copilot Studioでのカスタムコネクター追加

MCPサーバーに限らず、Power AppsやAutomateと同様、Copilot Studioでもカスタムコネクターを利用して標準コネクターにはないサービスに接続・データを取得することができます。

Copilot Studioの画面からカスタムコネクターを追加するには、画面左のメニューの「ツール」で「新しいツール」、「カスタムコネクター」の順に選択します。 この際、Model Context Protocolを選ばないように気を付けてください。

新しいタブで Power Appsのカスタムコネクター追加画面が表示されます。

「カスタムコネクタの新規作成」をクリックすると作成方法に関するメニューが表示されるので、ここで「OpenAPIファイルをインポートします」を選びます。

コネクター名は適当なもので構いません。OpenAPIファイルとしては以下のyamlを xxxx.yamlの拡張子で保存し、インポートを行います。

swagger: '2.0'
info:
  title: Microsoft Docs
  description: Microsoft DocsのMCPサーバーに接続します。Copilot Studio用
  version: 1.0.0
host: learn.microsoft.com
basePath: /api
schemes:
  - https
paths:
  /mcp:
    post:
      summary: Microsoft Docs MCP Server
      x-ms-agentic-protocol: mcp-streamable-1.0
      operationId: InvokeMCP
      responses:
        '200':
          description: Success

必要に応じてアイコンなど変更したら作成完了です。

これで Copilot Studioで利用可能なカスタムコネクターが追加されました。

Copilot Studio でカスタムコネクターを利用する

では今追加したカスタムコネクターを利用して、Microsoft Docsから情報を探してきてくれるエージェントを作成してみましょう。

エージェントへの指示はそこまでこだわる必要はないかと思います。

ここでは、「ユーザーから検索キーワード取得してね」「キーワードをツールに渡して実行してね」「結果を表示してね」くらいです。

画面中ほどにスクロールして、ツールのセクションから、新しいツールの追加を行います。

面白いことに、ここで選ぶのは「Model Context Protocol」のカテゴリーなんです。これを選ぶと、先ほど追加したカスタムコネクターが選択肢に現れます。

コネクターを選択したら、「エージェントに追加」します。正常に追加されると、ツールのところに「Microsoft Docs MCP Server」(カスタムコネクターの名前)が表示されます。

このコネクター名をクリックして詳細を確認すると、このツールのツールとして(?)microsoft_docs_search が登録されていることがわかります。

あとはエージェントを保存して、ツールを使う際のお約束「接続の管理」を行います。

接続が追加されたらエージェントに戻ってテストを行いましょう。

すごくあいまいな日本語で知りたいことを書いただけなのに、キレイに日本語訳までして結果を表示してくれました!

しかもリファレンスになるURLまでついてます。

これはなかなか。ソースがDocs内に限定されますし、それをDocs語ではなく比較的平易な言葉で返してくれるので読みやすいですね。

(ちょっと見づらいですが、MCPサーバーからの応答(JSONの中)とエージェントの返したコンテンツが一致していることもわかります。

おわり

今回は先日公開されたMicrosoft Docs公式のMCPサーバーを利用して、Copilot Studioにカスタムコネクターを追加する方法をご紹介しました。

社内の学習用としてTeamsやM365のCopilotで利用可能にするとハッピーになれるんじゃないかなと思います。

ぜひ試してみてください。

参考情報:

github.com

learn.microsoft.com