Inspect Artwork Image
inspect_artwork_imageProvides image data for AI visual analysis of an artwork or region, allowing detailed inspection of inscriptions, details, or multi-panel works using percentage or pixel coordinates.
Instructions
Returns image bytes (base64) for the LLM's own visual analysis of an artwork or region. The LLM can see and reason about the image immediately — not for the user to view (use get_artwork_image for the interactive viewer). Not for listing or summarising artworks — use search_artwork.
Use with region 'full' (default) to inspect the complete artwork, or specify a region to zoom into details, read inscriptions, or examine specific areas. The response includes cropPixelWidth/cropPixelHeight: the actual pixel dimensions of the returned image.
Region coordinates: 'pct:x,y,w,h' (percentage of full image, recommended), 'crop_pixels:x,y,w,h' (pixel coordinates of the full image — use with nativeWidth/nativeHeight from a prior response), or 'x,y,w,h' (legacy IIIF pixels, equivalent to crop_pixels). Quick reference:
Top-left quarter: pct:0,0,50,50
Bottom-right quarter: pct:50,50,50,50
Center strip: pct:25,25,50,50
Full image: full (default)
For multi-panel works: use physical dimensions from get_artwork_details to estimate panel percentages, then inspect individual panels with close-up crops.
Iterative zoom: start with region 'full' to understand the layout, then use close-up crops (600–800px) to read specific features. When a viewer is open for this artwork, it automatically zooms to the inspected region (navigateViewer defaults to true, no effect when region is 'full'), keeping the viewer in sync with your analysis — no separate navigate_viewer call needed for basic zoom.
The response includes the active viewUUID (if any) for follow-up navigate_viewer calls.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| size | No | Width of returned image in pixels (200–2016, default 1568). Defaults align to multiples of 28 for clean LLM coordinate handling: 1568 is Sonnet 4.6's native resolution cap, 2016 is the highest ×28 multiple that stays within Opus 4.7's per-image token budget across common aspect ratios. | |
| region | No | IIIF region: 'full', 'square', 'pct:x,y,w,h' (percentage), 'crop_pixels:x,y,w,h' (pixels of the full image — use with nativeWidth/nativeHeight from a prior response), or 'x,y,w,h' (legacy IIIF pixels, equivalent to crop_pixels). E.g. 'pct:0,60,40,40' for bottom-left 40%. | full |
| quality | No | Image quality — 'gray' can help read inscriptions or signatures | default |
| rotation | No | Clockwise rotation in degrees | |
| viewUUID | No | Target a specific viewer session (from get_artwork_image). When omitted, auto-discovers a viewer for this artwork. | |
| objectNumber | Yes | The object number of the artwork (e.g. 'SK-C-5') | |
| navigateViewer | No | Auto-navigate the open viewer to the inspected region (default: true). Only effective when a viewer is open for this artwork. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| error | No | ||
| title | No | Artwork title — mirrors the caption in the text/image channel so structuredContent readers retain it. | |
| region | Yes | ||
| creator | No | Artwork creator — mirrors the caption in the text/image channel. | |
| quality | Yes | ||
| rotation | Yes | ||
| viewUUID | No | Active viewer session ID (if a viewer is open for this artwork) | |
| cropRegion | No | Normalized IIIF region used for the fetch; crop_pixels: inputs are normalized to plain IIIF pixel regions. | |
| fetchTimeMs | No | Time spent fetching from IIIF server (ms) | |
| nativeWidth | No | ||
| nativeHeight | No | ||
| objectNumber | Yes | ||
| requestedSize | Yes | ||
| cropPixelWidth | No | Actual width in pixels of the returned inspect image/crop. Use with cropPixelHeight for crop-local pixel overlays. | |
| regionRecovery | No | Out-of-bounds recovery hint. Present only on an `overlay_region_out_of_bounds` error — mirrors the recovery payload that the text channel renders, so a structuredContent reader can self-correct without parsing prose. | |
| cropPixelHeight | No | Actual height in pixels of the returned inspect image/crop. Use with cropPixelWidth for crop-local pixel overlays. | |
| viewerNavigated | No | Whether the viewer was auto-navigated to the inspected region |