Skip to main content
Glama

generate_og_image

Render a 1200x630 Open Graph image from a template and text params such as title and subtitle to create link previews, returning a permanent og:image URL and cache status.

Instructions

Render a 1200x630 Open Graph image from a template id (see list_templates) and text params such as title and subtitle. Returns the permanent image URL to put in og:image, and whether it was already cached. Optional exp (Unix seconds, paid plans) makes the signed URL expire; leave it out for an og:image URL.

Input Schema

NameRequiredDescriptionDefault
expNo
paramsNo
templateIdYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.4/5.0
Behavior4/5

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

No annotations are provided, so the description carries the full burden: it discloses the return shape (permanent image URL plus cached flag), the caching behavior, and the paid-plan gating and URL-expiry semantics of exp. It omits auth requirements, latency of rendering, and side effects of generating an asset, keeping it from a 5.

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 sentences, dense with no filler, and front-loaded with the core render action before the return values and the exp caveat. Every clause carries usable information.

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 and no annotations, the description does the work of explaining both the returned URL/cached flag and the exp behavior, which is what an agent needs to call it correctly. A bit more on permissions or the allowed params keys would make it fully complete for a nested-object tool.

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 description coverage is 0%, so the description must compensate, and it does: templateId is tied to list_templates, params is described as free-form text params (title, subtitle), and exp is explained as Unix seconds with paid-plan gating and expiry consequences. The unbounded key space of params is only illustrated by example, not fully characterized.

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 (Render) and resource (1200x630 Open Graph image) plus the required input (template id). It names the sibling list_templates for obtaining a template id, so an agent can tell it apart from create_template_from_url without opening either 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 clear guidance on the templateId source (see list_templates) and explicit when-to-use for the optional exp param ('leave it out for an og:image URL'). It stops short of naming alternatives or exclusion cases for the tool itself, so it is clear context rather than full routing.

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