Skip to main content
Glama

Signed render URL

render.signed_url.create

Create a signed URL that renders a screenshot or template when fetched. Creating it counts nothing; every fetch is a render counted against the organisation's usage when it happens, one render.screenshot or render.image, and not in this connection's usage. Lifetime is at most 24 hours through MCP.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
urlNoFor kind=screenshot.
kindYes
widthNo
heightNo
full_pageNo
variablesNo
template_idNoFor kind=template.
ttl_secondsYesLink lifetime; permanent links are not available through MCP.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
urlYes
expires_atYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.9/5.0
Behavior5/5

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

Adds substantial context beyond the annotations: creation is free, each fetch incurs exactly one render.screenshot or render.image, it bills the organisation (not this connection), and lifetime is capped at 24 hours. This is precisely the kind of billing and side-effect disclosure the annotations (readOnlyHint=false, openWorldHint=true, idempotentHint=false) cannot convey.

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?

Three compact sentences with the core action front-loaded and no filler. Slightly dense wording in the billing sentence, but every clause carries 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?

An output schema exists, so return values need not be documented, and the description covers the billing model, lifetime cap, and render target. It stops short of clarifying the kind-to-parameter relationship (url vs template_id) and when to prefer this over the immediate-render siblings.

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 coverage is only 38% across 8 parameters, so the description should carry more weight than it does. It does explain ttl_seconds semantics (24h cap, no permanent links) and links the render target to kind, but width, height, full_page, and variables are left entirely to the schema with no added meaning. Baseline 3 given the partial compensation.

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?

States a specific verb and resource ('Create a signed URL that renders a screenshot or template when fetched') with the deferred-rendering model made explicit, which separates it conceptually from render.screenshot.create and render.template.render. It never names those siblings outright, so the differentiation is implied rather than stated.

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?

The description hints at when this is appropriate (a URL you hand off that renders later) and constrains lifetime to 24h via MCP, but gives no explicit rule for choosing it over render.screenshot.create or render.template.render. Usage is inferable, not prescribed.

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