mcpField
P
powerbi-modeling

powerbi-modeling

github.com/githubデータ・データベース40.5k10.0k 回インストール今日更新
リポジトリ

powerbi-modeling について

powerbi-modelingは、Microsoftのベストプラクティスに沿ってPower BIセマンティックモデルを作成・最適化するスキルです。接続済みモデルを調査し、モデリングツールを使ってスキーマ、リレーション、DAX、セキュリティ、ドキュメント、性能を案内します。

主な機能

  1. 01モデル接続と構造の調査
  2. 02スキーマとリレーションの評価
  3. 03テーブルとメジャーの作成・更新
  4. 04DAXクエリの検証と実行
  5. 05セキュリティロールとリレーションの設定
  6. 06ドキュメント整備と性能最適化

活用シーン

  1. 01既存セマンティックモデルのレビュー
  2. 02スター スキーマとリレーションの設計
  3. 03説明付きDAXメジャーの作成
  4. 04行レベルセキュリティと性能の確認

MCP 対応

セマンティックモデルへの接続と変更にはPower BI Modeling MCP Serverが必要で、モデル、テーブル、メジャー、リレーション、DAX、セキュリティの操作を提供します。Microsoft Learn MCP Serverは、ドキュメントや最新の実践例を調べるための任意のサーバーです。

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/github/awesome-copilot --skill powerbi-modeling

インストール後、Claude Code で/powerbi-modelingを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

references/
MEASURES-DAX.md
PERFORMANCE.md
RELATIONSHIPS.md
RLS.md
STAR-SCHEMA.md

詳細

Power BI セマンティックモデリング

Microsoft のベストプラクティスに従って、最適化され、十分に文書化された Power BI セマンティックモデルを構築するようユーザーをガイドします。

このスキルを使用する場面

ユーザーが次のことについて質問したときにこのスキルを使用します:

  • Power BI セマンティックモデルの作成または最適化
  • スタースキーマ(ディメンションテーブル/ファクトテーブル)の設計
  • DAX メジャーまたは計算列の作成
  • テーブルリレーションシップの構成(カーディナリティ、クロスフィルター)
  • 行レベルセキュリティ(RLS)の実装
  • テーブル、列、メジャーの命名規則
  • モデルへの説明とドキュメントの追加
  • パフォーマンスチューニングと最適化
  • 計算グループとフィールドパラメーター
  • モデルの検証とベストプラクティスのチェック

トリガーフレーズ: 「メジャーを作成」「リレーションシップを追加」「スタースキーマ」「モデルを最適化」「DAX 数式」「RLS」「命名規則」「モデルのドキュメント」「カーディナリティ」「クロスフィルター」

前提条件

必要なツール
  • Power BI Modeling MCP サーバー:セマンティックモデルへの接続と変更に必要です
    • 有効化される機能:connection_operations、table_operations、measure_operations、relationship_operations など
    • モデルを操作するには構成済みで実行中である必要があります
オプションの依存関係
  • Microsoft Learn MCP サーバー:最新のベストプラクティスを調査するために推奨されます
    • 有効化される機能:microsoft_docs_search、microsoft_docs_fetch
    • 複雑なシナリオ、新機能、公式ドキュメントに使用します

ワークフロー

1. まず接続して分析する

モデリングのガイダンスを提供する前に、必ず現在のモデルの状態を確認します:

1. List connections: connection_operations(operation: "ListConnections")
2. If no connection, check for local instances: connection_operations(operation: "ListLocalInstances")
3. Connect to the model (Desktop or Fabric)
4. Get model overview: model_operations(operation: "Get")
5. List tables: table_operations(operation: "List")
6. List relationships: relationship_operations(operation: "List")
7. List measures: measure_operations(operation: "List")
2. モデルの健全性を評価する

接続後、ベストプラクティスに照らしてモデルを評価します:

  • スタースキーマ:テーブルはディメンションまたはファクトとして適切に分類されていますか?
  • リレーションシップ:カーディナリティは正しいですか?双方向フィルターは最小限ですか?
  • 命名:人間が読みやすく、一貫した命名規則ですか?
  • ドキュメント:テーブル、列、メジャーに説明がありますか?
  • メジャー:主要な計算に明示的なメジャーがありますか?
  • 非表示フィールド:技術的な列はレポートビューから非表示になっていますか?
3. 対象を絞ったガイダンスを提供する

分析に基づき、リファレンスを使用して改善をガイドします:

クイックリファレンス:モデル品質チェックリスト

領域ベストプラクティス
テーブルディメンションとファクトの明確な分類
命名人間が読みやすい:CUST_NM ではなく Customer Name
説明すべてのテーブル、列、メジャーが文書化されている
メジャービジネス指標に対する明示的な DAX メジャー
リレーションシップディメンションからファクトへの一対多
クロスフィルター特別に必要な場合を除き単一方向
非表示フィールド技術的なキー、ID をレポートビューから非表示にする
日付テーブル専用のマークされた日付テーブル

MCP ツールリファレンス

次の Power BI Modeling MCP 操作を使用します:

操作カテゴリ主な操作
connection_operationsConnect、ListConnections、ListLocalInstances、ConnectFabric
model_operationsGet、GetStats、ExportTMDL
table_operationsList、Get、Create、Update、GetSchema
column_operationsList、Get、Create、Update(説明、非表示、書式)
measure_operationsList、Get、Create、Update、Move
relationship_operationsList、Get、Create、Update、Activate、Deactivate
dax_query_operationsExecute、Validate
calculation_group_operationsList、Create、Update
security_role_operationsList、Create、Update、GetEffectivePermissions

一般的なタスク

説明付きのメジャーを追加する
measure_operations(
  operation: "Create",
  definitions: [{
    name: "Total Sales",
    tableName: "Sales",
    expression: "SUM(Sales[Amount])",
    formatString: "$#,##0",
    description: "Sum of all sales amounts"
  }]
)
列の説明を更新する
column_operations(
  operation: "Update",
  definitions: [{
    tableName: "Customer",
    name: "CustomerKey",
    description: "Unique identifier for customer dimension",
    isHidden: true
  }]
)
リレーションシップを作成する
relationship_operations(
  operation: "Create",
  definitions: [{
    fromTable: "Sales",
    fromColumn: "CustomerKey",
    toTable: "Customer",
    toColumn: "CustomerKey",
    crossFilteringBehavior: "OneDirection"
  }]
)

Microsoft Learn MCP を使用すべき場面

microsoft_docs_search を使って、以下に関する最新のベストプラクティスを調査します:

  • 最新の DAX 関数ドキュメント
  • 新しい Power BI の機能と能力
  • 複雑なモデリングシナリオ (SCD Type 2、多対多)
  • パフォーマンス最適化のテクニック
  • セキュリティ実装パターン

コメント