Skip to main content
Glama

Add shape

snipaya_add_shape

Overlay a rectangle, ellipse, highlighter, blur, or noise block on a region to annotate screenshots or hide sensitive data safely.

Instructions

Add a rectangle frame, ellipse, highlighter box, blur (pixelate) or noise (opaque random colors from the area, the safest way to hide sensitive data) over a region. For blur and noise, pixelSize sets the block size; larger is coarser.

Input Schema

NameRequiredDescriptionDefault
kindYes
rectYesA rectangle (top-left corner plus size). Canvas units, or image pixels with relativeTo.
styleNoOptional style. Omitted fields use the user’s current tool style. Brand colors: coral #EC534E, papaya #FE9440.
tabIdNoTarget tab id. Defaults to the active tab.
pixelSizeNoBlur or noise block size in the units of rect. Defaults to the user’s Blur or Noise tool size.
relativeToNoImage id from snipaya_get_canvas. When set, all coordinates in this call are pixels of that image as captured (the same pixels you see in snipaya_render of that image).

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changedv1.2.2
    • changedInput schema / properties / kind / enum
      Previous value: -[
      -  "rect",
      -  "ellipse",
      -  "highlight",
      -  "blur"
      -]New value: +[
      +  "rect",
      +  "ellipse",
      +  "highlight",
      +  "blur",
      +  "noise"
      +]
    • addedInput schema / properties / pixelSize
      Added value: +{
      +  "description": "Blur or noise block size in the units of rect. Defaults to the user’s Blur or Noise tool size.",
      +  "maximum": 400,
      +  "minimum": 4,
      +  "type": "number"
      +}
  2. First observedv0.1.0

TDQS

A4/5.0
Behavior3/5

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

Annotations already declare a non-destructive mutation, so the safety profile is covered. The description adds that omitted style fields fall back to the user's current tool style and that pixelSize defaults to the Blur/Noise tool size, but it says nothing about persistence, undo interaction (snipaya_undo exists), or what happens if the region lies outside the canvas.

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: the shape enumeration and use case come first, followed by the parameter note. No filler and nothing redundant with the schema.

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?

For a 6-parameter nested-object mutation with no output schema, the description covers the operation, kind selection, and pixelSize behavior adequately. Remaining gaps are minor, since rect/relativeTo/style/tabId are documented in the schema and the tool returns no structured output to explain.

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

Parameters4/5

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

Schema coverage is 83%, so baseline is 3; the description earns above that by explaining pixelSize semantics ('pixelSize sets the block size; larger is coarser') and tying it to the blur/noise kinds, which the schema alone does not do. It does not add unit guidance beyond what the schema's rect/relativeTo descriptions already provide.

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

Purpose5/5

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

States a specific verb (add) plus the exact set of resources it creates — rectangle frame, ellipse, highlighter box, blur, noise — matching the enum exactly. This clearly separates it from sibling shape/text/arrow tools like snipaya_add_arrow, snipaya_add_text, and snipaya_add_callout.

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

Usage Guidelines3/5

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

It hints at usage with 'the safest way to hide sensitive data' for noise, which implicitly compares to redaction. However, it never explicitly says when to choose this over snipaya_redact, snipaya_add_callout, or snipaya_add_spotlight, nor does it state prerequisites such as needing a tab or captured image.

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