Microsoft Copilot Studio ❤️ MCP について
Microsoft Copilot Studio ❤️ MCPは、MCPサーバーのデプロイとMicrosoft Copilot Studioへの追加を学ぶラボガイドです。例のサーバーは、3つのジョークサイトを使った取得ツールをエージェントに提供します。
主な機能
- 01Azure Web Appのデプロイ手順
- 02Power Platform Connectorの作成
- 03MCPサーバーをエージェントのアクションに追加
- 043種類のジョークとChuck Norrisのカテゴリ取得
活用シーン
- 01Copilot Studioでジョークエージェントを構築
- 02Power Platform経由のMCPサーバー接続を学習
- 03ツールによるジョーク取得をテスト
MCP 対応
MCPサーバーをデプロイし、Microsoft Copilot Studioに接続する手順を示します。例のサーバーは、Chuck Norris、Dad、Yo Mamaのジョークを取得するツールを公開します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Microsoft Copilot Studio ❤️ MCP
Microsoft Copilot Studio ❤️ MCP のラボへようこそ。このラボでは、MCP サーバーのデプロイ方法と、Microsoft Copilot Studio への追加方法を学びます。
MCP とは?
Model Context Protocol (MCP) は、Anthropic によって定義された、アプリケーションが LLM にコンテキストを提供する方法を標準化するオープンプロトコルです。MCP を使用すると、AI モデルをさまざまなデータソースやツールに接続するための標準化された方法を利用できます。MCP により、作成者は既存のナレッジサーバーや API を Copilot Studio に直接シームレスに統合できます。
現在、Copilot Studio がサポートしているのはツールのみです。現在の機能の詳細については、aka.ms/mcsmcp をご覧ください。既知の問題と今後の改善予定があります。これらはこちらに記載されています。
MCP とコネクタの比較
MCP はどのような場合に使用しますか?また、コネクタはどのような場合に使用しますか?MCP はコネクタに取って代わるのでしょうか?
MCP サーバーはコネクタのインフラストラクチャを使用して Copilot Studio で利用できるため、これらの質問は実際には当てはまりません。MCP サーバーがコネクタのインフラストラクチャを使用することで、仮想ネットワークの統合、データ損失防止の制御、複数の認証方法などのエンタープライズ向けセキュリティおよびガバナンス制御を利用できます。これらはすべて今回のリリースで利用可能であり、AI を活用したエージェントによるリアルタイムのデータアクセスもサポートします。
つまり、MCP とコネクタは組み合わせて使うとより効果的です。
前提条件
- Azure サブスクリプション(支払い方法が追加済みであること)
- GitHub アカウントを持ち、ログインしていること
- Copilot Studio の試用版または開発者アカウント
- Power Platform 環境がプロビジョニング済みであること
ラボ
この MCP サーバーをデプロイして Microsoft Copilot Studio で使用するには、次の操作を行う必要があります。
- テンプレートを基に新しい GitHub リポジトリを作成する
- Azure Web App をデプロイする
- Power Platform コネクタを作成する
- Microsoft Copilot Studio で MCP サーバーをアクションとして追加する
テンプレートを基に新しい GitHub リポジトリを作成する
-
Use this templateを選択します -
Create a new repositoryを選択します
-
適切な
Ownerを選択します -
Repository nameを入力します -
必要に応じて
Descriptionを入力します -
Privateを選択します -
Create repositoryを選択します完了まで少し時間がかかります。完了すると、新しく作成されたリポジトリに移動します。
警告
このラボの手順を完了すると、Azure 上で一般公開される MCP サーバーが稼働します。これは望ましい状態ではありません。ラボを終えたら、必ず Azure Web App を削除してください。
Azure Web App をデプロイする
-
portal.azure.comにアクセスします。
-
Resource groupsタブにカーソルを合わせて、Createを選択します。
-
Subscriptionのドロップダウンをクリックし、一覧からサブスクリプションを選択します。
-
Resource groupの名前入力ボックスをクリックし、「jokesgrp」などのリソースグループ名を入力します。
-
Regionのドロップダウンを選択し、最寄りのリージョンを選びます。
-
Review + createをクリックします。
-
Createをクリックします。
-
Go to resource groupを選択します。
-
Createを選択します。
-
search boxをクリックします。
-
web appと入力します。 -
Web App の検索結果にある
Create buttonを選択します。
-
Web Appを選択します。
-
Nameの入力欄を選択し、「wegotjokes」などの Web App の名前を入力します。
-
Runtime stackのドロップダウンを選択し、Node 22 LTSを選びます。
-
Regionのドロップダウンを選択し、最寄りのリージョンを選びます。
-
Review + createをクリックします。
-
Createをクリックします。
-
Refreshをクリックして、デプロイの進行状況を更新します。
-
デプロイが完了したら、
Go to resourceを選択します。
-
Deploymentタブを展開します。
-
Deployment Centerをクリックします。
-
Sourceのドロップダウンをクリックし、GitHubを選択します。
-
Authorizeを選択します。
-
Continueを選択します。
-
Authorize AzureAppServiceを選択します。
-
Organizationのドロップダウンをクリックし、自分の組織を選択します。
-
Repositoryのドロップダウンをクリックし、一覧から先ほど作成した GitHub リポジトリを選択します。
-
Branchのドロップダウンをクリックし、自分のブランチを選択します。
-
それ以外はすべて既定のままにして、
Saveを選択します。
-
Refreshをクリックして、デプロイの状態を更新します。
-
デプロイが完了したことを確認します。

Power Platform コネクタを作成する
-
https://make.powerapps.com/ に移動します
-
左側のメニューで
Moreを選択します -
Discover allボタンを選択します -
Data の下にある
Custom connectorsの横のpin iconを選択して、左側のメニューにピン留めします -
左側のメニューで
Custom connectorsを選択します -
New custom connectorを選択します -
Create from blankを選択します
-
コネクタに名前を付けます(例:
JokesMCP) -
青い
Continueボタンを選択します -
Swagger editorの切り替えボタンを選択します
-
こちら から yaml コードをコピーし、Swagger エディター内のコードを置き換えます
-
Swagger エディターで、
dummyurl.azurewebsites.netを先ほど作成した Web アプリの URL に置き換えます(デプロイ手順)。https://とazurewebsites.net以降のすべてを必ず削除してください -
Create connectorを選択してコネクタを作成します
Microsoft Copilot Studio で MCP サーバーをアクションとして追加する
これで Azure で MCP サーバーが稼働し、Power Platform でコネクタを使用できるようになりました。この手順では、Microsoft Copilot Studio でエージェントを作成し、MCP サーバーをエージェントに追加します。
-
右上の環境選択メニューを選択します
-
適切な環境を選択します
-
左側のナビゲーションで
Createを選択します -
青い
New agentボタンを選択します
-
右上の
Skip to configureを選択します
-
名前を
Jokesterに変更します -
以下の
Descriptionを追加しますユーザーからのリクエストに応じてのみ、簡潔で魅力的なジョークを届ける、ユーモアを重視したエージェントです。ユーザーの口調や好みに合わせてスタイルを調整します。キャラクターを保ち、同じジョークの繰り返しを避け、不適切な内容を除外することで、常に適切で機知に富んだ体験を提供します。 -
以下の
Instructionsを追加しますあなたはジョークを披露するアシスタントです。あなたの唯一の目的は、リクエストに応じて、適切で気の利いた、魅力的なジョークを届けることです。次のルールに従ってください: * ユーザーがジョークや関連する内容(例:「何か面白いことを話して」)を求めた場合にのみ応答します。 * 入力に基づいて、ユーザーの口調やユーモアの好みに合わせます。クリーン、ブラック、ドライ、ダジャレ、親父ギャグなどに対応します。 * キャラクターを崩したり、ユーモアと関係のない情報を提供したりしてはいけません。 * ジョークは簡潔にし、分かりやすく書式を整えます。 * 攻撃的、差別的、または NSFW な内容は避けます。 * ユーモアの好みが分からない場合は、気の利いた、誰にでも受け入れられるジョークを選びます。 * 同じセッション内でジョークを繰り返してはいけません。 * 明示的に求められない限り、ジョークの解説は避けます。 * 反応よく、機知に富み、素早く応答します。 -
右上の
Createを選択します
-
生成 AI の
Orchestrationを有効にします
-
Knowledgeセクションで一般知識を無効にします
-
上部のメニューで
Actionsを選択します
-
Add an actionを選択します
-
先ほど作成したコネクタの名前(この例では
jokes)を検索します(下のスクリーンショットの番号 1 を参照) -
Jokes MCP serverを選択します(下のスクリーンショットの番号 2 を参照)
-
接続が作成されるまで待ち、完了したら
Nextを選択します
-
Description for the agent to know when to use this actionを次のテキストに変更します:ユーザーがジョークを求めたときに、このアクションを実行します。Chuck Norris のジョーク、親父ギャグ、「お前の母ちゃん」ジョークを提供できます。残りは既定のままにします。たとえば、エンドユーザー認証については、まもなく詳しく説明します。
-
Add actionを選択して、アクションをエージェントに追加します
-
Test your agentペインでrefresh iconを選択します
-
Test your agentペインで次のメッセージを送信します。Can I get a Chuck Norris joke?このアクションを実行するには追加のアクセス許可が必要であることを示すメッセージが表示されます。これは、アクションウィザードでユーザー認証を設定したためです。
-
Connectを選択します
新しいウィンドウが開き、このエージェントの接続を管理できます。
-
JokesMCPの横にあるConnectを選択します
-
接続が作成されるまで待ち、
Submitを選択します
-
接続が完了し、状態が
Connectedに設定されていることを確認します
-
ブラウザーで接続管理のタブを閉じます
これで、Jokester エージェントの画面に戻ります。
-
Test your agentペインでrefresh iconを選択します
-
Test your agentペインで次のメッセージを送信します。Can I get a Chuck Norris joke?今度は追加のアクセス許可ではなく、チャック・ノリスのジョークが表示されます。

