🛠️ MCPサーバービルダー
Minecraftのマルチプレイサーバーを構築し、プレイヤー
📜 元の英語説明(参考)
MCP Server Builder
🇯🇵 日本人クリエイター向け解説
Minecraftのマルチプレイサーバーを構築し、プレイヤー
※ jpskill.com 編集部が日本のビジネス現場向けに補足した解説です。Skill本体の挙動とは独立した参考情報です。
下記のコマンドをコピーしてターミナル(Mac/Linux)または PowerShell(Windows)に貼り付けてください。 ダウンロード → 解凍 → 配置まで全自動。
mkdir -p ~/.claude/skills && cd ~/.claude/skills && curl -L -o mcp-server-builder.zip https://jpskill.com/download/5035.zip && unzip -o mcp-server-builder.zip && rm mcp-server-builder.zip
$d = "$env:USERPROFILE\.claude\skills"; ni -Force -ItemType Directory $d | Out-Null; iwr https://jpskill.com/download/5035.zip -OutFile "$d\mcp-server-builder.zip"; Expand-Archive "$d\mcp-server-builder.zip" -DestinationPath $d -Force; ri "$d\mcp-server-builder.zip"
完了後、Claude Code を再起動 → 普通に「動画プロンプト作って」のように話しかけるだけで自動発動します。
💾 手動でダウンロードしたい(コマンドが難しい人向け)
- 1. 下の青いボタンを押して
mcp-server-builder.zipをダウンロード - 2. ZIPファイルをダブルクリックで解凍 →
mcp-server-builderフォルダができる - 3. そのフォルダを
C:\Users\あなたの名前\.claude\skills\(Win)または~/.claude/skills/(Mac)へ移動 - 4. Claude Code を再起動
⚠️ ダウンロード・利用は自己責任でお願いします。当サイトは内容・動作・安全性について責任を負いません。
🎯 このSkillでできること
下記の説明文を読むと、このSkillがあなたに何をしてくれるかが分かります。Claudeにこの分野の依頼をすると、自動で発動します。
📦 インストール方法 (3ステップ)
- 1. 上の「ダウンロード」ボタンを押して .skill ファイルを取得
- 2. ファイル名の拡張子を .skill から .zip に変えて展開(macは自動展開可)
- 3. 展開してできたフォルダを、ホームフォルダの
.claude/skills/に置く- · macOS / Linux:
~/.claude/skills/ - · Windows:
%USERPROFILE%\.claude\skills\
- · macOS / Linux:
Claude Code を再起動すれば完了。「このSkillを使って…」と話しかけなくても、関連する依頼で自動的に呼び出されます。
詳しい使い方ガイドを見る →- 最終更新
- 2026-05-17
- 取得日時
- 2026-05-18
- 同梱ファイル
- 8
💬 こう話しかけるだけ — サンプルプロンプト
- › MCP Server Builder を使って、最小構成のサンプルコードを示して
- › MCP Server Builder の主な使い方と注意点を教えて
- › MCP Server Builder を既存プロジェクトに組み込む方法を教えて
これをClaude Code に貼るだけで、このSkillが自動発動します。
📖 Skill本文(日本語訳)
※ 原文(英語/中国語)を Gemini で日本語化したものです。Claude 自身は原文を読みます。誤訳がある場合は原文をご確認ください。
MCP Server Builder
ティア: POWERFUL
カテゴリ: Engineering
ドメイン: AI / API Integration
概要
このスキルは、手書きの使い捨てツールラッパーではなく、APIコントラクトから本番環境に対応したMCPサーバーを設計し、出荷するために使用します。高速なスキャフォールディング、スキーマ品質、検証、安全な進化に重点を置いています。
このワークフローは、PythonとTypeScriptの両方のMCP実装をサポートし、OpenAPIを信頼できる情報源として扱います。
コア機能
- OpenAPIのパス/操作をMCPツール定義に変換します
- スターターサーバーの足場(PythonまたはTypeScript)を生成します
- 命名、説明、スキーマの一貫性を強制します
- 一般的な本番環境での障害についてMCPツールマニフェストを検証します
- バージョン管理と後方互換性チェックを適用します
- トランスポート/ランタイムの決定をツールコントラクトの設計から分離します
使用する場面
- 内部/外部のREST APIをLLMエージェントに公開する必要がある場合
- 脆いブラウザ自動化を型付きツールに置き換える場合
- チームやアシスタント間で共有される1つの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
標準入力もサポートしています。
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を選択します。
- 統合されたJSスタックと、より厳密なフロントエンド/バックエンドのコントラクト再利用にはTypeScriptを選択します。
- トランスポート/ランタイムが変更されても、ツールコントラクトは安定した状態を保ちます。
4. 認証と安全性の設計
- シークレットはツールスキーマではなく、環境変数に保持します。
- 送信ホストには明示的な許可リストを推奨します。
- エージェントの回復のために、構造化されたエラー(
code、message、details)を返します。 - 明示的な確認入力なしに破壊的な操作を避けます。
5. バージョン管理戦略
- 非破壊的な更新には、追加フィールドのみを使用します。
- ツール名をその場で変更しないでください。
- 破壊的な動作変更には、新しいツールIDを導入します。
- リリースごとにツールコントラクトの変更履歴を維持します。
スクリプトインターフェース
python3 scripts/openapi_to_mcp.py --help- 標準入力または
--inputからOpenAPIを読み込みます - マニフェストとサーバーの足場を生成します
- JSONサマリーまたはテキストレポートを出力します
- 標準入力または
python3 scripts/mcp_validator.py --help- マニフェストとオプションのランタイム設定を検証します
- エラーが存在する場合、厳格モードではゼロ以外の終了コードを返します
よくある落とし穴
- 生のパスから直接派生したツール名(
get__v1__users___id) - 操作の説明の欠落(エージェントがツールを適切に選択できない)
- 必須フィールドのない曖昧なパラメータスキーマ
- トランスポートエラーとドメインエラーを1つの不透明なメッセージに混在させる
- シークレット値を公開するツールコントラクトの構築
- バージョン管理なしにスキーマキーを変更してクライアントを破壊する
ベストプラクティス
- 利用可能な場合は
operationIdを正規のツール名として使用します。 - 1つのツールにつき1つのタスク意図を保持し、メガツールを避けます。
- 動詞を先頭にした簡潔な説明を追加します。
- 厳格モードを使用してCIでコントラクトを検証します。
- 生成された足場をコミットし、その後段階的にカスタマイズします。
- コントラクトの変更と変更履歴のエントリをペアにします。
参考資料
- references/openapi-extraction-guide.md
- references/python-server-template.md
- references/typescript-server-template.md
- references/validation-checklist.md
- README.md
アーキテクチャの決定
制約ごとにサーバーのアプローチを選択します。
- Pythonランタイム:高速なイテレーション、データパイプライン、バックエンド中心のチーム
- TypeScriptランタイム:JSスタックとの共有型、フロントエンド中心のチーム
- 単一のMCPサーバー:最も簡単な運用、広範な影響範囲
- 分割されたドメインサーバー:よりクリーンな所有権と安全な変更境界
コントラクト品質ゲート
マニフェストを公開する前に:
- すべてのツールに明確な動詞を先頭にした名前があること。
- すべてのツールの説明が意図と期待される結果を説明していること。
- すべての必須フィールドが明示的に型付けされていること。
- 破壊的なアクションには確認パラメータが含まれていること。
- エラーペイロード形式がすべてのツールで一貫していること。
- バリデーターが厳格モードでゼロエラーを返すこと。
テスト戦略
- ユニット:OpenAPI操作からMCPツールスキーマへの変換を検証します。
- コントラクト:
tool_manifest.jsonをスナップショットし、PRで差分を確認します。 - 統合:生成されたツールハンドラーをステージングAPIに対して呼び出します。
- レジリエンス:4xx/5xxのアップストリームエラーをシミュレートし、構造化された応答を検証します。
デプロイメントプラクティス
- 環境ごとにMCPランタイムの依存関係を固定します。
- バージョン管理されたエンドポイント/プロセスでサーバーの更新を展開します。
- 少なくとも1つのリリース期間は後方互換性を維持します。
- 新規/削除/変更されたツールコントラクトの変更履歴メモを追加します。
セキュリティ管理
- 送信ホストの許可リストを明示的に保持します。
- ユーザー提供の入力から任意のURLをプロキシしないでください。
- ログからシークレットと認証ヘッダーを編集します。
- 高コストのツールをレート制限し、リクエストタイムアウトを追加します。
📜 原文 SKILL.md(Claudeが読む英語/中国語)を展開
MCP Server Builder
Tier: POWERFUL
Category: Engineering
Domain: AI / API Integration
Overview
Use this skill to design and ship production-ready MCP servers from API contracts instead of hand-written one-off tool wrappers. It focuses on fast scaffolding, schema quality, validation, and safe evolution.
The workflow supports both Python and TypeScript MCP implementations and treats OpenAPI as the source of truth.
Core Capabilities
- Convert OpenAPI paths/operations into MCP tool definitions
- Generate starter server scaffolds (Python or TypeScript)
- Enforce naming, descriptions, and schema consistency
- Validate MCP tool manifests for common production failures
- Apply versioning and backward-compatibility checks
- Separate transport/runtime decisions from tool contract design
When to Use
- You need to expose an internal/external REST API to an LLM agent
- You are replacing brittle browser automation with typed tools
- You want one MCP server shared across teams and assistants
- You need repeatable quality checks before publishing MCP tools
- You want to bootstrap an MCP server from existing OpenAPI specs
Key Workflows
1. OpenAPI to MCP Scaffold
- Start from a valid OpenAPI spec.
- Generate tool manifest + starter server code.
- Review naming and auth strategy.
- Add endpoint-specific runtime logic.
python3 scripts/openapi_to_mcp.py \
--input openapi.json \
--server-name billing-mcp \
--language python \
--output-dir ./out \
--format text
Supports stdin as well:
cat openapi.json | python3 scripts/openapi_to_mcp.py --server-name billing-mcp --language typescript
2. Validate MCP Tool Definitions
Run validator before integration tests:
python3 scripts/mcp_validator.py --input out/tool_manifest.json --strict --format text
Checks include duplicate names, invalid schema shape, missing descriptions, empty required fields, and naming hygiene.
3. Runtime Selection
- Choose Python for fast iteration and data-heavy backends.
- Choose TypeScript for unified JS stacks and tighter frontend/backend contract reuse.
- Keep tool contracts stable even if transport/runtime changes.
4. Auth & Safety Design
- Keep secrets in env, not in tool schemas.
- Prefer explicit allowlists for outbound hosts.
- Return structured errors (
code,message,details) for agent recovery. - Avoid destructive operations without explicit confirmation inputs.
5. Versioning Strategy
- Additive fields only for non-breaking updates.
- Never rename tool names in-place.
- Introduce new tool IDs for breaking behavior changes.
- Maintain changelog of tool contracts per release.
Script Interfaces
python3 scripts/openapi_to_mcp.py --help- Reads OpenAPI from stdin or
--input - Produces manifest + server scaffold
- Emits JSON summary or text report
- Reads OpenAPI from stdin or
python3 scripts/mcp_validator.py --help- Validates manifests and optional runtime config
- Returns non-zero exit in strict mode when errors exist
Common Pitfalls
- Tool names derived directly from raw paths (
get__v1__users___id) - Missing operation descriptions (agents choose tools poorly)
- Ambiguous parameter schemas with no required fields
- Mixing transport errors and domain errors in one opaque message
- Building tool contracts that expose secret values
- Breaking clients by changing schema keys without versioning
Best Practices
- Use
operationIdas canonical tool name when available. - Keep one task intent per tool; avoid mega-tools.
- Add concise descriptions with action verbs.
- Validate contracts in CI using strict mode.
- Keep generated scaffold committed, then customize incrementally.
- Pair contract changes with changelog entries.
Reference Material
- references/openapi-extraction-guide.md
- references/python-server-template.md
- references/typescript-server-template.md
- references/validation-checklist.md
- README.md
Architecture Decisions
Choose the server approach per constraint:
- Python runtime: faster iteration, data pipelines, backend-heavy teams
- TypeScript runtime: shared types with JS stack, frontend-heavy teams
- Single MCP server: easiest operations, broader blast radius
- Split domain servers: cleaner ownership and safer change boundaries
Contract Quality Gates
Before publishing a manifest:
- Every tool has clear verb-first name.
- Every tool description explains intent and expected result.
- Every required field is explicitly typed.
- Destructive actions include confirmation parameters.
- Error payload format is consistent across all tools.
- Validator returns zero errors in strict mode.
Testing Strategy
- Unit: validate transformation from OpenAPI operation to MCP tool schema.
- Contract: snapshot
tool_manifest.jsonand review diffs in PR. - Integration: call generated tool handlers against staging API.
- Resilience: simulate 4xx/5xx upstream errors and verify structured responses.
Deployment Practices
- Pin MCP runtime dependencies per environment.
- Roll out server updates behind versioned endpoint/process.
- Keep backward compatibility for one release window minimum.
- Add changelog notes for new/removed/changed tool contracts.
Security Controls
- Keep outbound host allowlist explicit.
- Do not proxy arbitrary URLs from user-provided input.
- Redact secrets and auth headers from logs.
- Rate-limit high-cost tools and add request timeouts.
同梱ファイル
※ ZIPに含まれるファイル一覧。`SKILL.md` 本体に加え、参考資料・サンプル・スクリプトが入っている場合があります。
- 📄 SKILL.md (5,734 bytes)
- 📎 README.md (1,240 bytes)
- 📎 references/openapi-extraction-guide.md (867 bytes)
- 📎 references/python-server-template.md (610 bytes)
- 📎 references/typescript-server-template.md (346 bytes)
- 📎 references/validation-checklist.md (1,338 bytes)
- 📎 scripts/mcp_validator.py (5,620 bytes)
- 📎 scripts/openapi_to_mcp.py (9,542 bytes)