Power BI MCPサーバーをCopilot Studioで使う方法!~アプリ登録から接続までの設定手順~
以前の記事では、有償Fabric容量(F SKU)なしでPower BIデータをAI活用する3つの方式を比較しました。
その中で、コスト面で最も優れていた構成が「①Copilot Studio × Power BI MCP」でしたが、この構成は、Microsoft Entra IDでのアプリ登録が必要になります。
本記事では、Copilot Studioで、Power BI MCPサーバーに接続する設定手順を詳しく解説します。
- Power BI MCPサーバー(リモート)をCopilot Studioに接続するための全手順
- Entra IDでのアプリ登録・APIアクセス許可・リダイレクトURI設定の具体的な内容
- 接続でつまずきやすいポイントと対処法
※2026年8月時点の情報で、仕様は変更される可能性があります。導入時は必ずMicrosoft Learnの最新情報をご確認ください。
Power BI MCPサーバー(リモート)とは
Power BI MCPサーバー(リモート)は、AIエージェントが自然言語でPower BIのセマンティックモデルと対話できるようにする、Microsoftがホストするエンドポイントです。
MCP(Model Context Protocol)に準拠しており、Copilot StudioやVisual Studio Codeなど、MCPクライアントとなるツールから共通の方法で接続できます。
接続先のエンドポイントURLは以下になります。
https://api.fabric.microsoft.com/v1/mcp/powerbi
エージェントに提供されるツールは次の4つです(Microsoft Learn: Power BI MCP server (remote) toolsより)。
| ツール | できること |
|---|---|
| Execute Query | セマンティックモデルに対してDAXクエリを実行し、結果を返す |
| Get Semantic Model Schema | セマンティックモデルのメタデータ(テーブル・列・メジャー・リレーションシップ等)を取得 |
| Get Report Metadata | レポートのスキーマ(ページ・ビジュアル・フィルター等)を取得 |
| Generate Query | Copilot in Power BIのエンジンで、自然言語からDAXクエリを生成 |
※Power BIのCopilot(F SKUが必要)なしでも、Generate Query以外の3ツールは使えます。
Generate Queryは使えませんが、Copilot Studio側のAIモデルが、自分でDAXを組み立ててExecute Queryに渡すことで、メタデータ参照→DAX生成→実行→結果を見て次のクエリ、という反復分析が成立します。
前提条件
設定を始める前に、以下を確認してください。
- Power BI Pro以上のライセンス
対象のセマンティックモデルにアクセスできること - Copilot Studioが利用できるライセンス
- テナント設定の変更権限
Power BI管理者。自分で変更できない場合は管理者への依頼が必要 - Entra IDでアプリを登録できる権限
こちらも、権限がない場合は、テナント管理者への依頼が必要
組織によっては、アプリ登録が管理者にしか許可されていないケースが多いと思います。
アプリ登録ができない現場では、前回記事の「③Copilot Studio × 動的DAXクエリ実行(ワークフロー)」構成が可能なので、そちらもご検討ください。
設定方法
手順は大きく6ステップです。
- Power BI管理ポータルでテナント設定を有効化する
- Entra IDでアプリを登録する(クライアントID・シークレットの取得)
- アプリにPower BIのAPIアクセス許可を追加する
- Copilot Studioのツールから、Power BI MCPを追加する
- ウィザードに表示されたコールバックURLを、Entraアプリのリダイレクト URIに登録する
- 接続を作成し、エージェントにツールを追加する
「Copilot Studioでウィザードを進める→表示されたURLをEntraに戻って登録する」という行き来が発生します。
Step 1: テナント設定の有効化
Power BI管理者が、Power BI(Fabric)管理ポータルで以下のテナント設定を有効にします。
「ユーザーは Power BI Model Context Protocol サーバー エンドポイントを使用できます (プレビュー)」

Power BIの「管理ポータル」>「テナント設定」から、「MCP」で検索するとすぐ見つかります。
組織全体で有効にするか、特定のセキュリティグループに限定するかを選択できます。
Step 2: Entra IDでアプリを登録する
次に、Copilot StudioがPower BI MCPサーバーへの認証に使うアプリを、Entra IDに登録します。
- Microsoft Azureにサインインします。
- アプリの登録 → 新規登録を選択します。
- 名前には分かりやすいものを入力します(例:
Power BI MCP - Copilot Studio)。 - サポートされているアカウントの種類は「この組織ディレクトリのみに含まれるアカウント(シングルテナント)」を選択します。
- リダイレクトURIは空のまま、「登録」を選択します(Step 5で設定します)。

登録が完了したら、概要ページで以下をメモしておきます。
- アプリケーション(クライアント)ID
- ディレクトリ(テナント)ID
続けて、クライアントシークレットを作成します。
- アプリの証明書とシークレット → 新しいクライアント シークレットを選択します。
- 説明と有効期限を設定し、作成します。
- 作成直後に表示される「値」をコピーして安全に保管します。この値は後から再表示できません。

