# set_unit_furnishing

Record one or more furnishing windows for units. Setting a window is authoritative: it clips overlapping
windows so the timeline stays gapless and non-overlapping. All windows execute in parallel; partial success is
reported per window.

<!-- INPUT_BLOCK_START -->

## Input

| Parameter | Type | Required | Description |
| --- | --- | --- | --- |
| `furnishings` | `UnitFurnishingWindow[]` | Yes | Furnishing windows to record. Maximum 100. - [UnitFurnishingWindow](#unitfurnishingwindow) |

### UnitFurnishingWindow

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `unitId` | `string` | Yes | ID of the unit the furnishing applies to |
| `furnishingStatus` | `FurnishingStatus` | Yes | [FurnishingStatus](#furnishingstatus) |
| `effectiveFrom` | `string` | No | Inclusive start of the window (ISO8601 date, YYYY-MM-DD); omit for unbounded in the past |
| `effectiveTo` | `string` | No | Exclusive end of the window (ISO8601 date, YYYY-MM-DD; first day the status no longer applies); omit for unbounded in the future |

### FurnishingStatus

| Value | Description |
| --- | --- |
| `FURNISHED` | The unit is fully furnished |
| `UNFURNISHED` | The unit is not furnished |
| `PART_FURNISHED` | The unit is partially furnished |

<!-- INPUT_BLOCK_END -->

<!-- OUTPUT_BLOCK_START -->

## Output

| Field | Type | Description |
| --- | --- | --- |
| `content` | `ContentItem[]` | Array of content items returned by the tool - [ContentItem](#contentitem) |
| `isError` | `boolean` | Whether the tool execution resulted in an error |

### ContentItem

| Field | Type | Description |
| --- | --- | --- |
| `type` | `'text'` | Content type (currently only 'text' is supported) |
| `text` | `string` | The text content to display |

<!-- OUTPUT_BLOCK_END -->
