Skip to main content
Glama

Attach a photo to a recipe

set_recipe_image
Destructive

Store a recipe photo permanently and set it as the recipe image, replacing expiring generated image URLs. Accepts an image URL or base64 with content type.

Instructions

Store a photo for a recipe permanently and set it as the recipe's image. Use for images you generated with your image tool (their URLs expire) or any photo you have as a URL or base64. Pass either image_url (we fetch and copy it) or image_base64 + content_type. Max 6 MB; JPEG, PNG, WebP or GIF.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
image_urlNo
recipe_idYes
content_typeNoe.g. image/png
image_base64NoRaw base64 (no data: prefix)

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
image_urlYesPermanent public URL of the stored photo
recipe_idYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.1.1

TDQS

A4.4/5.0
Behavior4/5

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

Annotations flag destructiveHint=true and openWorldHint=true, and the description reinforces this by stating the photo is stored permanently (overwriting the prior image) and that URL input is fetched and copied server-side. Adds size limit (6 MB) and accepted formats beyond the structured fields.

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?

Three tight sentences, front-loaded with the action, then usage, then parameter mechanics and limits. Every sentence carries distinct information with no repetition.

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 an output schema present, return values need no explanation, and the description covers action, source options, exclusivity, size and formats. Only the required recipe_id is left for the schema, which is acceptable.

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 only 50%, and the description compensates by defining the key constraint the schema does not: image_url is mutually exclusive with image_base64 + content_type. The content-type options and size cap are also spelled out textually.

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?

Specific verb and resource: 'Store a photo for a recipe permanently and set it as the recipe's image.' No sibling tool touches recipe images, so the purpose is unambiguous 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 Guidelines4/5

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

Gives a clear when-to-use signal: for images generated by the image tool whose URLs expire, or any photo held as URL/base64. It lacks explicit exclusions or named alternatives, but the triggering condition is concrete.

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