prompt-design について
xmcpのプロンプトを作成するワークフロー型スキルです。再利用可能なMCPプロンプトを作るユーザー向けに、要件を確認し、xmcpの形式に沿ったTypeScriptファイルの作成を案内します。
主な機能
- 01対話形式での要件確認
- 02シンプル・パラメーター付き・複数コンテンツ形式
- 03Zodによるパラメータースキーマの案内
- 04プロンプトのメタデータとハンドラー形式
- 05生成後のビルド確認項目
活用シーン
- 01コードレビュー用プロンプトの作成
- 02パラメーター付き文書作成プロンプトの構築
- 03再利用可能な専門分野向けプロンプトの定義
MCP 対応
xmcpがMCPクライアントに公開し、検出・利用できるプロンプトの作成を案内します。
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ xmcp-dev/ skills --skill prompt-designインストール後、Claude Code で/prompt-designを入力して読み込まれたか確認します。
同梱ファイルreferences/patterns.md
詳細
xmcp プロンプトの作成
ユーザーが新しい xmcp プロンプトを作成できるよう支援します。次の対話型ワークフローに従ってください。
ステップ 1:情報の収集
コードを生成する前に、AskUserQuestion を使って次の質問をユーザーに尋ねてください。
-
プロンプト名(未指定の場合):プロンプトの名前は何にしますか?(ケバブケースを使用)
-
プロンプトの種類:必要なプロンプトの種類を尋ねます。
- シンプル - パラメーターのない静的なプロンプトテキスト
- パラメーター化 - ユーザー指定のパラメーターを持つプロンプト(最も一般的)
- 複数コンテンツ - 複数のコンテンツブロック(テキスト、画像など)を返すプロンプト
-
パラメーター(パラメーター化する場合):プロンプトが受け付ける入力を確認します。
- パラメーター名
- 型(string、number、enum)
- 説明
- 省略可能かどうか
- 検証ルールやデフォルト値
-
ロール:プロンプトにどのロールを担わせますか?
- user - ユーザーの視点からのプロンプト(最も一般的)
- assistant - アシスタントの応答テンプレートとしてのプロンプト
-
ユースケース:プロンプトは何を目的としていますか?
- コードレビュー
- ドキュメント生成
- データ分析
- コンテンツ作成
- その他の特定のタスク
ステップ 2:プロンプトの生成
プロンプトファイルを src/prompts/ に作成します。
ファイルの場所
src/prompts/{prompt-name}.ts
プロンプト構造のリファレンス
すべての xmcp プロンプトには、次の 3 つの主要なエクスポートがあります。
// 1. Schema (optional) - Define parameters with Zod
export const schema = { /* ... */ };
// 2. Metadata (optional) - Prompt configuration
export const metadata: PromptMetadata = { /* ... */ };
// 3. Handler (required) - Default export function
export default function handler(params?) { /* ... */ }
クイックリファレンス
必須のインポート
import { type PromptMetadata } from "xmcp";
// For parameterized prompts
import { z } from "zod";
import { type InferSchema, type PromptMetadata } from "xmcp";
メタデータのフィールド
| フィールド | 型 | 必須 | 説明 |
|---|---|---|---|
name | string | いいえ* | 一意のプロンプト識別子 |
title | string | いいえ | 人が読めるタイトル |
description | string | いいえ | このプロンプトの機能 |
role | string | いいえ | "user" または "assistant"(デフォルト:user) |
*メタデータを省略すると、xmcp はファイル名をプロンプト名として使用します。
ハンドラーの戻り値の型
| 戻り値の型 | ユースケース |
|---|---|
string | シンプルなテキストプロンプト |
{ type: "text", text: string } | 明示的なテキストコンテンツ |
{ type: "image", data: base64, mimeType: string } | 画像コンテンツ |
Array<Content> | 複数のコンテンツブロック |
サーバーが公開するプロンプトのユースケース
MCP プロンプトは次の用途に便利です。
- 標準化されたワークフロー - 一貫性のあるコードレビュー、ドキュメント作成のパターン
- 複雑なテンプレート - 構造化された複数ステップの分析プロンプト
- ドメイン知識 - 特定の分野に特化したプロンプト
- 再利用可能なパターン - パラメーター化が有効な一般的なタスク
- クライアントとの連携 - MCP クライアントが検出して使用できるプロンプト
詳細なテンプレート
次の内容を含む、完全なコードテンプレートについては、
- シンプルなプロンプトのパターン
- Zod スキーマを使ったパラメーター化プロンプト
- 複数のロールを使った会話プロンプト
- 自動補完のサポート
- コードレビューとドキュメントの例
references/patterns.md を参照してください
生成後のチェックリスト
src/prompts/{prompt-name}.tsにファイルが作成されている- メタデータを使用する場合、
name、title、descriptionが設定されている - スキーマのすべてのパラメーターに
.describe()が使われている(パラメーター化する場合) - ハンドラーが適切なコンテンツ形式を返す
- ユースケースに適したロールが設定されている
プロンプトが正しくコンパイルされることを確認するため、pnpm build の実行を提案してください。
コメント
Markdown 対応