# 프롬프트와 텍스트

> Nodaro MCP 도구로 대략적인 아이디어를 검증된 프롬프트로 바꾸고, 장면별 동영상 스크립트를 쓰고, LLM 심사자가 여러 결과 중 가장 좋은 것을 고르게 하세요.

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

**프롬프트와 텍스트 도구**는 어시스턴트가 Nodaro 생성 도구에 더 좋은 입력을 쓰고 결과 중에서 고르도록 돕습니다. `enhance_prompt`, `analyze_prompt`, `generate_prompt`는 대략적인 아이디어를 특정 노드에 맞춘 프롬프트로 바꾸고, `generate_script`는 동영상 스크립트를 장면별로 쓰며, `reduce`는 후보 목록을 합치거나 심사합니다.

## `enhance_prompt`
대략적인 아이디어를 중간 질문 없이 대상 노드 타입에 맞는 최적화된 프롬프트 하나로 다시 씁니다. 빠르게 개선할 때 사용하세요.

**권한:** `workflows:execute`. **크레딧:** LLM 실행 1회로, 모델의 등급에 따라 가격이 정해집니다.

| 매개변수 | 타입 | 설명 |
| --- | --- | --- |
| `nodeType` | string | **필수.** 프롬프트를 쓸 노드로, 예를 들어 `generate-image`, `image-to-video`, `generate-music`입니다. |
| `prompt` | string | 대략적인 아이디어로, 최대 5,000자입니다. 처음부터 시작하려면 생략하세요. |
| `provider`, `style`, `aspectRatio`, `duration` | string 또는 number | 사용할 모델과 설정으로, 프롬프트가 여기에 맞춰집니다. |
| `llmModel` | string | 프롬프트를 쓰는 LLM으로, 도구가 나열하는 ID 중 하나입니다. 예를 들어 `gemini-3.6-flash`나 `claude-sonnet-4.6`입니다. 기본값을 쓰려면 생략하세요. |
| `reasoning_effort` | string | `none`, `low`, `medium`, `high`, `xhigh`, `max` 중 하나입니다. `xhigh`와 `max`는 한 등급 높게 청구됩니다. Claude 모델에서는 어떤 강도든 모델 제작사의 서비스에서 직접 실행되며 한 등급 높게 청구됩니다. |
| `advanced_mode` | boolean | Gemini와 Claude 모델용입니다. 요청을 모델 제작사의 서비스에서 직접 실행하므로 `temperature`와 `max_tokens`가 적용됩니다. 한 등급 높게 청구됩니다. 다른 모델은 `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자입니다. 처음부터 시작하려면 생략하세요. |
| 모델과 설정 | | `enhance_prompt`와 같은 `provider`, `style`, `aspectRatio`, `duration`, `llmModel`, `reasoning_effort`, `advanced_mode`, `temperature`, `max_tokens`입니다. |

**반환값:** `jobId`와 `questions`입니다. 각 질문에는 `category`, `label`, `options`, 선택된 옵션인 `selected`, 직접 입력한 답을 허용하는지(`allowCustom`), 여러 답을 허용하는지(`multi`)가 있습니다.

## `generate_prompt`
`analyze_prompt` 질문에 대한 답변으로 최적화된 프롬프트 하나를 만듭니다.

**권한:** `workflows:execute`. **크레딧:** LLM 실행 1회로, 모델의 등급에 따라 가격이 정해집니다.

| 매개변수 | 타입 | 설명 |
| --- | --- | --- |
| `nodeType` | string | **필수.** `analyze_prompt`와 같은 노드 타입입니다. |
| `selections` | array | **필수.** 답한 질문마다 `{ category, value, isCustom }` 하나입니다. |
| `originalPrompt` | string | 결과에 녹여 넣을 처음 아이디어로, 최대 5,000자입니다. |
| 모델과 설정 | | `enhance_prompt`와 같은 `provider`, `style`, `aspectRatio`, `duration`, `llmModel`, `reasoning_effort`, `advanced_mode`, `temperature`, `max_tokens`입니다. |

**반환값:** `jobId`, `prompt`, 그리고 도구에 추천 모델이 있으면 `recommendedModel`입니다.

같은 프롬프트 마법사를 편집기와 [REST API](https://nodaro.ai/docs/developers/api/prompt-wizard)에서도 사용할 수 있습니다.

## `generate_script`
설명으로 구조화된 동영상 스크립트를 씁니다. 여러 이미지나 동영상 생성을 이끌 수 있는 장면별 문안입니다. [**대본 생성**](https://nodaro.ai/docs/nodes/video/generate-script) 노드처럼 동작합니다.

**권한:** `workflows:execute`. **크레딧:** 모델에 따라 11~83크레딧.

| 매개변수 | 타입 | 설명 |
| --- | --- | --- |
| `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`
후보 목록을 결과 하나로 합치거나, LLM 심사자가 가장 좋은 것을 고르게 합니다. [**최적 선택**](https://nodaro.ai/docs/nodes/automate/choose-best) 노드의 엔진입니다.

**권한:** `workflows:execute`. **크레딧:** 로직 전략은 무료입니다. `pick-best-llm`은 이코노미, 표준, 프리미엄 심사 모델에 따라 4크레딧, 11크레딧, 28크레딧입니다.

| 매개변수 | 타입 | 설명 |
| --- | --- | --- |
| `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`로 두면 심사자가 링크를 텍스트로 비교하므로, 실제로 고른 것처럼 보이지만 그렇지 않습니다.

## 자주 묻는 질문

### enhance_prompt와 analyze_prompt는 어떻게 다른가요?

enhance_prompt는 한 번의 호출로 대략적인 아이디어를 최적화된 프롬프트 하나로 다시 씁니다. analyze_prompt는 먼저 선택지가 있는 질문을 반환하고, generate_prompt가 내 답변으로 프롬프트를 만듭니다. 그래서 결과의 방향을 직접 정할 수 있습니다.

### 프롬프트 도구는 크레딧이 드나요?

네, 조금 듭니다. 호출마다 LLM 실행 1회이며, 선택한 모델의 등급에 따라 가격이 정해집니다. 고급 모드와 가장 높은 추론 강도는 한 등급 높게 청구되며, 최대 프리미엄 등급까지입니다.

### 어시스턴트가 여러 이미지 중 가장 좋은 것을 어떻게 고르나요?

전략을 pick-best-llm으로, 이미지 URL을 inputs로, inputKind를 image-url로 설정하고 기준을 넣어 reduce를 호출하세요. 심사자가 선택한 결과, 그 인덱스, 판단 이유를 반환합니다.
