Skip to main content
Glama

Make a photo upload link

create_upload_link

Makes a page where someone with no RunLite account (often the business owner) adds photos for spots on a site, such as the shop front or the team. Each slot names one spot: a stable key, the label people see, and either the path of the live JPEG, PNG or WebP image the photo replaces (a placeholder image can be deployed first for a spot with no photo yet) or a gallery, a JSON file a page reads and draws, which photos are added to; with an optional hint about the photo wanted. Returns the link once, for the user to send on. Photos sent wait in the site's dashboard until published there; nothing goes live by itself.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "siteId": "<siteId>",
      "slots": "<slots>"
    },
    "name": "create_upload_link"
  }
}

Input Schema

NameRequiredDescriptionDefault
slotsYes
siteIdYes
recipientNoWho the link is for, as the page should greet them, e.g. "Raju".
expiresInDaysNoHow long the link works, 1 to 30 days. Default 7.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.2/5.0
Behavior5/5

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

With annotations only flagging readOnlyHint=false and destructiveHint=false, the description adds substantial behavioral context: the link is shown only once, nothing goes live automatically, photos sit in the dashboard until published, a placeholder can be deployed first for an empty spot, and a gallery file can be deployed after the link is made. These non-obvious lifecycle constraints materially change how an agent uses the tool.

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

Conciseness3/5

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

The opening is well front-loaded, but the second sentence is a dense run-on stitched together with semicolons and nested clauses (slots, path vs gallery, gallery.json structure, hint) that is hard to parse. It earns its information but not its packaging.

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 4-parameter tool with nested slot objects, up to 300 items, and no output schema, the description is close to complete: it explains what is returned (the link, once) and the publishing workflow. It omits the 300-slot ceiling and leaves siteId unexplained, which keeps it short of 5.

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?

The schema already documents slot fields, path, gallery, hint, recipient, and expiresInDays thoroughly, but siteId (a required parameter) has no description anywhere; the prose compensates by explaining the slot/path-vs-gallery concept and the ordering constraints (placeholder before link, gallery after) rather than just restating fields.

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?

The first sentence names a specific verb and resource: it makes a page where someone without an account can add photos for spots on a site. It precisely scopes the tool to external uploaders, which distinguishes it from siblings like start_upload, upload_files, and list_uploads that deal with the caller's own uploads.

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 workflow is implied: the link is returned once to send on, and photos wait in the dashboard until published there. That implies a follow-up with publish_upload and inspection with list_uploads, but the description never explicitly states when to choose this vs. uploading files directly, nor names any alternative tool.

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