このガイドでは、Microsoft 365 エージェント ツールキットを使用して MCP サーバーをプラグインとして追加することで、サービスを Microsoft 365 Copilot の宣言型エージェントと統合する方法について説明します。 これらの手順に従うことで、ビジネス ユーザーの MCP に公開されているサービスへの AI を利用した会話型アクセスが可能になります。
このチュートリアルでは、例として GitHub MCP サーバー を使用します。 GitHub MCP サーバーは、GitHub によって提供および管理されるリモート MCP サーバーであり、リポジトリ、問題、プル リクエスト、その他の GitHub 機能を操作するためのツールを公開します。 ここでは、自然言語プロンプトから GitHub リポジトリとユーザーを検索できるエージェントを構築するために使用します。 独自の MCP サーバーでも同じ手順に従うことができます。
認証用のOAuthクライアントの作成、エージェントの作成、エージェントの公開とサイドロード、エージェントの使用の4つのステップでプラグインを構築して使用します。
前提条件
開始する前に、次の前提条件があることを確認してください。
- Copilot 拡張性オプションの要件で指定されている要件
- Visual Studio Code
- Microsoft 365 Agents Toolkit バージョン 6.12.0 以降
このチュートリアルの GitHub の例を完了するには、 GitHub アカウントも必要です。 独自の MCP サーバーからプラグインをビルドするために、GitHub アカウントは必要ありません。
手順 1: 認証用の OAuth クライアントを作成する
GitHub MCP サーバーでは、データを返す前に各ユーザーにサインインする必要があるため、プラグインには OAuth クライアントが必要です。 このガイドでは、 OAuth (静的登録あり) を使用します。 エージェントを作成してこの認証タイプを選択すると、エージェント・ツールキットはすぐにこれらの値の入力を求めるので、最初にクライアントを作成します。 その後、Copilot は登録を使用して、エージェントが MCP サーバーを呼び出すたびに、サインインしているユーザーに代わってアクセス トークンを取得します。
ヒント
MCP サーバーが OAuth 2.0 動的クライアント登録 (DCR) をサポートしている場合は、このセクションをスキップできます。 エージェントを作成するときは、認証の種類として [OAuth (動的登録あり)] を選択します。 MCP サーバーは実行時にクライアントを登録するため、クライアント ID またはシークレットは必要ありません。 Agents Toolkit は、プラグイン マニフェストに登録を書き込みます。
OAuth クライアントを作成するには:
ブラウザーで https://github.com/settings/developers に移動します。 [OAuth Apps>New OAuth App] を選択します。
アプリの名前とホームページ URL を追加し、
https://teams.microsoft.com/api/platform/v1.0/oAuthRedirectを 認証コールバック URL として設定します。 [ アプリケーションの登録] を選択します。アプリが作成されたら、[ 新しいクライアント シークレットの生成] を選択します。 エージェントの作成時に入力するシークレットと クライアント ID をコピーします。
注:
これらの手順は GitHub に固有です。 独自の MCP サーバー用に、サーバーで使用されている ID プロバイダーを使用して OAuth クライアントを作成し、リダイレクト (コールバック) URL として https://teams.microsoft.com/api/platform/v1.0/oAuthRedirect を設定します。 エージェントを作成し、[ OAuth (静的登録あり)] を選択すると、Agents Toolkit はクライアント ID、クライアント シークレット、およびオプションのスコープの入力を求めます。 MCP サーバーが動的クライアント登録 (DCR) をサポートしている場合は、代わりに OAuth (動的登録あり) を選択できます。MCP サーバーは実行時にクライアントを登録します。手動のクライアント作成、クライアント ID、シークレットは必要ありません。 MCP サーバーで OAuth ではなく Microsoft Entra シングル サインオン (SSO) を使用している場合は、[Entra SSO] を選択すると、代わりに Microsoft Entra アプリ クライアント ID の入力を求めるプロンプトが Agents Toolkit に表示されます。 いずれの場合も、Agents Toolkit はプラグイン マニフェストを自動的に更新します。 各オプションの詳細については、「 エージェントでの MCP および API プラグインの認証の構成」を参照してください。
手順 2: エージェントを作成する
エージェントを作成するには:
Visual Studio Code を開き、アクティビティ バーの Microsoft 365 Agents Toolkit アイコンを選択します。
[エージェント ツールキット] 作業ウィンドウで [ 新しいエージェント/アプリの作成 ] を選択します。
宣言型エージェントを選択します。
[ アクションの追加] を選択してから、[ MCP サーバーで開始する] を選択します。
GitHub MCP サーバー URL
https://api.githubcopilot.com/mcp/を入力します。
認証の種類を選択します。 この演習では、[ OAuth (静的登録あり)] を選択します。
プロンプトが表示されたら、登録した OAuth アプリから クライアント ID を入力し、 次にクライアント シークレットを入力します。
スコープの入力を求められたら、 Enter キーを押して続行します。
エージェント プロジェクトの場所を選択します。
エージェントの名前を入力します。
これらの手順を完了すると、エージェント ツールキットによってエージェントに必要なファイルが生成され、エージェント プロジェクトがロードされた新しい Visual Studio Code ウィンドウが開きます。
Agents Toolkit は、生成されたプラグイン マニフェスト (ai-plugin.json) を動 的ツール検出用に構成するため、エージェントは MCP サーバーのツール (UI ウィジェット (MCP アプリ) を返すツールを含む) を実行時に解決し、ツールを手動で追加することはありません。 代わりに、固定されキュレーションされたツール セットをピン留めするには、「 エージェント ツールキットを使用してピン留めされたツールを構成する」を参照してください。
手順 3: エージェントを公開してサイドロードする
エージェントを公開してサイドロードするには:
エージェント ツールキットの [アカウント ] ウィンドウで、[ Microsoft 365 にサインイン] を選択します。 (すでにサインインしている場合は、次の手順に進みます)。
Microsoft 365 アカウントの下に、[ カスタム アプリのアップロードが有効] と [Copilot アクセスが有効] の両方が表示されていることを確認します。 そうでない場合は、organization 管理者にチェックしてください。詳細については、「Copilot 拡張性オプションの要件」を参照してください。
[ ライフサイクル ] ウィンドウで、[ プロビジョニング] を選択します。
ダイアログ ボックスのメッセージを読み、[ 確認 ] を選択して続行します。
プロビジョニングが完了したことをツールキットから報告されるまで待ちます。
注:
Work IQ Dev Tools (プレビュー) — wiqd CLI を使用してコマンド ラインからパッケージ化してサイドロード ループを実行することもできます。 wiqd agent package はアプリ パッケージをビルドし、テスト用にテナントにデプロイ wiqd agent provision --env local 。 このチュートリアルのようなリモート MCP サーバーをアプリ パッケージ内のコネクタとして登録するには、インターフェイスが変更される可能性のあるアルファ コマンドである wiqd plugin add connector を使用します。 詳細については、 Work IQ 開発ツールのドキュメントを参照してください。
手順 4: エージェントを使用する
エージェントを使用するには:
ブラウザーで [ https://m365.cloud.microsoft/chat] に移動します。
サイドバーの [エージェント ] セクションで、エージェントを見つけます。 「 手順 2: エージェントを作成する」で指定した名前として表示され、最後に
devが追加されます。 エージェントを選択します。リポジトリまたはユーザーの検索をエージェントに依頼します。 たとえば、「
can you find a repo for kiota?」のように入力します。プロンプトが表示されたら、[ {agent-name} にサインインする] を選択します。 ポップアップ ウィンドウで、GitHub アカウントでサインインし、エージェントを承認します。
ポップアップ ウィンドウが閉じると、エージェントは応答を返します。
エージェントが呼び出すツールが UI ウィジェット (MCP アプリ) を返した場合は、エージェントが応答でウィジェットをインラインでレンダリングすることを確認します。 詳細については、「Microsoft 365 Copilot の宣言型エージェントに MCP アプリを追加する」を参照してください。