Skip to main content
Glama

storage_attach

Attach an existing Storage object to a work item and/or project.

Idempotent on (org, work|project, storage_object). Does not copy bytes. Canonical artifact attach for blobs and documents. Transcripts stay on file_* / work_item_files.kind=transcript. Pass at least one of work_id / project_id.

Input Schema

NameRequiredDescriptionDefault
agentNoOverride agent identity
file_idYesStorage object UUID to attach
work_idNoWork item UUID to attach to (kind=artifact)
project_idNoProject UUID to attach to (kind=artifact)

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.3/5.0
Behavior4/5

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

With no annotations, the description still discloses the two behaviors an agent most needs: the operation is idempotent on (org, work|project, storage_object) and it does not copy bytes, so it links by reference. It stops short of permissions or post-attach visibility, but the destructive/idempotency profile is far better covered than a bare 'attach' would be.

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?

Four short sentences, front-loaded with the core action and followed by the key constraints. Every line carries usable information, though 'Canonical artifact attach for blobs and documents' is somewhat redundant with the first sentence.

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?

An output schema exists so return values needn't be explained, and the description covers the attach precondition, idempotency, and non-copying behavior. Remaining gaps (permission requirements, error cases) are minor for a link-style mutation.

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 100% so the baseline is 3, but the description adds a genuine constraint the schema omits: although only file_id is required, at least one of work_id/project_id must be supplied. It also clarifies the resulting kind=artifact semantics for the target parameters.

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 ('Attach an existing Storage object to a work item and/or project') and explicitly scopes it as the canonical artifact attach for blobs and documents, so an agent can separate it from file_* and evidence_* siblings.

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 concrete precondition ('Pass at least one of work_id / project_id') and an explicit exclusion ('Transcripts stay on file_* / work_item_files.kind=transcript'). It doesn't name other adjacent siblings such as storage_unlink or evidence_attach, but the when-not guidance is clear.

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.