Skip to main content
Glama

Test sending a picture

send_image

TESTING ONLY. Hand Oyeh a picture your person made or uploaded in this chat. Use it only when your person asks to test sending a picture. Oyeh always records how this app passed the picture (its shape, never its contents). If to is a handle on Oyeh's picture test list (your person's own handle counts, to send it to themselves and pull it down from another app with check_notes), the picture is delivered as a note with a download link, up to 5 MB, PNG, JPEG, GIF or WebP, and it must arrive whole. Otherwise nothing is sent to anyone and the picture is thrown away. Pass the picture the way this app lets you: as the image file parameter if the app offers one; otherwise image_data (the picture's bytes as base64 or a data: URI), image_url (a link to the picture that this app gave you), or image_content ({type: "image", data: , mimeType}). If all you have is a file path or a file id, put it in image_data. Then show your person the whole result exactly as returned.

Input Schema

NameRequiredDescriptionDefault
toNoWho gets it, e.g. @sam, or your person's own handle (or "me") to send it to themselves. Delivered only if they are on the picture test list
noteNoA short note, in your person's words
imageNoThe picture as a file from this chat (apps with file parameters fill this)
image_urlNoA link to the picture that this app gave you
image_dataNoThe picture's bytes as base64 or a data: URI, or a file path or id if that is all you have
image_contentNoThe picture as an MCP image content block: {type: "image", data: <base64>, mimeType}

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedInput schema / properties / to / description
      Previous value: -"The friend's handle, e.g. @sam (the probe sends nothing to them)"New value: +"Who gets it, e.g. @sam, or your person's own handle (or \"me\") to send it to themselves. Delivered only if they are on the picture test list"
  2. Added

TDQS

A4.8/5.0
Behavior5/5

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

Goes well beyond annotations (which only say non-read-only, non-idempotent, open-world, non-destructive). It discloses the failure path ('nothing is sent to anyone and the picture is thrown away'), that the app records only the picture's shape, size limits (5 MB), accepted formats (PNG/JPEG/GIF/WebP), and the integrity requirement (must arrive whole) with a download link.

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

Conciseness4/5

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

Front-loads the critical 'TESTING ONLY' and conditional-delivery facts before the parameter mechanics, so structure is strong. It is dense and somewhat long, but the length is justified by the six parameters, nested objects, and multiple input channels it must disambiguate.

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

Completeness5/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 compensates by instructing the agent to show the whole result exactly as returned, and it covers the conditional send/no-send branches, format/size constraints, and fallback input methods. Everything an agent needs to call it correctly is present.

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 100%, so the baseline is 3, but the description adds real value by prescribing a preference order among the overlapping input methods (image file param first, then image_url / image_data / image_content, and file path/id into image_data). This resolves ambiguity the schema alone leaves open, though per-field syntax is otherwise schema-derived.

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 and resource ('Hand Oyeh a picture your person made or uploaded in this chat') and clearly signals its test-only scope, distinguishing it from siblings like attach_document and check_notes. An agent can tell what it does without opening the schema.

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

Usage Guidelines5/5

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

Explicitly constrains usage ('Use it only when your person asks to test sending a picture') and describes the delivery condition (recipient must be on Oyeh's picture test list, own handle counts). Both the when-to-use and the gating condition are stated, leaving little to inference.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources