Skip to main content
Glama

Delete uploaded JSON

delete_upload
DestructiveIdempotent

Permanently delete only the JSON upload identified by upload_id; other uploads, filters, modules, and quota records are unaffected. Use after the final process_json query or when early removal is needed. Use get_upload to inspect availability first if uncertain; do not delete while the ID is still needed. Pass the exact secret ID returned by upload_json or REST POST /uploads, not a filename or URL. Anyone holding that ID can delete the upload; a UUID quota key is not an ownership credential. Returns success:true,deleted:true even if already deleted or expired, so retries are safe. Reusing a deleted ID for processing fails. Does not consume processing quota and remains available when that quota is exhausted. Invalid ID arguments are rejected; storage failure returns success:false,error,status:503.

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_id": "<upload_id>"
    },
    "name": "delete_upload"
  }
}

Input Schema

NameRequiredDescriptionDefault
upload_idYesExact secret upload_id returned by upload_json or POST /uploads; not a filename or URL. Anyone holding it can inspect, query, or delete that upload. Valid for 15 minutes.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • addedInput schema / properties / upload_id / description
      Added value: +"Exact secret upload_id returned by upload_json or POST /uploads; not a filename or URL. Anyone holding it can inspect, query, or delete that upload. Valid for 15 minutes."
  2. Added

TDQS

A4.8/5.0
Behavior5/5

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

Beyond the annotations it discloses retry-safe semantics ('Returns success:true,deleted:true even if already deleted or expired'), a security caveat that possession of the ID is sufficient authorization, quota non-consumption, and a concrete failure mode (storage error returns success:false with status:503). The 'reusing a deleted ID fails' warning is behavior an agent cannot infer from destructiveHint/idempotentHint alone.

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?

Front-loaded with the action and scope, then usage, then caveats, then failure modes — a sensible ordering. It runs long and repeats the schema's 'not a filename or URL' warning, costing a little efficiency.

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

Completeness5/5

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

With no output schema, the description supplies return-value semantics, idempotency, error/status behavior, and security preconditions for a destructive single-parameter tool. Nothing an agent needs in order to call it correctly is missing.

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 coverage is already 100%, so the baseline is 3; the description adds genuine meaning by explaining provenance ('exact secret ID returned by upload_json or REST POST /uploads') and by ruling out a plausible wrong value ('a UUID quota key is not an ownership credential').

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 and resource ('Permanently delete only the JSON upload') plus a precise scope limitation ('other uploads, filters, modules, and quota records are unaffected'), which separates it cleanly from process_json and get_upload.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicit timing ('after the final process_json query or when early removal is needed'), an alternative ('Use get_upload to inspect availability first'), and an exclusion ('do not delete while the ID is still needed') are all present.

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