# プロンプトとテキスト

> Nodaro の MCP ツールで、大まかなアイデアをそのまま使えるプロンプトに仕上げ、シーンごとの動画の脚本を書き、LLM の審査員に複数の結果からベストを選ばせます。

Source: https://nodaro.ai/ja/docs/mcp/tools/prompts-and-text

**プロンプトとテキストのツール**は、アシスタントが Nodaro の生成ツールに渡す入力をより良く書き、結果の中から選ぶのを手助けします。`enhance_prompt`、`analyze_prompt`、`generate_prompt` は、大まかなアイデアを、特定のノード向けに書かれたプロンプトにします。`generate_script` は動画の脚本をシーンごとに書き、`reduce` は候補のリストを結合または審査します。

## `enhance_prompt`
大まかなアイデアを、対象のノードタイプ向けに最適化した 1 つのプロンプトに書き直します。途中で質問はしません。手早く改善したいときに使います。

**権限**：`workflows:execute`。**クレジット**：LLM の実行 1 回分です。料金はモデルのティアによって決まります。

| パラメーター | 型 | 説明 |
| --- | --- | --- |
| `nodeType` | string | **必須**。プロンプトを使うノードです。たとえば `generate-image`、`image-to-video`、`generate-music` です。 |
| `prompt` | string | 大まかなアイデアで、最大 5,000 文字です。ゼロから始める場合は省略します。 |
| `provider`, `style`, `aspectRatio`, `duration` | string or number | 使う予定のモデルと設定です。プロンプトがそれに合うように書かれます。 |
| `llmModel` | string | プロンプトを書く LLM です。ツールが一覧表示する ID のいずれかで、たとえば `gemini-3.6-flash` や `claude-sonnet-4.6` です。デフォルトを使う場合は省略します。 |
| `reasoning_effort` | string | `none`、`low`、`medium`、`high`、`xhigh`、`max` のいずれかです。`xhigh` と `max` では、料金が 1 段階上のティアになります。 |
| `advanced_mode` | boolean | Gemini のモデル専用です。リクエストをモデルの開発元のサービスで直接実行するため、`temperature` と `max_tokens` が適用されます。料金は 1 段階上のティアになります。ほかのモデルでは、`400 advanced_mode_unsupported` が返されます。 |
| `temperature`, `max_tokens` | number | `advanced_mode` のときだけ使います。`temperature` は 0〜2、`max_tokens` は最大 32,768 です。 |

**戻り値**：`jobId`、`prompt`、そしてツールに推奨モデルがある場合は `recommendedModel` です。

## `analyze_prompt`
対象のノードタイプ向けに、大まかなアイデアを選択肢付きの質問にします。プロンプトの方向性を自分で決めたいときに、`generate_prompt` と組み合わせて使います。質問に答えてから、その回答でプロンプトを組み立てます。

**権限**：`workflows:execute`。**クレジット**：LLM の実行 1 回分です。料金はモデルのティアによって決まります。

| パラメーター | 型 | 説明 |
| --- | --- | --- |
| `nodeType` | string | **必須**。プロンプトを使うノードです。たとえば `generate-image` です。 |
| `prompt` | string | 大まかなアイデアで、最大 5,000 文字です。ゼロから始める場合は省略します。 |
| モデルと設定 | | `provider`、`style`、`aspectRatio`、`duration`、`llmModel`、`reasoning_effort`、`advanced_mode`、`temperature`、`max_tokens` です。`enhance_prompt` と同じです。 |

**戻り値**：`jobId` と `questions` です。各質問には、`category`、`label`、`options`、選択中の選択肢（`selected`）、自由回答を許可するかどうか（`allowCustom`）、複数の回答を許可するかどうか（`multi`）が含まれます。

## `generate_prompt`
`analyze_prompt` の質問への回答から、最適化した 1 つのプロンプトを組み立てます。

**権限**：`workflows:execute`。**クレジット**：LLM の実行 1 回分です。料金はモデルのティアによって決まります。

| パラメーター | 型 | 説明 |
| --- | --- | --- |
| `nodeType` | string | **必須**。`analyze_prompt` と同じノードタイプです。 |
| `selections` | array | **必須**。回答した質問ごとに、1 つの `{ category, value, isCustom }` を指定します。 |
| `originalPrompt` | string | 最初のアイデアで、最大 5,000 文字です。結果に織り込まれます。 |
| モデルと設定 | | `provider`、`style`、`aspectRatio`、`duration`、`llmModel`、`reasoning_effort`、`advanced_mode`、`temperature`、`max_tokens` です。`enhance_prompt` と同じです。 |

