Skip to main content
Glama

Finish a large upload

complete_multipart_upload
Destructive

Assembles the uploaded parts into the object. Needs every part's number and the ETag its PUT returned. This is the point the object appears - and replaces anything already at the key, which cannot be undone. A part below the minimum size is refused here rather than at upload time.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
keyYesFull object key.
partsYesEvery part uploaded, as partNumber and eTag.
bucketYesBucket name.
uploadIdYesuploadId from start_multipart_upload.
overwriteNoAllow this to replace an object already at the key.
connectionIdYesConnection id from list_connections.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true and idempotentHint=false, so the safety profile is partly structured. The description still earns credit by adding genuinely new behavior: the replacement is irreversible, and undersized parts are rejected at completion rather than at upload time. Minor gap: it presents the key replacement as unconditional, while the schema gates it behind an 'overwrite' flag.

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

Conciseness5/5

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

Four tight sentences, each carrying distinct payload: action, required inputs, destructive lifecycle effect, and size validation. The most consequential fact (object appears / irreplaceable loss) is front-loaded after the action statement.

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?

No output schema exists, so the description is not obliged to describe return values, and the destructive annotation covers safety. It covers the lifecycle well, but omits what state remains on failure (parts persist until abort) and the interaction with the 'overwrite' parameter.

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 100%, so the baseline is 3. The description adds real provenance for one parameter (the ETag must come from the part's PUT response), but says nothing about overwrite, uploadId source, or connectionId, and its unconditional-replacement wording partially conflicts with the 'overwrite' boolean.

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?

Specific verb+resource: 'Assembles the uploaded parts into the object,' which distinguishes it immediately from start_multipart_upload, abort_multipart_upload, and write_object. An agent can identify this as the terminal finalization step without opening the schema.

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?

Clear context: this is the step after all parts are PUT, and it requires each part's number and returned ETag. However, it gives no explicit alternative routing (e.g., what to call instead if a part is missing or the upload should be abandoned).

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