mcp-server-builder について
OpenAPI 契約から MCP サーバーを構築するスキルです。API を LLM エージェントに連携する開発者向けで、コード生成に加えてスキーマ検証と互換性チェックを行います。
主な機能
- 01OpenAPI 操作を MCP ツールに変換
- 02Python または TypeScript のひな形を生成
- 03ツールマニフェストとスキーマを検証
- 04バージョンと互換性を確認
- 05ツール契約とランタイム選択を分離
活用シーン
- 01LLM エージェントに REST API を公開
- 02OpenAPI 仕様からサーバーを構築
- 03公開前にツール定義を確認
MCP 対応
MCP サーバーの設計と生成を支援し、OpenAPI 操作からツール定義と初期実装を作成します。MCP ツールマニフェストの検証にも対応します。
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ alirezarezvani/ claude-skills --skill mcp-server-builderインストール後、Claude Code で/mcp-server-builderを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
README.mdreferences/openapi-extraction-guide.mdproduction-hardening-guide.mdpython-server-template.mdtypescript-server-template.mdvalidation-checklist.mdscripts/mcp_validator.pyopenapi_to_mcp.py詳細
MCP Server Builder
Tier: POWERFUL · Category: Engineering · Domain: AI / API Integration
概要
このスキルを使用すると、手書きの単発ツールラッパーではなく、API コントラクトから本番環境に対応した MCP サーバーを設計・リリースできます。迅速なスキャフォールディング、スキーマの品質、検証、安全な進化に重点を置いています。
このワークフローでは、Python と TypeScript の両方の MCP 実装に対応し、OpenAPI を信頼できる唯一の情報源として扱います。
主な機能
- OpenAPI のパス/操作を MCP ツール定義に変換
- サーバーの初期スキャフォールドを生成(Python または TypeScript)
- 命名、説明、スキーマの一貫性を徹底
- 本番環境でよくある問題がないか MCP ツールマニフェストを検証
- バージョニングと後方互換性のチェックを適用
- トランスポート/ランタイムの選択とツールコントラクトの設計を分離
使用する場面
- 内部または外部の REST API を LLM エージェントに公開する必要がある場合
- 不安定なブラウザー自動化を、型付きツールに置き換える場合
- 複数のチームやアシスタントで共有する MCP サーバーを構築する場合
- MCP ツールの公開前に、再現可能な品質チェックが必要な場合
- 既存の OpenAPI 仕様から MCP サーバーを立ち上げたい場合
主なワークフロー
1. OpenAPI から MCP スキャフォールドを生成
- 有効な OpenAPI 仕様から始めます。
- ツールマニフェストとサーバーの初期コードを生成します。
- 命名と認証方式を確認します。
- エンドポイント固有のランタイムロジックを追加します。
python3 scripts/openapi_to_mcp.py \
--input openapi.json \
--server-name billing-mcp \
--language python \
--output-dir ./out \
--format text
stdin にも対応しています。
cat openapi.json | python3 scripts/openapi_to_mcp.py --server-name billing-mcp --language typescript
2. MCP ツール定義を検証
統合テストの前にバリデーターを実行します。
python3 scripts/mcp_validator.py --input out/tool_manifest.json --strict --format text
重複した名前、無効なスキーマの形式、説明の不足、空の必須フィールド、命名規則の問題をチェックします。
3. ランタイムの選択
- 迅速な反復開発やデータ量の多いバックエンドには、Python を選択します。
- JavaScript のスタックを統一し、フロントエンドとバックエンドでコントラクトをより緊密に再利用するには、TypeScript を選択します。
- トランスポートやランタイムが変わっても、ツールコントラクトは安定させます。
4. 本番環境向けに強化
公開前に確認する項目:
- シークレットはツールスキーマではなく、環境変数に保存します
- オープンプロキシより、送信先ホストの許可リストを優先します
- 変更は追加のみとし、既存のツール名をその場で変更しないでください
強化に関する詳細なガイダンス:references/production-hardening-guide.md。
スクリプトのインターフェース
python3 scripts/openapi_to_mcp.py --help- stdin または
--inputから OpenAPI を読み込みます - マニフェストとサーバーの初期スキャフォールドを生成します
- JSON の概要またはテキストレポートを出力します
- stdin または
python3 scripts/mcp_validator.py --help- マニフェストと、任意のランタイム設定を検証します
- エラーが存在する場合、厳格モードではゼロ以外の終了コードを返します
参考資料
- references/production-hardening-guide.md — 認証と安全性の設計、バージョニング戦略、よくある落とし穴、ベストプラクティス、アーキテクチャ上の判断、コントラクトの品質ゲート、テスト戦略、デプロイの実践方法、セキュリティ対策
- references/openapi-extraction-guide.md
- references/python-server-template.md
- references/typescript-server-template.md
- references/validation-checklist.md
- README.md
コメント
Markdown 対応