**戻り値**：`jobId`、`prompt`、そしてツールに推奨モデルがある場合は `recommendedModel` です。

同じプロンプトウィザードは、エディターと [REST API](https://nodaro.ai/docs/developers/api/prompt-wizard) でも使えます。

## `generate_script`
説明から、構造化された動画の脚本を書きます。脚本はシーンごとの文章で、一連の画像生成や動画生成に使えます。[**脚本生成**（Generate Script）](https://nodaro.ai/docs/nodes/video/generate-script)ノードと同じように動作します。

**権限**：`workflows:execute`。**クレジット**：モデルに応じて、10〜30 クレジットです。

| パラメーター | 型 | 説明 |
| --- | --- | --- |
| `prompt` | string | **必須**。動画の内容です。トピック、スタイル、対象者を書きます。最大 10,000 文字です。 |
| `model` | string | `gemini`（デフォルト）、`claude`、`gpt` のいずれかです。 |
| `scene_count` | integer | シーンの数で、1〜20 です。デフォルトは `5` です。 |
| `target_duration` | integer | 動画の長さ（秒）で、5〜600 です。デフォルトは `60` です。 |
| `tone` | string | `dramatic` や `lighthearted` などのトーンで、最大 200 文字です。 |
| `style_guide` | string | 脚本が従うスタイルで、語り口、見た目、テンポを指定します。最大 100,000 文字です。 |

**戻り値**：ジョブ ID です。脚本はジョブの出力に含まれます。MCP Apps に対応したクライアントでは、ジョブのカードに脚本と**コピー**ボタンが表示されます。

## `reduce`
候補のリストを 1 つの結果にまとめるか、LLM の審査員に最も良いものを選ばせます。[**ベストを選択**（Choose Best）](https://nodaro.ai/docs/nodes/automate/choose-best)ノードのエンジンです。

**権限**：`workflows:execute`。**クレジット**：ロジック系の戦略は無料です。`pick-best-llm` は、審査員のモデルがエコノミー、スタンダード、プレミアムのどれかに応じて、3、10、25 クレジットです。

| パラメーター | 型 | 説明 |
| --- | --- | --- |
| `strategyId` | string | **必須**。`pick-best-llm`、`concat`、`first-non-empty`、`count`、`vote`、`merge-json` のいずれかです。 |
| `inputs` | array | **必須**。最大 1,000 個の文字列で、テキストの断片や URL です。 |
| `strategyConfig` | object | 戦略の設定です。下の表を参照してください。 |

| 戦略 | 動作 | `strategyConfig` |
| --- | --- | --- |
| `pick-best-llm` | LLM の審査員が、判断基準に照らして最も良い候補を選びます | `criteria`（テキスト）、`inputKind`（`text` か `image-url`）、審査員用の任意の `llmModel` |
| `concat` | すべての入力を連結します | `separator` |
| `first-non-empty` | 空でない最初の入力を返します | なし |
| `count` | 入力の数を数えます | なし |
| `vote` | 最も多く現れる入力を返します。同数の場合は、最初の入力です | `caseSensitive` |
| `merge-json` | JSON オブジェクトをマージします | `strategy`：`deep` か `shallow` |

**戻り値**：`jobId`、文字列としての `output`、処理の内容を示す `meta.summary` です。`pick-best-llm` では、`meta.selectedIndex` と、審査員の説明である `meta.reasoning` も返されます。

候補が画像の場合は、`inputKind` を `image-url` にしてください。`text` のままだと、審査員はリンクをテキストとして比べるだけです。一見きちんと選んでいるように見えますが、実際には意味のある選択になっていません。

## Frequently asked questions

### enhance_prompt と analyze_prompt の違いは何ですか？

enhance_prompt は、1 回の呼び出しで、大まかなアイデアを最適化された 1 つのプロンプトに書き直します。analyze_prompt は、まず選択肢付きの質問を返します。その回答から generate_prompt がプロンプトを組み立てるので、結果の方向性を自分で決められます。

### プロンプトのツールには、クレジットがかかりますか？

はい、少しかかります。1 回の呼び出しは LLM の実行 1 回分で、選んだモデルのティアによって料金が決まります。詳細モードの場合と、推論の強度が最も高いレベルの場合は、料金が 1 段階上のティアになります。

### アシスタントは、複数の画像からベストをどのように選べますか？

reduce を呼び出します。戦略に pick-best-llm を、inputs に画像の URL を指定し、inputKind を image-url にして、判断基準を渡します。審査員は、勝者、そのインデックス、選んだ理由を返します。
