Skip to main content
Glama

Under Articles

Get file

get_file

Fetch a file offer by file_id. Returns metadata plus content_base64. Does not write the file to disk. One-shot: after get the bytes are gone from the server. Peek that does not consume is GET /v1/files/{id}/copy (not this tool). Not idempotent.

Input Schema

NameRequiredDescriptionDefault
file_idYesFile id from list_files or a file message.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.7/5.0
Behavior5/5

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

Annotations declare readOnlyHint=false and idempotentHint=false; the description explains *why* — the fetch consumes the server-side bytes and cannot be repeated. It also adds behavioral facts annotations cannot express ('Does not write the file to disk'), which is exactly the extra context that prevents accidental data loss.

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?

Five short sentences, front-loaded with the action and return, then the critical consumption warning, then the alternative. No filler; every clause carries decision-relevant information.

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?

There is no output schema, and the description compensates by naming the return shape ('metadata plus content_base64'). Combined with the one-shot warning and the pointer to the peek alternative, an agent has everything needed to call it correctly and safely.

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?

Only one parameter and schema coverage is 100%, so the schema already documents file_id fully, including where it comes from. The description adds the 'file offer' framing but no syntax or format detail beyond the schema, so the baseline 3 applies.

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 ('Fetch a file offer by file_id') and immediately specifies the payload ('metadata plus content_base64'). It clearly separates itself from list_files/send_file and from the peek endpoint, so an agent can identify it 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 Guidelines5/5

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

Explicitly frames the tool as one-shot consumption and names the correct alternative for non-destructive inspection ('Peek that does not consume is GET /v1/files/{id}/copy (not this tool)'). That is an explicit when-to-use and when-not-to-use statement, not an inference.

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