duplicate_condition
Creates a linked twin of an existing condition with a required label, inheriting and following its materials list while allowing row-level overrides for the new area.
Instructions
Twin a condition — the same finish measured somewhere else, with its own supporting materials. One finish in two areas is not two conditions and it is not one either: the same sheet goods over a slab and over a raised deck take the same field material and different preparation underneath (one wants a moisture barrier, the other a primer and a different adhesive). The twin arrives carrying the original's whole materials list and keeps FOLLOWING it — change a coverage rate on the original and every twin that has not touched that row gets it; edit a row on the twin and only THAT row stops following. label is REQUIRED and becomes the tag suffix ('CPT-1' + 'Level 2' → 'CPT-1 – Level 2'), because every tool in this server resolves a condition by finish tag and takes the FIRST match: two conditions sharing a tag would make one permanently unreachable, and a takeoff re-import collapses them last-wins. A label already in use is refused rather than de-collided. No takeoffs come along — measure the new area against the returned condition_id. Reversible with undo_last; use split_condition to end the inheritance permanently.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"condition": "<condition>",
"label": "<label>"
},
"name": "duplicate_condition"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| label | Yes | What makes this one different, usually the area: 'Level 2', 'Building B', 'Phase 2' | |
| condition | Yes | Finish tag of the condition to twin, e.g. 'CPT-1' |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| note | Yes | ||
| condition | Yes | The twin's finish tag — base tag + the label, e.g. 'CPT-1 – Level 2' | |
| family_id | Yes | Shared by every variant of this finish — survives a split | |
| variant_of | Yes | The condition whose material rows this one follows | |
| condition_id | Yes | The TWIN — measure the new area against this | |
| variant_label | Yes | ||
| inherited_rows | Yes | Material rows copied, all still following the original |