| name | image-editor |
| description | Image Editor: Edit images: blur, crop, resize, rotate, invert colors. Use when an agent needs image editor, generating branded social media graphics by compositing logos onto product images, automating thumbnail creation by resizing and cropping uploaded images to standard dimensions, adding watermarks or copyright text overlays to protect visual content, creating placeholder images with custom colors and dimensions for ui mockups, blur, image base64, image url through AgentPMT-hosted remote. |
| version | 1.0.0 |
| homepage | https://www.agentpmt.com/marketplace/image-editor |
| compatibility | Agent instructions for AgentPMT-hosted remote tool calls. Follow this skill body for supported account, wallet, and setup routes. No local command runtime is declared. |
| metadata | {"author":"agentpmt","openclaw":{"homepage":"https://www.agentpmt.com/marketplace/image-editor"}} |
Image Editor
Freshness
Last updated: 2026-06-23.
If the current date is more than 7 days after the last updated date, reinstall this skill from skills.sh or ClawHub before relying on endpoints, schemas, setup steps, or examples.
What This Tool Does
Edit and transform images without any design software. Resize, crop, rotate, blur, invert colors, add borders, draw shapes, overlay text, composite layers, remove backgrounds, and apply shear transforms — all from a single tool. Chain multiple operations together in one request to build complete editing workflows like watermarking, thumbnail generation, or branded graphics. Supports PNG, JPEG, and WebP input and output. Upload an image, provide a URL, or reference a file already in cloud storage, and get your edited result back as a stored file with a shareable link or as inline data ready to use immediately.
Product Instructions
Image Editor - Instructions
Overview
The Image Editor tool provides programmatic image manipulation capabilities including resizing, cropping, rotating, drawing shapes, adding text, compositing layers, applying blur effects, adding borders, creating transparent regions, inverting colors, and more. Operations can be chained together using multi_step mode.
Image Input
Every action (except create) requires an image input via one of:
- image_url - Public URL to a PNG, JPG, or WebP image
- image_base64 - Base64-encoded image data
- file_id - File ID from cloud storage (from a previous upload or edit)
Common Output Options
| Parameter | Type | Default | Description |
|---|
| output_format | string | "png" | Output format: png, jpeg, or webp |
| filename | string | "edited.<ext>" | Filename for the stored output |
| store_file | boolean | true | Store the result in cloud storage (returns file_id and signed_url) |
| return_base64 | boolean | false | Also return the image as inline base64 (max 10 MB) |
Actions
info
Get image dimensions and mode without modifying it.
Required: An image input (image_url, image_base64, or file_id)
Optional params: None
Example:
{
"action": "info",
"image_url": "https://example.com/photo.png"
}
create
Create a new blank image canvas.
Required: None (defaults apply)
Optional params:
| Param | Type | Default | Description |
|---|
| width | integer | 512 | Canvas width in pixels |
| height | integer | 512 | Canvas height in pixels |
| color | string/array | "#ffffff" | Fill color (hex string, RGB array, or RGBA array) |
Example:
{
"action": "create",
"params": { "width": 800, "height": 600, "color": "#ff0000" }
}
resize
Resize an image to specific dimensions or by a scale factor.
Required: An image input + either width/height or scale in params
Optional params:
| Param | Type | Description |
|---|
| width | integer | Target width in pixels |
| height | integer | Target height in pixels |
| scale | float | Scale factor (e.g., 0.5 for half size, 2.0 for double) |
Example (explicit dimensions):
{
"action": "resize",
"image_url": "https://example.com/photo.png",
"params": { "width": 256, "height": 256 }
}
Example (scale factor):
{
"action": "resize",
"file_id": "abc123",
"params": { "scale": 0.5 }
}
crop
Crop an image to a rectangular region.
Required: An image input + box in params
Optional params: None beyond the required box
| Param | Type | Description |
|---|
| box | array of 4 ints | Crop region as [left, top, right, bottom] in pixels |
Example:
{
"action": "crop",
"image_url": "https://example.com/photo.png",
"params": { "box": [50, 50, 300, 300] }
}
rotate
Rotate an image by a specified number of degrees.
Required: An image input
Optional params:
| Param | Type | Default | Description |
|---|
| degrees | float | 0 | Rotation angle in degrees (counter-clockwise) |
| expand | boolean | true | Expand canvas to fit rotated image |
Example:
{
"action": "rotate",
"image_url": "https://example.com/photo.png",
"params": { "degrees": 90 }
}
blur
Apply Gaussian blur to an image.
Required: An image input
Optional params:
| Param | Type | Default | Description |
|---|
| radius | float | 2.0 | Blur radius (higher = more blur) |
Example:
{
"action": "blur",
"file_id": "abc123",
"params": { "radius": 5.0 }
}
border
Add a solid-color border around an image.
Required: An image input
Optional params:
| Param | Type | Default | Description |
|---|
| size | integer | 10 | Border width in pixels |
| color | string/array | "#000000" | Border color |
Example:
{
"action": "border",
"image_url": "https://example.com/photo.png",
"params": { "size": 20, "color": "#0000ff" }
}
invert
Invert all colors in an image, producing a photographic negative effect. Each RGB pixel value is replaced with 255 minus its original value. Alpha transparency is preserved on RGBA images.
Required: An image input (image_url, image_base64, or file_id)
Optional params: None
Example:
{
"action": "invert",
"image_url": "https://example.com/photo.png"
}
Example (with file_id):
{
"action": "invert",
"file_id": "abc123",
"output_format": "png",
"store_file": true
}
text
Draw text onto an image.
Required: An image input + text in params
Optional params:
| Param | Type | Default | Description |
|---|
| text | string | (required) | The text to draw |
| x | integer | 0 | X position in pixels |
| y | integer | 0 | Y position in pixels |
| size | integer | 20 | Font size |
| color | string/array | "#000000" | Text color |
Example:
{
"action": "text",
"image_url": "https://example.com/photo.png",
"params": { "text": "Hello World", "x": 50, "y": 100, "size": 36, "color": "#ffffff" }
}
draw
Draw shapes (line, rectangle, or ellipse) onto an image.
Required: An image input + coordinates in params
Optional params:
| Param | Type | Default | Description |
|---|
| shape | string | "line" | Shape type: line, rectangle, or ellipse |
| coordinates | array | (required) | Coordinate pairs (e.g., [x1, y1, x2, y2]) |
| fill | string/array | "#000000" | Fill color |
| outline | string/array | "#000000" | Outline color (rectangle and ellipse) |
| width | integer | 1 | Line/outline width in pixels |
Example (rectangle):
{
"action": "draw",
"image_url": "https://example.com/photo.png",
"params": {
"shape": "rectangle",
"coordinates": [10, 10, 200, 150],
"fill": "#ff000080",
"outline": "#ff0000",
"width": 3
}
}
composite
Overlay one image on top of another with optional opacity.
Required: An image input (the base) + an overlay image via one of: overlay_url, overlay_base64, or overlay_file_id in params
Optional params:
| Param | Type | Default | Description |
|---|
| overlay_url | string | — | URL of the overlay image |
| overlay_base64 | string | — | Base64-encoded overlay image |
| overlay_file_id | string | — | File ID of the overlay image |
| position | array | [0, 0] | [x, y] position to place the overlay |
| opacity | float | 1.0 | Overlay opacity (0.0 to 1.0) |
Example:
{
"action": "composite",
"image_url": "https://example.com/background.png",
"params": {
"overlay_url": "https://example.com/logo.png",
"position": [50, 50],
"opacity": 0.8
}
}
shear
Apply an affine shear transformation to an image.
Required: An image input
Optional params:
| Param | Type | Default | Description |
|---|
| x | float | 0 | Horizontal shear factor |
| y | float | 0 | Vertical shear factor |
Example:
{
"action": "shear",
"image_url": "https://example.com/photo.png",
"params": { "x": 0.3, "y": 0.0 }
}
transparent
Make a specific color transparent in the image.
Required: An image input
Optional params:
| Param | Type | Default | Description |
|---|
| color | string/array | "#ffffff" | The color to make transparent |
Example:
{
"action": "transparent",
"image_url": "https://example.com/icon.png",
"params": { "color": "#ffffff" },
"output_format": "png"
}
multi_step
Chain multiple operations together in a single request. Each operation is applied sequentially.
Required: An image input (or use a create operation first) + operations array
operations is an array of objects, each with:
| Field | Type | Description |
|---|
| action | string | Any single action listed above (not multi_step or info) |
| params | object | Parameters for that action |
Example:
{
"action": "multi_step",
"image_url": "https://example.com/photo.png",
"operations": [
{ "action": "resize", "params": { "width": 400, "height": 300 } },
{ "action": "invert", "params": {} },
{ "action": "border", "params": { "size": 5, "color": "#333333" } },
Color Format
Colors can be specified as:
- Hex string:
"#RRGGBB" or "#RRGGBBAA"
- RGB array:
[255, 0, 0]
- RGBA array:
[255, 0, 0, 128]
- Comma-separated string:
"255,0,0" or "255,0,0,128"
Common Workflows
- Resize and watermark: Use
multi_step with resize then text to add a watermark label.
- Create branded image: Use
create to make a canvas, then multi_step with composite to overlay a logo and text for copy.
- Thumbnail generation: Use
resize with a scale factor or explicit small dimensions, output as jpeg for smaller file size.
- Remove white background: Use
transparent with color: "#ffffff" and output as png to preserve transparency.
- Annotate a screenshot: Use
multi_step with draw (rectangles for highlights) and text (labels).
- Create dark mode variant: Use
invert to flip all colors, useful for generating negative versions of light-themed assets.
- Accessibility contrast check: Use
invert to preview how content reads with reversed colors.
Important Notes
- Output is stored in cloud storage by default (store_file=true) and returns a
file_id and signed_url.
- Use
file_id from a previous result as input for follow-up edits.
- The
info action returns dimensions and mode without producing an output image.
- The
create action does not require any image input.
- For
multi_step, operations are applied in order; each step modifies the image from the previous step.
- Inline base64 output (return_base64=true) is limited to 10 MB.
- Stored files expire after 7 days.
When To Use
- Use this skill for
Image Editor on AgentPMT.
- Use it when an agent needs this specific tool's behavior, schema, inputs, outputs, and invocation shape.
- Search and activation keywords: image editor, generating branded social media graphics by compositing logos onto product images, automating thumbnail creation by resizing and cropping uploaded images to standard dimensions, adding watermarks or copyright text overlays to protect visual content, creating placeholder images with custom colors and dimensions for ui mockups, blur, image base64, image url.
- Supported action names:
blur, border, composite, create, crop, draw, info, invert, multi_step, resize, rotate, shear, text, transparent.
Use Cases
- Generating branded social media graphics by compositing logos onto product images
- automating thumbnail creation by resizing and cropping uploaded images to standard dimensions
- adding watermarks or copyright text overlays to protect visual content
- creating placeholder images with custom colors and dimensions for UI mockups
- batch processing profile photos with consistent borders and formatting
- applying blur effects to sensitive regions before sharing screenshots
- building dynamic certificate or badge generators with text overlays
- removing white backgrounds from product images using transparency conversion
- preparing images for web optimization by converting formats and resizing for performance
- chaining multi-step edits to rotate
- crop
- resize
- and watermark images in a single automated workflow
- inverting image colors to create negative versions for dark mode assets or artistic effects
- generating high-contrast inverted previews for accessibility testing
Related Product Skills
Categories And Industries
No categories or industry tags are published for this tool.
Actions And Schema
Complete generated action schema: ./schema.md.
Supported action count: 14.
x402 availability: not enabled for this product.
blur (action slug: blur): Apply Gaussian blur to an image. Price: 10 credits. Parameters: file_id, filename, image_base64, image_url, output_format, params, return_base64, store_file.
border (action slug: border): Add a solid-color border around an image. Price: 10 credits. Parameters: file_id, filename, image_base64, image_url, output_format, params, return_base64, store_file.
composite (action slug: composite): Overlay one image on top of another with optional opacity. Price: 10 credits. Parameters: file_id, filename, image_base64, image_url, output_format, params, return_base64, store_file.
create (action slug: create): Create a new blank image canvas with custom dimensions and background color. Price: 10 credits. Parameters: filename, output_format, params, return_base64, store_file.
crop (action slug: crop): Crop an image to a rectangular region defined by [left, top, right, bottom] coordinates. Price: 10 credits. Parameters: file_id, filename, image_base64, image_url, output_format, params, return_base64, store_file.
draw (action slug: draw): Draw shapes (line, rectangle, or ellipse) onto an image. Price: 10 credits. Parameters: file_id, , , , , , , .
Live Schema And Examples
Use the compact schema above for ordinary calls. Before a new production integration, or whenever parameters, enum values, nested objects, outputs, or examples are unclear, fetch live details first.
- Exact schema: call
agentpmt-tool-search-and-execution with action: "get_schema", and tool_id: "image-editor".
- Detailed examples: call
agentpmt-tool-search-and-execution with action: "get_instructions" and tool_id: "image-editor", or call this product with action: "get_instructions" when the product tool is already selected.
- Treat returned live schema and instructions as more specific than this generated summary.
MCP schema lookup through the main AgentPMT MCP server:
{
"method": "tools/call",
"params": {
"name": "AgentPMT-Tool-Search-and-Execution",
"arguments": {
"action": "get_schema",
"tool_id": "image-editor"
}
}
}
For live examples, keep the same MCP tool and use these arguments:
{
"action": "get_instructions",
"tool_id": "image-editor"
}
Authenticated AgentPMT REST schema lookup body:
{
"name": "agentpmt-tool-search-and-execution",
"parameters": {
"action": "get_schema",
"tool_id": "image-editor"
}
}
Authenticated AgentPMT REST live examples body:
{
"name": "agentpmt-tool-search-and-execution",
"parameters": {
"action": "get_instructions",
"tool_id": "image-editor"
}
}
Call This Tool
Product slug: image-editor
Marketplace page: https://www.agentpmt.com/marketplace/image-editor
- AgentPMT account route: first use
../agentpmt-account-mcp-rest-api-setup to connect the main MCP server or REST API for an Agent Group where this tool is enabled.
- x402 route: not enabled for this product.
- AgentPMT overview: use
../what-is-agentpmt for marketplace, Agent Group, workflow, MCP, REST, and payment concepts.
If those setup skills are not installed beside this product skill, use the downloads below.
Core AgentPMT setup skills:
- What AgentPMT is: ../what-is-agentpmt
- AgentPMT account MCP/REST setup: ../agentpmt-account-mcp-rest-api-setup
skills.sh install script:
npx skills add AgentPMT/agent-skills --skill what-is-agentpmt
npx skills add AgentPMT/agent-skills --skill agentpmt-account-mcp-rest-api-setup
MCP call shape after the main AgentPMT MCP server is connected:
{
"method": "tools/call",
"params": {
"name": "Image-Editor",
"arguments": {
"action": "blur",
"file_id": "example file id",
"filename": "example filename",
"image_base64": "example image base64",
"image_url": "https://example.com",
"output_format": "png",
"params": {
"radius": 2
},
"return_base64": false,
"store_file": true
}
Use the exact tool name returned by tools/list; the name above is the expected readable form.
Authenticated AgentPMT REST call body:
{
"name": "image-editor",
"parameters": {
"action": "blur",
"file_id": "example file id",
"filename": "example filename",
"image_base64": "example image base64",
"image_url": "https://example.com",
"output_format": "png",
"params": {
"radius": 2
},
"return_base64": false,
"store_file": true
}
}
Use the setup skill for the account connection details before making REST calls.
Response Handling
- Treat the returned JSON as the source of truth for this tool call.
- If the response includes warnings or correction targets, apply them before retrying.
- If the response includes a
passed or success-style boolean, use it as the workflow gate.
- If validation fails or the response shape is unclear, call
get_schema or get_instructions before retrying.
- If
blur fails, preserve the request parameters and retry only after fixing schema, auth, or payment errors.
Security
- Do not place account secrets, wallet private keys, mnemonics, signatures, or payment headers in prompts or logs.
- Keep tool inputs scoped to the minimum content needed for the task.
- Use the setup skills for credential handling; this product skill only defines product-specific behavior.
AgentPMT Reference