← WebMCP Directory

Tool tree

webroom.openai.chatgpt.site

demoMedia & PersonalTools verified
Website
A private, browser-based photo editor with precise manual controls and agent-ready WebMCP tools.
Explore capabilities
    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
      }
    }