※Copilot StudioのOAuth 2.0(手動)設定では、クライアントシークレットが必要になるため、ここで作成しておきます。
Step 3: Power BIのAPIアクセス許可を追加する
Power BI MCPサーバーは、サインインしたユーザーの代理でPower BI REST APIを呼び出すため、委任されたアクセス許可をアプリに追加します。
- アプリのAPIのアクセス許可 → アクセス許可の追加を選択します。
- Power BI Serviceを選択します。
- 委任されたアクセス許可を選択し、以下の3つを追加します。
| スコープ | 内容 |
|---|---|
Dataset.Read.All | ユーザーがアクセスできるセマンティックモデルの読み取り |
Workspace.Read.All | ユーザーがアクセスできるワークスペースの読み取り |
| Report.Read.All | ユーザーがアクセスできるレポートの読み取り |

テナントの設定で管理者の同意が必要な場合は、「(テナント名)に管理者の同意を与えます」も実行しておきます。
同意していない場合は、初回サインイン時にユーザーへ同意画面が表示されます。
Step 4: Copilot StudioでMCPツールを追加する
ここからCopilot Studio側の作業で、エージェントにMCPサーバーをツールとして追加します。


- Copilot Studioで対象のエージェントを開き、ツールページに移動します。
- ツールの追加 → +新しいツール → モデル コンテキスト プロトコルを選択します。MCPオンボーディングウィザードが表示されます。
- 基本情報を入力します。
| 項目 | 設定値 |
|---|---|
| サーバー名 | 例: Power BI MCP |
| サーバーの説明 | 例: Power BIセマンティックモデルのメタデータ取得とDAXクエリ実行を行う |
| サーバーのURL | https://api.fabric.microsoft.com/v1/mcp/powerbi |
| 認証 | OAuth 2.0 |
サーバーの説明は、エージェントのオーケストレーターが「このツールを呼ぶかどうか」を判断する材料になるため、簡潔かつ具体的に書いておきます。
続けて、OAuth 2.0の種類で「手動」を選択し、以下を入力します。
{テナントID}には、Step 2でメモしたディレクトリ(テナント)IDを入れてください。
| 項目 | 設定値 |
|---|---|
| クライアントID | Step 2のアプリケーション(クライアント)ID |
| クライアントシークレット | Step 2で保管したシークレットの値(Value) |
| 認証URL | https://login.microsoftonline.com/{テナントID}/oauth2/v2.0/authorize |
| トークンURLテンプレート | https://login.microsoftonline.com/{テナントID}/oauth2/v2.0/token |
| リフレッシュURL | トークンURLと同じ |
| スコープ | https://api.fabric.microsoft.com/.default |
入力して「追加」をクリックしたら、接続の選択画面が表示されるので、接続を追加します。

すると、画面にコールバックURLが表示されるので、このコールバックURLをコピーします。

次のステップでEntraアプリに登録します。
Step 5: リダイレクトURIをEntraアプリに登録する
Azureに戻り、Step 2で作成したアプリにコールバックURLを登録します。
- Authentication(Preview)→ リダイレクトURIの構成 → リダイレクトURIを追加する → Webを選択します。
- Step 4でコピーしたコールバックURLを貼り付けます。
- 保存します。

Step 6: 接続を作成し、エージェントに追加する
Copilot Studioのウィザードに戻り、「次へ」で進みます。
- ツールの追加ダイアログで、再度「新しい接続を作成」を選択します。
- 再度サインインし、アクセス許可に同意します。
- 接続が作成されたら、「追加」を選択して完了です。

ツール一覧に追加されると、Copilot Studioで、Power BI MCPサーバーが利用可能になります。

動作確認
エージェントのテストチャットで、次のような質問を投げて動作を確認します。
セマンティックモデル {セマンティックモデルID} には、どんなテーブルがありますか?
セマンティックモデルIDは、Power BIサービスでセマンティックモデルを開いたときのURLから確認できます(.../datasets/{この部分}/...)。
エージェントがGetModelMetadataを呼び出し、テーブル・列・メジャーの一覧を返してくれば接続成功です。
前回の記事で使用した指示文では、次のように指定していました。
# 対象
- モデル名: <モデル名>(ワークスペース: <ワークスペース名>)
- セマンティックモデル ID: <セマンティックモデルID>
- ツール呼び出しでは常にこの ID を使用し、ユーザーに ID を尋ねないこと。まとめ
Power BI MCPサーバー(リモート)をCopilot Studioに接続する手順を解説しました。
- 接続には、テナント設定の有効化+Entra IDでのアプリ登録が必要
- リダイレクトURIはCopilot Studioのウィザードで発行されるため、「ウィザード→Entra」の順で登録する
- F SKUなしでもGet Semantic Model Schema+ExecuteQueryで反復的なデータ分析が可能
- アプリ登録ができない環境では、ワークフローで動的にDAXを実行する構成が代替になる
一度設定してしまえば、あとはCopilot Studioのエージェントに指示文を書くだけで、Power BIのセマンティックモデルに対する原因調査レベルの分析ができるようになります。
前回の検証のとおり、1調査あたりのコストは3方式の中で最安なので、継続運用を考えている方にはこの構成がおすすめです。
3方式の精度・コスト比較の詳細は、こちらの記事をご覧ください。
※本記事で扱ったPower BI MCPサーバーは、2026年8月時点の設定です。
仕様・画面・必要なアクセス許可は変更される可能性があるため、導入時はMicrosoft Learnの最新情報をあわせてご確認ください。





