aps-aecdm-mcp-dotnet について
Claude Desktop から AEC Data Model API と Viewer に接続する .NET 製 MCP サーバーのサンプルです。ハブ、プロジェクト、要素グループ、カテゴリで絞り込んだ要素を取得し、モデル要素の表示やハイライトを行うツールを備えています。
主な機能
- 01PKCE トークンの取得
- 02ハブとプロジェクトの検索
- 03要素グループの取得
- 04カテゴリによる要素の絞り込み
- 05Viewer での表示とハイライト
活用シーン
- 01自然言語による AEC モデルデータの検索
- 02カテゴリ別の要素検索
- 03設計要素の表示とハイライト
MCP 対応
ModelContextProtocol .NET SDK を使用し、AEC Data Model API の検索や Viewer 操作のツールを Claude Desktop に提供します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
aps-aecdm-mcp-dotnet
Claude Desktop、AEC Data Model API、Viewer に接続する .NET MCP サーバーです。
はじめに
このサンプルは、Autodesk Platform Accelerators のプログラムのひとつで課題として提示された、新しい Model Context Protocol を使った実験として始まりました。この課題を提示し、このリポジトリで紹介するソリューションの実現に貢献してくださった Mirco Bianchini に、特別な感謝を申し上げます。
前提条件
このサンプルを動作させるには、次の作業が必要です。
- Claude Desktop をダウンロードしてインストールする
- このリポジトリをクローンまたはダウンロードする
- このプロジェクトをビルドする
- Claude の設定ファイル(開発者向けリソース)に .csproj への参照を追加する
デモ動画はこちら
仕組み
このサンプルでは、ModelContextProtocol .NET SDK を使用して MCP サーバーを作成します。
このサンプルでは、サーバーに次の 7 つの主要なツールを追加しました。
- GetToken:APS API リクエストで使用する PKCE トークンを取得します。
- GetHubs:AEC Data Model API を使用してハブを取得します。
- GetProjects:AEC Data Model API を使用してプロジェクトを取得します。
- GetElementGroupsByProject:AEC Data Model API を使用して ElementGroup を取得します。
- GetElementsByElementGroupWithCategoryFilter:カテゴリフィルターを使用して、1 つの ElementGroup から要素を取得します。
- RenderModel:Viewer を使用して設計をレンダリングします。
- HighLightElements:Viewer で要素をハイライト表示します。
これらのツールを使用すると、AEC Data Model API を通じて、自然言語で ElementGroup のデータをクエリできます。
これは、この新しいプロトコルを使った最初の実験です。機能を改善できるよう、ぜひ提案をお寄せいただき、このリポジトリへの協力をお願いします。
セットアップ
ローカルでの実行
このプロジェクトをクローンまたはダウンロードしてください。GitHub desktop のインストールをおすすめします。コマンドラインでクローンするには、次のコマンドを使用してください(MacOSX/Linux では Terminal、Windows では Git Shell を使用します)。
git clone https://github.com/joaomartins-callmejohn/aps-aecdm-mcp-dotnet
Visual Studio(Windows):
client_id を独自のキー(シングルページアプリケーション)に置き換えてください。 'Properties/lauchSettings.json' ファイルを直接編集するか、Visual Studio UI のデバッグプロパティから設定できます。
claude_desktop_congif.json ファイルに MCP サーバーへの参照を追加する必要があります。
{
"mcpServers": {
"aecdm": {
"command": "dotnet",
"args": [
"run",
"--project",
"C:\\Users\\...mcp-server-aecdm.csproj",
"--no-build"
]
}
}
}
さらに読む
トラブルシューティング
-
ハブが見つからない場合:ACC ハブで APS アプリをプロビジョニング
-
コードを変更し、その変更を Claude に反映させたい場合は、ソリューションを再ビルドする前に CLaude のタスクを終了する必要があります。
ライセンス
このサンプルは、MIT License の条件に基づいてライセンスされています。詳細については、LICENSE ファイルをご覧ください。
作成者
João Martins in/jpornelas
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。