gradeNot graded
list_projectsAnswer
List the projects available in printable.photos. Project IDs are intentionally not exposed; use project names with switch_project.
View tool JSON
{
"name": "list_projects",
"kind": "answer",
"impl": "imperative",
"description": "List the projects available in printable.photos. Project IDs are intentionally not exposed; use project names with switch_project.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
}
}create_projectAction
Create a new printable.photos project by name. The new project becomes the current project.
View tool JSON
{
"name": "create_project",
"kind": "act",
"impl": "imperative",
"description": "Create a new printable.photos project by name. The new project becomes the current project.",
"inputSchema": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Name for the new project."
}
},
"required": [
"name"
],
"additionalProperties": false
}
}switch_projectAction
Switch the UI to an existing project by exact project name. Project IDs are not accepted.
View tool JSON
{
"name": "switch_project",
"kind": "act",
"impl": "imperative",
"description": "Switch the UI to an existing project by exact project name. Project IDs are not accepted.",
"inputSchema": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Exact name of the project to make current."
}
},
"required": [
"name"
],
"additionalProperties": false
}
}rename_projectAction
Rename the currently selected printable.photos project. Project IDs are not accepted.
View tool JSON
{
"name": "rename_project",
"kind": "act",
"impl": "imperative",
"description": "Rename the currently selected printable.photos project. Project IDs are not accepted.",
"inputSchema": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "New name for the current project."
}
},
"required": [
"name"
],
"additionalProperties": false
}
}get_current_projectAnswer
Get the currently selected project, UI-configurable settings, and current project images. Internal unit settings are intentionally omitted.
View tool JSON
{
"name": "get_current_project",
"kind": "answer",
"impl": "imperative",
"description": "Get the currently selected project, UI-configurable settings, and current project images. Internal unit settings are intentionally omitted.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
}
}update_settingsAction
Update settings available in the UI for the current project: page preset or custom page size, page margin, page gap, image crop, image width, and rotation. Internal unit settings are intentionally not exposed. Explicit pageWidth/pageHeight values override pagePreset dimensions.
View tool JSON
{
"name": "update_settings",
"kind": "act",
"impl": "imperative",
"description": "Update settings available in the UI for the current project: page preset or custom page size, page margin, page gap, image crop, image width, and rotation. Internal unit settings are intentionally not exposed. Explicit pageWidth/pageHeight values override pagePreset dimensions.",
"inputSchema": {
"type": "object",
"properties": {
"pagePreset": {
"type": "string",
"enum": [
"4x6",
"5x7",
"8x10",
"Letter",
"Legal",
"Tabloid"
],
"description": "Optional UI page preset to apply."
},
"pageWidth": {
"type": "number",
"description": "Custom page width using the same numeric value shown in the UI."
},
"pageHeight": {
"type": "number",
"description": "Custom page height using the same numeric value shown in the UI."
},
"pageMargin": {
"type": "number",
"description": "Page margin value shown in the UI. Must be zero or greater."
},
"pageGap": {
"type": "number",
"description": "Gap between images shown in the UI. Must be zero or greater."
},
"imageCrop": {
"type": "string",
"enum": [
"original",
"square"
],
"description": "Image crop option shown in the UI."
},
"imageWidth": {
"type": "number",
"description": "Image width value shown in the UI. Must be greater than zero."
},
"allowRotation": {
"type": "boolean",
"description": "Whether photos may be rotated to reduce total page count."
}
},
"additionalProperties": false
}
}upload_imagesAction
Upload one or more images into the currently selected project. Prefer hosted URLs or local server http(s) URLs for each image. Base64 image data URLs are accepted when needed. For URLs served by another origin, servers should allow cross-origin reads from https://printable.photos with CORS headers, otherwise the images cannot be read by this page.
View tool JSON
{
"name": "upload_images",
"kind": "act",
"impl": "imperative",
"description": "Upload one or more images into the currently selected project. Prefer hosted URLs or local server http(s) URLs for each image. Base64 image data URLs are accepted when needed. For URLs served by another origin, servers should allow cross-origin reads from https://printable.photos with CORS headers, otherwise the images cannot be read by this page.",
"inputSchema": {
"type": "object",
"properties": {
"images": {
"type": "array",
"minItems": 1,
"description": "Images to upload into the current project.",
"items": {
"type": "object",
"properties": {
"url": {
"type": "string",
"description": "Prefer a hosted or local server http(s) URL for an image that permits CORS reads from this page. Base64 image data URLs are accepted when needed."
},
"name": {
"type": "string",
"description": "Optional file name to use in the project."
}
},
"required": [
"url"
],
"additionalProperties": false
}
}
},
"required": [
"images"
],
"additionalProperties": false
}
}delete_imageSensitive Action
Delete an image from the currently selected project by imageId as returned by get_current_project or upload_images. Images outside the current project are not affected.
View tool JSON
{
"name": "delete_image",
"kind": "transact",
"impl": "imperative",
"description": "Delete an image from the currently selected project by imageId as returned by get_current_project or upload_images. Images outside the current project are not affected.",
"inputSchema": {
"type": "object",
"properties": {
"imageId": {
"type": "string",
"description": "Image ID from the currently selected project."
}
},
"required": [
"imageId"
],
"additionalProperties": false
}
}