JAJ Dataverse Dev MCP について
JAJ Dataverse Dev MCPは、Dataverse環境を横断して作業する開発者やコンサルタント向けの軽量なMCPサーバーです。Web APIを薄く包み、既存のAzure CLI IDを使うため、アプリ用の認証情報を別途用意する必要がありません。
主な機能
- 01Azure CLI IDで認証
- 02設定済み環境を切り替え
- 03レコードの検索と更新
- 04メタデータとソリューションの確認
- 05ソリューションの作成とエクスポート
活用シーン
- 01最近作成されたDataverseレコードの確認
- 02テーブルやソリューションコンポーネントの調査
- 03アンマネージドソリューションの作成
- 04デプロイ用のソリューションのエクスポート
MCP 対応
薄いラッパーを通じて、データ、メタデータ、ソリューション、コンポーネント、トラブルシューティングなどのDataverse Web API機能をMCPクライアントに公開します。複数の環境を設定して利用できます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
4掲載時のツール一覧 · 2 週間前に更新
このツールにパラメーターはありません。
詳細
JAJ Dataverse Dev MCP
日々の Dataverse および Power Platform の開発に適した、軽量な MCP サーバーです。
既存の Azure CLI ID を使って、複数の Dataverse 環境にエージェントを接続できます。 このサーバーは、データ、メタデータ、ソリューション、コンポーネント、トラブルシューティング、開発タスク向けに、Web API 上に薄くエージェントに適したレイヤーを提供します。
エージェント → MCP → Azure CLI ID → Dataverse Web API
VS Code + GitHub Copilot のクイックスタート
サーバーを .vscode/mcp.json に追加します。
{
"servers": {
"dataverse-dev": {
"command": "npx",
"args": [ "-y", "jaj-dataverse-dev-mcp" ]
}
}
}
ファイルを保存して、Start を押します。初回の起動時は、npx がパッケージをダウンロードするため、時間がかかることがあります。
Azure CLI でサインインします。
az login
プロジェクトのルートに environments.json を作成し、必要な環境を設定します。
{
"environments": {
"dev": {
"url": "https://org8ffb6d07.crm.dynamics.com/",
"allowWrite": true
}
}
}
Copilot を開いて、次のように試してみてください。
- 利用可能な Dataverse 環境を一覧表示する
- dev 環境で whoami を呼び出す
- 最後に作成された 5 件のアカウントの名前と ID を表示する
- アンマネージドソリューションを一覧表示する
これで完了です。
その他の MCP 対応エージェントも同じ方法で利用できます。jaj-dataverse-dev-mcp を stdio 経由で実行し、ローカルの Azure CLI セッションと接続設定へのアクセスを提供してください。
Claude Desktop のクイックスタート
サーバーを claude_desktop_config.json に追加します。
- Windows:
%APPDATA%\Claude\claude_desktop_config.json - macOS:
~/Library/Application Support/Claude/claude_desktop_config.json
{
"mcpServers": {
"dataverse-dev": {
"command": "npx",
"args": ["-y", "jaj-dataverse-dev-mcp"],
"env": { "DATAVERSE_ENVIRONMENTS_PATH": "C:/Users/you/project/environments.json" }
}
}
}
ファイルを保存して、Claude Desktop を完全に終了してから再起動します(ウィンドウを閉じるだけでは設定の変更が反映されません)。
VS Code + GitHub Copilot のクイックスタートの「Azure CLI でサインインします...」から続けてください。
このプロジェクトの理由
Microsoft 独自のツールを含め、Dataverse MCP の実装はすでに複数あります。
このプロジェクトは、日々の開発作業で、利用可能な専用ツールを超える機能をエージェントが必要とすることが多かったことから生まれました。 多くの場合、エージェントは Dataverse Web API のリクエストを直接組み立てることで、タスクをうまく解決できました。
この MCP はそのアプローチを採用しています。
Dataverse を大規模な抽象化の背後に隠すのではなく、薄いラッパーを介して Web API に幅広くアクセスできるようにします。
また、プロジェクト、顧客、Dataverse 環境を頻繁に切り替える開発者やコンサルタント向けに設計されています。
既存の Azure CLI ID を使って、1 つの MCP サーバーで複数の Dataverse 環境を利用できます。 別途アプリ登録、クライアント ID、クライアントシークレットを用意する必要はありません。
前提条件
- Node.js 20+
- Azure CLI がインストールされ、サインイン済みであること
- 1 つ以上の Dataverse 環境 URL へのアクセス権
認証
# Authentication is based on your current Azure CLI identity:
az login
# Useful variants:
az login --tenant <tenant-id> # Specific tenant, if your tenant is not the default
az login --allow-no-subscriptions # Tenant without subscriptions
az login --use-device-code # Remote/headless environments
# To inspect the currently active Azure CLI account:
az account show
Dataverse 環境
環境はプロジェクトルートの environments.json で設定し、dev、test、prod などの分かりやすい名前で識別します。
エージェントは、作業対象の Dataverse 環境を選択する際にこれらの名前を使用します。
環境が既定の Azure CLI テナントとは異なるテナントにある場合は、その環境に tenantId を追加します。
DATAVERSE_ENVIRONMENTS_PATH を使って、実行時に設定ファイルのパスを上書きできます。
例:
{
"environments": {
"dev": {
"url": "https://YOUR-DEV.crm.dynamics.com/",
"allowWrite": true
},
"test": {
"url": "https://YOUR-TEST.crm4.dynamics.com",
"allowWrite": false
},
"prod": {
"url": "https://YOUR-PROD.crm4.dynamics.com",
"allowWrite": false,
"tenantId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
}
}
}
プロジェクト固有の Copilot 指示を追加する
エージェントの動作を改善するには、MCP を使用するプロジェクトに Dataverse 固有の指示を追加します。
docs/examples/copilot-instructions.md を、MCP サーバーを使用するワークスペース内の .github/copilot-instructions.md にコピーし、プロジェクトに合わせてカスタマイズします。
YOUR-dev、YOUR-test、YOUR-prodをenvironments.jsonの環境名に置き換えますYOUR_DEFAULT_SOLUTIONを、主要な Dataverse ソリューションの一意の名前に置き換えます- プロジェクトに合わせて既定の環境と安全ルールを調整します
カスタマイズしたファイルをプロジェクトリポジトリにコミットし、すべてのコントリビューターが同じガイダンスを使用できるようにします。
npx で直接実行
このパッケージは、デフォルトのトランスポートとして stdio を使用して手動で起動することもできます。
npx -y jaj-dataverse-dev-mcp
開発時や Streamable HTTP を使用するクライアントでは、--http を追加してください。
どのような用途に使えますか?
この MCP は Dataverse Web API を意図的に薄くラップしたものですが、次のような幅広い開発やトラブルシューティングのタスクをサポートできます。
- Dataverse のレコードをクエリして更新する
- テーブル、列、メタデータ、パブリッシャー、ソリューションを調べる
- アンマネージドソリューションを作成して構成する
- 既存のコンポーネントをソリューションに追加する
- Dataverse のアクションや関数を操作する
- 他の環境にデプロイするためにソリューションをエクスポートする
このため、Dataverse を調べ、次のアクションを決定し、MCP を通じて実行するエージェント主導のワークフローだけでなく、直接的な開発タスクにも役立ちます。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。