Skip to main content
Glama

kelpo_request_reference_upload

Idempotent

Prepare a private 15-minute image/audio upload (50 MiB max); no video uploads as chat or editing references (a video only with role swap_source, for kelpo_swap_person). Send bytes with a local HTTP tool, not through the LLM/MCP context, then complete_reference_upload. Same idempotency key + metadata returns the same ticket; changed metadata is rejected. Rights are confirmed before generation. Arguments: {"body": {"filename": "photo.jpg", "size_bytes": 123456, "mime_type": "image/jpeg", "sha256": "<64 hex>", "idempotency_key": "", "role": "unassigned", "project_id": ""}}

Input Schema

NameRequiredDescriptionDefault
bodyYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.5/5.0
Behavior5/5

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

Annotations already declare idempotentHint=true and destructiveHint=false, and the description enriches this with real semantics: same idempotency key + metadata returns the same ticket while changed metadata is rejected, the upload is private and expires in 15 minutes, bytes must not transit the MCP context, and rights are only confirmed before generation. That is substantive behavioral context beyond the flags.

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?

Constraints (15-minute, private, 50 MiB, no video unless swap_source) are front-loaded, and the follow-up step is stated early. The sentence is dense and the trailing literal argument blob duplicates the schema somewhat, but nothing is wasted.

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 ticket-issuing tool with no output schema, the description explains the lifecycle (request -> HTTP byte transfer -> complete_reference_upload) and the key failure/open questions (idempotency conflict, expiry, rights timing). It does not spell out what the returned ticket contains, which would be the last missing detail.

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 single top-level parameter 'body' has no schema description (0% top-level coverage), so the description carries the burden — but it does so with a concrete example payload enumerating filename, size_bytes, mime_type, sha256, idempotency_key, role, and project_id. The nested schema simultaneously documents many of these fields, so the description's marginal value is mostly in showing the assembled shape rather than new field meaning.

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 precise verb and resource ('prepare a private 15-minute image/audio upload'), including the artifact produced (an upload ticket) and its scope. It is immediately distinguishable from the sibling kelpo_complete_reference_upload, which it explicitly hands off to.

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?

Tells the agent the full workflow: request the ticket here, send bytes via a local HTTP tool rather than through LLM/MCP context, then call complete_reference_upload. It also names the alternative path for video (role swap_source, for kelpo_swap_person) and rules out video as a chat/editing reference. No explicit statement of when not to use the tool at all, so a small gap remains.

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