-
Test your agentペインで次のメッセージを送信します。Can I get a Dad joke?今度はダジャレが表示されます。

-
Test your agentペインで次のメッセージを送信します。Can I get a Yo Mama joke?今度は「Yo Mama」ジョークが表示されます。

これで、Microsoft Copilot Studio で Jokes MCP Server が動作しました。ラボはこれで終了です!ラボを楽しんでいただけたなら幸いです。フィードバックフォームへの記入にご協力ください。
Jokes MCP Server の詳細
これは、TypeScript SDK を基盤として構築された MCP サーバーです。
この MCP サーバーを使うと、次のウェブサイトからジョークを取得できます。
サーバーをローカルで実行する場合は、リポジトリのルートで npm install を実行してください。
その後、npm run build を実行してサーバーをビルドし、npm start を実行してサーバーを起動できます。
ツール
次のツールが含まれています。
get-chuck-joke
このツールは、chucknorris.io からランダムなチャック・ノリスのジョークを取得します。
get-chuck-categories
このツールは、chucknorris.io から利用可能なカテゴリーを取得します。
get-dad-joke
このツールは、icanhazdadjoke.com からランダムなダジャレを取得します。
get-yo-mama-joke
このツールは、yomama-jokes.com からランダムな「Yo Mama」ジョークを取得します。
既知の問題と今後の改善予定
Microsoft Copilot Studio の MCP には、既知の問題と今後の改善予定があります。こちらの Microsoft Learn の記事に一覧が記載されています。
コントリビューション
このプロジェクトでは、コントリビューションと提案を歓迎します。ほとんどのコントリビューションでは、自身のコントリビューションを使用する権利を当社に付与する権利を有しており、実際にその権利を付与することを宣言するコントリビューター ライセンス契約(CLA)への同意が必要です。詳細については、https://cla.opensource.microsoft.com をご覧ください。
プルリクエストを送信すると、CLA ボットが CLA の提出が必要かどうかを自動的に判定し、適切な対応(ステータスチェックやコメントなど)を行います。ボットの指示に従ってください。当社の CLA を使用するすべてのリポジトリで、これを行う必要があるのは一度だけです。
このプロジェクトでは、Microsoft オープンソース行動規範を採用しています。詳細については、行動規範に関する FAQをご覧いただくか、ご質問やご意見がありましたら [email protected] までお問い合わせください。
商標
このプロジェクトには、プロジェクト、製品、サービスの商標またはロゴが含まれている場合があります。Microsoft の商標またはロゴを許可を得て使用する場合は、Microsoft の商標およびブランドに関するガイドラインに従う必要があります。このプロジェクトの変更版で Microsoft の商標またはロゴを使用する場合、混乱を招いたり、Microsoft の後援を受けていると誤解させたりしてはなりません。第三者の商標またはロゴを使用する場合は、それぞれの第三者のポリシーに従う必要があります。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。