Skip to main content
Glama

Photos View

photos_view
Read-onlyIdempotent

View up to four photos or videos by ID, returning a JPEG preview capped at max_px plus metadata; videos return their poster frame.

Instructions

Look at up to 4 items: per id a label (n, id, taken_at, type, width/height of the returned JPEG) followed by the JPEG, at most max_px (≤1568) on the longest edge; no originals. A video gives its poster frame (video_poster: true).

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "ids": "<ids>"
    },
    "name": "photos_view"
  }
}

Input Schema

NameRequiredDescriptionDefault
idsYesItem ids (max 4)
max_pxNoLongest edge in pixels

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.11.3

TDQS

A3.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already cover the safety profile (readOnly, idempotent, non-destructive), and the description adds genuinely new behavior: no originals are returned, only downscaled JPEGs capped at 1568px, and videos yield a poster frame flagged with video_poster: true. It stops short of describing failure behavior (invalid ids) or how the image payload is delivered.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two tight sentences with no filler; the item cap and size cap come first and the video-poster caveat is appended where it belongs. Nothing is redundant enough to cut.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description carries the burden of explaining the return value and does so well: per-id label fields (n, id, taken_at, type, width/height) plus the JPEG. Minor gaps remain around the response encoding and error cases for unresolvable ids.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so both params are already documented ('Item ids (max 4)', 'Longest edge in pixels'). The description largely restates those constraints (max 4 items, ≤1568 on the longest edge) rather than adding semantics such as what happens if fewer items resolve.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states the resource (items by id) and the essential effect: it returns downscaled JPEG renderings, capped at 4 items and max_px, with video poster frames substituted. That is specific enough to know what the tool produces, but it never distinguishes itself from close siblings such as photos_get or photos_show, and the verb 'Look at' is soft.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no when-to-use / when-not-to-use guidance and no mention of the obvious alternatives (photos_get, photos_show, photos_contact_sheet). The agent must infer that this is the image-rendering path from the mention of JPEGs alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.