Tool tree
get_document_infoAnswer
Get safe metadata for the active Webroom image, including source and current output pixel dimensions, revision, dirty state, and history counts.
View tool JSON
{
"name": "get_document_info",
"kind": "answer",
"impl": "imperative",
"description": "Get safe metadata for the active Webroom image, including source and current output pixel dimensions, revision, dirty state, and history counts.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
}
}get_edit_stateAnswer
Get every manual adjustment, non-destructive geometry value, independently selected filter, and revision for the active image. Manual values are applied on top of the filter.
View tool JSON
{
"name": "get_edit_state",
"kind": "answer",
"impl": "imperative",
"description": "Get every manual adjustment, non-destructive geometry value, independently selected filter, and revision for the active image. Manual values are applied on top of the filter.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
}
}get_edit_historyAnswer
Get concise ordered edit history and redo entries. Returns command summaries and sources without pixel data.
View tool JSON
{
"name": "get_edit_history",
"kind": "answer",
"impl": "imperative",
"description": "Get concise ordered edit history and redo entries. Returns command summaries and sources without pixel data.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
}
}get_image_previewAnswer
Return an original or edited image preview as a bounded data URL. maxDimension is 64–2048 pixels and quality is 1–100.
View tool JSON
{
"name": "get_image_preview",
"kind": "answer",
"impl": "imperative",
"description": "Return an original or edited image preview as a bounded data URL. maxDimension is 64–2048 pixels and quality is 1–100.",
"inputSchema": {
"type": "object",
"properties": {
"variant": {
"type": "string",
"enum": [
"original",
"edited"
],
"default": "edited",
"description": "Whether to render the untouched source or current edit."
},
"format": {
"type": "string",
"enum": [
"jpeg",
"png",
"webp"
],
"default": "jpeg"
},
"maxDimension": {
"type": "integer",
"minimum": 64,
"maximum": 2048,
"default": 1024
},
"quality": {
"type": "integer",
"minimum": 1,
"maximum": 100,
"default": 85
}
},
"additionalProperties": false
}
}open_image_from_urlAction
Open a JPEG, PNG, or WebP from an HTTPS URL using a CORS request without credentials. Set replace true only to discard unexported edits.
View tool JSON
{
"name": "open_image_from_url",
"kind": "act",
"impl": "imperative",
"description": "Open a JPEG, PNG, or WebP from an HTTPS URL using a CORS request without credentials. Set replace true only to discard unexported edits.",
"inputSchema": {
"type": "object",
"properties": {
"url": {
"type": "string",
"description": "Required HTTPS image URL."
},
"filename": {
"type": "string",
"description": "Optional safe display filename."
},
"replace": {
"type": "boolean",
"default": false
}
},
"required": [
"url"
],
"additionalProperties": false
}
}open_image_from_data_urlAction
Open a JPEG, PNG, or WebP data URL up to 12 MiB encoded length. Set replace true only to discard unexported edits.
View tool JSON
{
"name": "open_image_from_data_url",
"kind": "act",
"impl": "imperative",
"description": "Open a JPEG, PNG, or WebP data URL up to 12 MiB encoded length. Set replace true only to discard unexported edits.",
"inputSchema": {
"type": "object",
"properties": {
"dataUrl": {
"type": "string",
"description": "Required supported image data URL."
},
"filename": {
"type": "string",
"description": "Optional safe display filename."
},
"replace": {
"type": "boolean",
"default": false
}
},
"required": [
"dataUrl"
],
"additionalProperties": false
}
}set_exposureAction
Set the manual exposure layer to an absolute value from -5 through 5. It is applied on top of the selected filter and creates one undoable edit.
View tool JSON
{
"name": "set_exposure",
"kind": "act",
"impl": "imperative",
"description": "Set the manual exposure layer to an absolute value from -5 through 5. It is applied on top of the selected filter and creates one undoable edit.",
"inputSchema": {
"type": "object",
"properties": {
"value": {
"type": "number",
"minimum": -5,
"maximum": 5,
"description": "Absolute exposure value."
}
},
"required": [
"value"
],
"additionalProperties": false
}
}set_brightnessAction
Set the manual brightness layer to an absolute value from -100 through 100. It is applied on top of the selected filter and creates one undoable edit.
View tool JSON
{
"name": "set_brightness",
"kind": "act",
"impl": "imperative",
"description": "Set the manual brightness layer to an absolute value from -100 through 100. It is applied on top of the selected filter and creates one undoable edit.",
"inputSchema": {
"type": "object",
"properties": {
"value": {
"type": "number",
"minimum": -100,
"maximum": 100,
"description": "Absolute brightness value."
}
},
"required": [
"value"
],
"additionalProperties": false
}
}set_contrastAction
Set the manual contrast layer to an absolute value from -100 through 100. It is applied on top of the selected filter and creates one undoable edit.
View tool JSON
{
"name": "set_contrast",
"kind": "act",
"impl": "imperative",
"description": "Set the manual contrast layer to an absolute value from -100 through 100. It is applied on top of the selected filter and creates one undoable edit.",
"inputSchema": {
"type": "object",
"properties": {
"value": {
"type": "number",
"minimum": -100,
"maximum": 100,
"description": "Absolute contrast value."
}
},
"required": [
"value"
],
"additionalProperties": false
}
}set_highlightsAction
Set the manual highlights layer to an absolute value from -100 through 100. It is applied on top of the selected filter and creates one undoable edit.
View tool JSON
{
"name": "set_highlights",
"kind": "act",
"impl": "imperative",
"description": "Set the manual highlights layer to an absolute value from -100 through 100. It is applied on top of the selected filter and creates one undoable edit.",
"inputSchema": {
"type": "object",
"properties": {
"value": {
"type": "number",
"minimum": -100,
"maximum": 100,
"description": "Absolute highlights value."
}
},
"required": [
"value"
],
"additionalProperties": false
}
}set_shadowsAction
Set the manual shadows layer to an absolute value from -100 through 100. It is applied on top of the selected filter and creates one undoable edit.
View tool JSON
{
"name": "set_shadows",
"kind": "act",
"impl": "imperative",
"description": "Set the manual shadows layer to an absolute value from -100 through 100. It is applied on top of the selected filter and creates one undoable edit.",
"inputSchema": {
"type": "object",
"properties": {
"value": {
"type": "number",
"minimum": -100,
"maximum": 100,
"description": "Absolute shadows value."
}
},
"required": [
"value"
],
"additionalProperties": false
}
}set_whitesAction
Set the manual whites layer to an absolute value from -100 through 100. It is applied on top of the selected filter and creates one undoable edit.
View tool JSON
{
"name": "set_whites",
"kind": "act",
"impl": "imperative",
"description": "Set the manual whites layer to an absolute value from -100 through 100. It is applied on top of the selected filter and creates one undoable edit.",
"inputSchema": {
"type": "object",
"properties": {
"value": {
"type": "number",
"minimum": -100,
"maximum": 100,
"description": "Absolute whites value."
}
},
"required": [
"value"
],
"additionalProperties": false
}
}set_blacksAction
Set the manual blacks layer to an absolute value from -100 through 100. It is applied on top of the selected filter and creates one undoable edit.
View tool JSON
{
"name": "set_blacks",
"kind": "act",
"impl": "imperative",
"description": "Set the manual blacks layer to an absolute value from -100 through 100. It is applied on top of the selected filter and creates one undoable edit.",
"inputSchema": {
"type": "object",
"properties": {
"value": {
"type": "number",
"minimum": -100,
"maximum": 100,
"description": "Absolute blacks value."
}
},
"required": [
"value"
],
"additionalProperties": false
}
}set_temperatureAction
Set the manual temperature layer to an absolute value from -100 through 100. It is applied on top of the selected filter and creates one undoable edit.
View tool JSON
{
"name": "set_temperature",
"kind": "act",
"impl": "imperative",
"description": "Set the manual temperature layer to an absolute value from -100 through 100. It is applied on top of the selected filter and creates one undoable edit.",
"inputSchema": {
"type": "object",
"properties": {
"value": {
"type": "number",
"minimum": -100,
"maximum": 100,
"description": "Absolute temperature value."
}
},
"required": [
"value"
],
"additionalProperties": false
}
}set_tintAction
Set the manual tint layer to an absolute value from -100 through 100. It is applied on top of the selected filter and creates one undoable edit.
View tool JSON
{
"name": "set_tint",
"kind": "act",
"impl": "imperative",
"description": "Set the manual tint layer to an absolute value from -100 through 100. It is applied on top of the selected filter and creates one undoable edit.",
"inputSchema": {
"type": "object",
"properties": {
"value": {
"type": "number",
"minimum": -100,
"maximum": 100,
"description": "Absolute tint value."
}
},
"required": [
"value"
],
"additionalProperties": false
}
}set_saturationAction
Set the manual saturation layer to an absolute value from -100 through 100. It is applied on top of the selected filter and creates one undoable edit.
View tool JSON
{
"name": "set_saturation",
"kind": "act",
"impl": "imperative",
"description": "Set the manual saturation layer to an absolute value from -100 through 100. It is applied on top of the selected filter and creates one undoable edit.",
"inputSchema": {
"type": "object",
"properties": {
"value": {
"type": "number",
"minimum": -100,
"maximum": 100,
"description": "Absolute saturation value."
}
},
"required": [
"value"
],
"additionalProperties": false
}
}set_vibranceAction
Set the manual vibrance layer to an absolute value from -100 through 100. It is applied on top of the selected filter and creates one undoable edit.
View tool JSON
{
"name": "set_vibrance",
"kind": "act",
"impl": "imperative",
"description": "Set the manual vibrance layer to an absolute value from -100 through 100. It is applied on top of the selected filter and creates one undoable edit.",
"inputSchema": {
"type": "object",
"properties": {
"value": {
"type": "number",
"minimum": -100,
"maximum": 100,
"description": "Absolute vibrance value."
}
},
"required": [
"value"
],
"additionalProperties": false
}
}set_sharpeningAction
Set the manual sharpening layer to an absolute value from 0 through 100. It is applied on top of the selected filter and creates one undoable edit.
View tool JSON
{
"name": "set_sharpening",
"kind": "act",
"impl": "imperative",
"description": "Set the manual sharpening layer to an absolute value from 0 through 100. It is applied on top of the selected filter and creates one undoable edit.",
"inputSchema": {
"type": "object",
"properties": {
"value": {
"type": "number",
"minimum": 0,
"maximum": 100,
"description": "Absolute sharpening value."
}
},
"required": [
"value"
],
"additionalProperties": false
}
}set_blurAction
Set the manual blur layer to an absolute value from 0 through 100. It is applied on top of the selected filter and creates one undoable edit.
View tool JSON
{
"name": "set_blur",
"kind": "act",
"impl": "imperative",
"description": "Set the manual blur layer to an absolute value from 0 through 100. It is applied on top of the selected filter and creates one undoable edit.",
"inputSchema": {
"type": "object",
"properties": {
"value": {
"type": "number",
"minimum": 0,
"maximum": 100,
"description": "Absolute blur value."
}
},
"required": [
"value"
],
"additionalProperties": false
}
}apply_filterAction
Select one canonical Webroom filter as an independent undoable layer. Manual adjustment values are preserved; use none to remove only the filter.
View tool JSON
{
"name": "apply_filter",
"kind": "act",
"impl": "imperative",
"description": "Select one canonical Webroom filter as an independent undoable layer. Manual adjustment values are preserved; use none to remove only the filter.",
"inputSchema": {
"type": "object",
"properties": {
"filter": {
"type": "string",
"enum": [
"none",
"vivid",
"warm",
"cool",
"mono",
"film",
"fade"
]
}
},
"required": [
"filter"
],
"additionalProperties": false
}
}crop_imageAction
Crop using whole-pixel x, y, width, and height in the current oriented image coordinates returned by get_document_info.
View tool JSON
{
"name": "crop_image",
"kind": "act",
"impl": "imperative",
"description": "Crop using whole-pixel x, y, width, and height in the current oriented image coordinates returned by get_document_info.",
"inputSchema": {
"type": "object",
"properties": {
"x": {
"type": "integer",
"minimum": 0
},
"y": {
"type": "integer",
"minimum": 0
},
"width": {
"type": "integer",
"minimum": 1
},
"height": {
"type": "integer",
"minimum": 1
}
},
"required": [
"x",
"y",
"width",
"height"
],
"additionalProperties": false
}
}rotate_imageAction
Rotate the active image by -90, 90, or 180 degrees. Positive values rotate clockwise.
View tool JSON
{
"name": "rotate_image",
"kind": "act",
"impl": "imperative",
"description": "Rotate the active image by -90, 90, or 180 degrees. Positive values rotate clockwise.",
"inputSchema": {
"type": "object",
"properties": {
"degrees": {
"type": "integer",
"enum": [
-90,
90,
180
]
}
},
"required": [
"degrees"
],
"additionalProperties": false
}
}flip_imageAction
Flip the active image across its horizontal or vertical axis.
View tool JSON
{
"name": "flip_image",
"kind": "act",
"impl": "imperative",
"description": "Flip the active image across its horizontal or vertical axis.",
"inputSchema": {
"type": "object",
"properties": {
"axis": {
"type": "string",
"enum": [
"horizontal",
"vertical"
]
}
},
"required": [
"axis"
],
"additionalProperties": false
}
}resize_imageAction
Resize to positive whole-pixel dimensions. Supply width, height, or both; one omitted dimension preserves aspect ratio.
View tool JSON
{
"name": "resize_image",
"kind": "act",
"impl": "imperative",
"description": "Resize to positive whole-pixel dimensions. Supply width, height, or both; one omitted dimension preserves aspect ratio.",
"inputSchema": {
"type": "object",
"properties": {
"width": {
"type": "integer",
"minimum": 1
},
"height": {
"type": "integer",
"minimum": 1
}
},
"additionalProperties": false
}
}undo_editAction
Undo one committed human or agent edit in the active Webroom document.
View tool JSON
{
"name": "undo_edit",
"kind": "act",
"impl": "imperative",
"description": "Undo one committed human or agent edit in the active Webroom document.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
}
}redo_editAction
Redo one previously undone edit in the active Webroom document.
View tool JSON
{
"name": "redo_edit",
"kind": "act",
"impl": "imperative",
"description": "Redo one previously undone edit in the active Webroom document.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
}
}reset_editsAction
Reset all adjustments and geometry to the untouched source as one undoable command.
View tool JSON
{
"name": "reset_edits",
"kind": "act",
"impl": "imperative",
"description": "Reset all adjustments and geometry to the untouched source as one undoable command.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
}
}export_imageAction
Export the current full-resolution edit as JPEG, PNG, or WebP. Delivery defaults to a local download; bounded data_url delivery returns image data.
View tool JSON
{
"name": "export_image",
"kind": "act",
"impl": "imperative",
"description": "Export the current full-resolution edit as JPEG, PNG, or WebP. Delivery defaults to a local download; bounded data_url delivery returns image data.",
"inputSchema": {
"type": "object",
"properties": {
"format": {
"type": "string",
"enum": [
"jpeg",
"png",
"webp"
]
},
"quality": {
"type": "integer",
"minimum": 1,
"maximum": 100,
"default": 90
},
"delivery": {
"type": "string",
"enum": [
"download",
"data_url"
],
"default": "download"
}
},
"required": [
"format"
],
"additionalProperties": false
}
}