mcpField
A
aps-mcp-server-gen

aps-mcp-server-gen

github.com/autodesk-platform-services開発1128 回インストール3 週間前に更新
リポジトリ

aps-mcp-server-gen について

aps-mcp-server-genは、Autodesk Platform Services(APS)に接続するMCPサーバーのプロジェクトを生成するスキルです。開発者が言語、トランスポート、認証方式を選ぶと、実行可能なコードやテスト、設定ファイルを作成します。

主な機能

  1. 01Node.js/TypeScript、.NET/C#、Pythonに対応
  2. 02STDIOとStreamable HTTPに対応
  3. 033種類のAPS OAuth認証方式に対応
  4. 04ツール、認証ヘルパー、テストの生成
  5. 05MCPクライアント接続と実行手順の提示

活用シーン

  1. 01APS API向けMCPサーバープロジェクトの作成
  2. 02選択した言語とトランスポートでのひな形作成
  3. 03APS認証フローに対応したサーバーコードの生成
  4. 04APS呼び出しをモックした単体テストによる検証

MCP 対応

APSに接続し、APSのツールをMCPクライアントに公開するMCPサーバーを生成します。STDIOまたはStreamable HTTPを選択でき、クライアント接続設定も含まれます。

インストール

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

$npx skills add https://github.com/autodesk-platform-services/skills --skill aps-mcp-server-gen

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

同梱ファイル

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

README.md
references/
auth-2lo.md
auth-3lo-dotnet.md
auth-3lo-nodejs.md
auth-3lo-python.md
auth-3lo.md
auth-ssa-dotnet.md
auth-ssa-nodejs.md
auth-ssa-python.md
auth-ssa.md
dotnet.md
nodejs.md
python.md
testing-dotnet.md
testing-nodejs.md
testing-python.md
testing.md
transport-http.md
transport-stdio.md

詳細

APS MCP Server Generator

このスキルは、Autodesk Platform Services(APS)に接続する、完全に動作する MCP サーバープロジェクトを作成します。以下の手順に正確に従ってください。

ステップ 1 — 要件を確認する

ユーザーがまだ回答していない場合は、次の3つの質問を一度にすべて尋ねてください。

  1. 言語 — Node.js/TypeScript、.NET/C#、Python のどれですか?
  2. トランスポート — ローカル(STDIO、Claude Desktop など向け)とクラウド(Streamable HTTP、ウェブへのデプロイ向け)のどちらですか?
  3. 認証 — どの APS 認証パターンを使用しますか?
    • 2-legged OAuth — アプリが独自のリソースにアクセスします。ユーザーのサインインは不要です(注:レガシーですが、引き続きサポートされています)。
    • Secure Service Accounts(SSA) — サーバー間の自動処理を行います。インタラクティブなログインなしで、実在のユーザーに代わって動作します。
    • 3-legged OAuth — ユーザーがブラウザーでサインインし、サーバーはユーザーに代わって動作します。

ユーザーのリクエストから選択肢がすでに明確な場合(例:「Python FastMCP server」)、その質問は省略してください。

ステップ 2 — リファレンスドキュメントを読み込む

ファイルを作成する前に、該当するリファレンスを読み込んでください。

ステップ 3 — 出力ディレクトリを確認する

プロジェクトを作成する場所を尋ねるか、確認してください(デフォルト:現在のディレクトリ内の ./aps-mcp-server)。

ステップ 4 — プロジェクトのひな形を作成する

動作するプロジェクトに必要なファイルをすべて作成してください。プレースホルダーの TODO を残さず、完全で実行可能なコードを生成してください。リファレンスファイルのパターンをそのまま使用してください。

作成するファイル(すべての言語)
ファイル用途
.env.example必須の環境変数すべて。プレースホルダー値とコメントを含めます
README.mdセットアップ、実行方法、MCP クライアントの設定、テスト手順
メインサーバーファイル言語固有のエントリーポイント
ツールファイルAPS ツールの例を少なくとも1つ(例:OSS バケットの一覧表示)
認証ヘルパー選択した認証方式のトークン取得ロジック
テストファイルAPS 呼び出しをモックした単体テスト(testing.md を参照)
言語固有の追加ファイル
  • Node.js:package.json、TypeScript の場合は tsconfig.json、開発用依存関係として vitest
  • .NET:.csproj、appsettings.json、xUnit + NSubstitute を使用する *.Tests プロジェクト
  • Python:uv で管理する pyproject.toml、開発用依存関係として pytest + pytest-asyncio

ステップ 5 — ひな形作成後の手順

ファイルを作成した後、ユーザーに次の内容を伝えてください。

  1. 依存関係(テスト用の依存関係を含む)のインストール方法
  2. .env の設定方法(各認証情報を取得するためにアクセスする APS ポータルのページ)
  3. 単体テストの実行方法(認証情報は不要です)
  4. サーバーの実行方法
  5. MCP クライアントからの接続方法(Claude Desktop の設定または Inspector URL)
  6. MCP Inspector でインタラクティブなスモークテストを実行する方法

主なルール

  • トークンのパススルーは絶対に実装しないでください。 MCP サーバーは APS で独自に認証する必要があります。MCP クライアントから APS トークンを受け取り、転送してはいけません。
  • トークンは必ずキャッシュしてください。 APS を呼び出すたびに有効期限を確認し、有効期限の60秒以上前に先回りして更新してください。
  • STDIO とステートレス HTTP の違いに注意してください。 STDIO サーバーは本質的に単一セッションです。ストリーマブル HTTP サーバーは、ユーザーごとのトークンを追跡するためにステートフルセッションが必要となる3-legged OAuthを選択する場合を除き、デフォルトでステートレス(セッション ID なし)にしてください。
  • ツールの説明は重要です。 すべてのツールに明確な docstring/説明を記述してください。LLM はそれを参考に、各ツールを呼び出すタイミングを判断します。
  • データをプログラムから利用できる場合(UI コンポーネントなど)、Node.js のツールでは content と structuredContent の両方を返してください。Python FastMCP は戻り値の型から構造化出力を自動的に推論します。

コメント