All tools
ToolDestructive
Set image focal point
set_image_focal_pointYou need to create, inspect, revise, cite, or add images to article drafts.
When to use it
You need to create, inspect, revise, cite, or add images to article drafts.
Typical workflow
List or read drafts, make complete replacement edits with optimistic concurrency, and insert visual blocks at stable markers.
What it returns
Draft metadata, editable draft bodies, update timestamps, embeds, or image blocks.
Avoid using it when
You need to publish, schedule, delete, or email a post; those are human-only.
Advanced input contract
Agent hosts use this JSON Schema to validate the exact input shape.
View full registry notes
Set normalized x/y focal coordinates for the article cover. Preview this operation with mode=preview and a stable idempotencyKey. After approval, commit with mode=commit, operationId and commitToken only; saved preview fields cannot be replaced.
View JSON Schema
{
"type": "object",
"properties": {
"documentId": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
},
"expectedUpdatedAt": {
"type": "string",
"format": "date-time",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"
},
"focalPoint": {
"type": "object",
"properties": {
"x": {
"type": "number",
"minimum": 0,
"maximum": 1
},
"y": {
"type": "number",
"minimum": 0,
"maximum": 1
}
},
"required": [
"x",
"y"
]
},
"mode": {
"type": "string",
"enum": [
"preview",
"commit"
]
},
"idempotencyKey": {
"type": "string",
"minLength": 1,
"maxLength": 500
},
"operationId": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
},
"commitToken": {
"type": "string",
"minLength": 1,
"maxLength": 500
}
},
"required": [
"mode"
],
"additionalProperties": false,
"anyOf": [
{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"documentId": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
},
"expectedUpdatedAt": {
"type": "string",
"format": "date-time",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"
},
"focalPoint": {
"type": "object",
"properties": {
"x": {
"type": "number",
"minimum": 0,
"maximum": 1
},
"y": {
"type": "number",
"minimum": 0,
"maximum": 1
}
},
"required": [
"x",
"y"
]
},
"mode": {
"type": "string",
"const": "preview"
},
"idempotencyKey": {
"type": "string",
"minLength": 1,
"maxLength": 500
}
},
"required": [
"documentId",
"expectedUpdatedAt",
"focalPoint",
"mode",
"idempotencyKey"
],
"additionalProperties": false
},
{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"mode": {
"type": "string",
"const": "commit"
},
"operationId": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
},
"commitToken": {
"type": "string",
"minLength": 1,
"maxLength": 500
}
},
"required": [
"mode",
"operationId",
"commitToken"
],
"additionalProperties": false
}
]
}