Skip to main content
Glama

file_get

Read-only

Returns a file's content by fid: an image as an image, text as text, up to 5242880 bytes; larger files, video, archives and other binaries are not returned inline. A design file ID that is no longer found was replaced by a re-import; the entity's current designs have the new one. Access follows the items the file is attached to, or the token owner's own upload. An attach token without an entry in attaches means the attachment was deleted or the text copied.

Input Schema

NameRequiredDescriptionDefault
fidYesFile ID: an attaches key, the fid in attach:<fid> or a design file ID

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed3 schema fields changed
    • removedInput schema / $schema
      Removed value: -"http://json-schema.org/draft-07/schema#"
    • removedInput schema / properties / entity
      Removed value: -{
      -  "description": "Optional owner entity",
      -  "properties": {
      -    "ID": {
      -      "description": "Owner entity ID",
      -      "format": "uuid",
      -      "type": "string"
      -    },
      -    "type": {
      -      "description": "Owner entity type (task, feature, chatMessage, design, meeting...)",
      -      "type": "string"
      -    }
      -  },
      -  "required": [
      -    "ID",
      -    "type"
      -  ],
      -  "type": "object"
      -}
    • changedInput schema / properties / fid / description
      Previous value: -"File ID: an attaches key and the fid in attach:<fid>"New value: +"File ID: an attaches key, the fid in attach:<fid> or a design file ID"
  2. First observed

TDQS

A4.2/5.0
Behavior5/5

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

With annotations already declaring readOnlyHint=true, openWorldHint=false and destructiveHint=false, the description still adds substantial context not in the structured fields: a concrete 5242880-byte inline ceiling, which content types are and are not returned inline, the access-control model, the stale-design-file-ID replacement behavior, and the deleted-attachment semantics. This is a genuine value-add beyond the annotations.

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?

Three dense sentences, front-loaded with the primary purpose before the constraints and edge cases. Each sentence carries information, though the last two are run-on enough that they read as a spec dump rather than cleanly parsed guidance.

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?

With no output schema, the description correctly explains what is returned inline and what is not, plus the access and stale-ID edge cases. It is nearly complete, but it does not say whether an oversized or excluded file yields an error, a link, or empty content, and there is no pagination or streaming note.

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% and the schema already enumerates the three fid forms (attaches key, attach:<fid>, design file ID), so the baseline is 3. The description goes further by explaining the failure semantics of those forms — a design file ID that is no longer found was swapped by a re-import, and an attach token missing from attaches indicates deletion — which meaningfully extends the parameter's behavior.

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?

The description opens with a specific verb+resource: 'Returns a file's content by fid', then narrows the scope by return mode (image as image, text as text) and size ceiling. It is distinct from file_upload and file_url in effect, but it never names or contrasts with the sibling that overlaps most (file_url), so sibling differentiation is left to inference.

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?

It gives clear operational context: access is governed by the items the file is attached to or the token owner's own upload, and an attach token with no entry in attaches means the attachment is gone. What it lacks is explicit routing against alternatives (e.g. when to use file_url instead), so it stays at clear-context rather than explicit when/when-not.

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