Skip to main content
Glama

create_upload_session

Idempotent

After get_upload_instructions/local prepare, create an upload intent using the saved SHA256 and idempotency key. Poll until uploading before signing.

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": {
      "upload": "<upload>",
      "idempotency_key": "<idempotency_key>"
    },
    "name": "create_upload_session"
  }
}

Input Schema

NameRequiredDescriptionDefault
uploadYes
idempotency_keyYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already cover safety (readOnlyHint=false, destructiveHint=false, idempotentHint=true, closed-world), so the description's added value is the async state-machine behavior: a session must be created, then polled to the "uploading" state, and only then are parts signed. That is genuine workflow disclosure beyond the structured fields. It omits error/conflict behavior on key reuse and does not explicitly name the polling tool.

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?

Two tightly packed sentences with the precondition front-loaded and no filler; every clause carries a workflow fact. The density comes at a cost of compressed jargon ("local prepare", the "uploading" state), but nothing is redundant.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a multi-step async entry point with no output schema and zero parameter documentation, the description covers the trigger and next step but leaves open what a created session returns, how polling is performed and against which tool, and how the nested upload payload is populated. Adequate for an agent that already knows the workflow, thin for one that does not.

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 description coverage is 0%, so the description must compensate: it does identify two important semantics, that the fingerprint comes from saved SHA256 and that the key is an idempotency key. The whole nested upload object (filename, size_bytes, width/height/duration, frame_preview, hex-pattern constraint on fingerprint) is left uninterpreted by both schema and description.

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 concrete action ("create an upload intent") plus its trigger condition ("after get_upload_instructions/local prepare"), which lets an agent place it in the upload workflow. It doesn't directly contrast with the closest siblings (get_upload_session, resume_upload, list_upload_sessions), and the shift from tool name "session" to "intent" is slightly loose, but the verb+resource are identifiable.

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 pre-condition (only after get_upload_instructions or local prepare) and a clear post-condition ("poll until uploading before signing"), which is real sequencing guidance. It stops short of naming when not to call it or which tool to use for an already-created session or a resumed upload.

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