> ## Documentation Index
> Fetch the complete documentation index at: https://docs.inworld.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# LLMPromptBuilderNode

> LLM prompt builder node that processes JSON input into formatted prompts. This node transforms structured JSON data into text prompts that can be used directly with LLM completion endpoints.

## Input

**Type:** `Object`

The data type that LLMPromptBuilderNode accepts as input

## Output

**Type:** `String`

The data type that LLMPromptBuilderNode outputs

## Examples

```typescript theme={"system"}
const promptBuilderNode = new LLMPromptBuilderNode({
id: 'prompt-builder',
messages: [
{ role: 'system', content: 'You are a helpful assistant.' },
{ role: 'user', content: '{{user_question}}' }
],
responseFormat: 'text'
});
```

## Constructors

* [constructor](#constructor)

## Interfaces

* [LLMPromptBuilderNodeProps](#llmpromptbuildernodeprops)

***

## Constructors

### constructor

```typescript theme={"system"}
new LLMPromptBuilderNode(props?: LLMPromptBuilderNodeProps): LLMPromptBuilderNode
```

Creates a new LLMPromptBuilderNode instance.

#### Parameters

<ParamField body="props" type="LLMPromptBuilderNodeProps">
  Configuration for the LLM prompt builder node.
</ParamField>

#### Returns

`LLMPromptBuilderNode`

## Interfaces

### LLMPromptBuilderNodeProps

Configuration interface for `LLMPromptBuilderNode` creation.

#### Properties

**messages**?: `MessageTemplate[]`

List of message templates

**tools**?: `Tool[]`

List of available tools for function calling

**toolChoice**?: `object`

Tool choice configuration

**responseFormat**?: `"text" | "json" | "json_schema"`

Response format specification ('text', 'json', 'json\_schema')
