Skip to main content
Glama

ReadPath

Read-onlyIdempotent

Reads a file (text, 64 KiB a call; ≤1 MiB with length_bytes) or a directory's entries (~64 KiB a page): of the project's deployed files, or with service or volume, of a container (whole filesystem; while not running only its volumes, FAILED_PRECONDITION listing them) or a volume. NOT_FOUND names the nearest existing directory. Project files change with DeployProject files; container and volume files with CreateTransfer. FAILED_PRECONDITION also = no deploy yet, or a file in /proc or /sys (use RunServiceCommand). Untrusted.

Input Schema

NameRequiredDescriptionDefault
pathNoFrom the root, e.g. "/compose.yaml", "/data/uploads". Empty = "/": the root's entries.
volumeNoIn the volume, from its root.
serviceNoIn its container.
project_idNo
entry_limitNo0 = 200. Also ends at ~64 KiB.
length_bytesNo≤1 MiB; 0 = 64 KiB.
offset_bytesNoFile offset.
entry_page_tokenNoThe previous next_entry_page_token, other fields unchanged.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.3/5.0
Behavior5/5

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

Annotations cover read-only/idempotent/non-destructive, but the description adds substantial behavior: per-call and per-read size caps, page sizes, container-state-dependent visibility, and specific error semantics (NOT_FOUND names the nearest directory; FAILED_PRECONDITION covers no-deploy and /proc /sys). The 'Untrusted' security warning is a valuable disclosure not present in the structured fields.

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?

Heavily front-loaded with the core action and free of filler. It is information-dense but structured as one long semicolon-heavy sentence, which costs some parseability.

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 8 parameters, 88% schema coverage, rich annotations, and no output schema, the description covers modes, limits, pagination, and errors thoroughly. It could say a bit more about the return shape (entries vs. bytes) since no output schema exists, but it references page tokens and sizes, making it largely sufficient.

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 88%, so the schema already carries most parameter meaning, and its own description field already states 'at most one of service, volume' and that neither means the project's deployed files. The top-level description largely restates these, adding little syntax or constraint detail beyond the schema.

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 ('Reads') and resource ('a file or a directory's entries'), then enumerates the exact sources: project's deployed files, a container filesystem (or its volumes when stopped), or a volume. It is immediately distinguishable from siblings like RunServiceCommand, which it names as the alternative for /proc and /sys reads.

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 clear context for the various modes and explicitly routes one case to an alternative ('use RunServiceCommand' for /proc or /sys files). It also ties file freshness to DeployProject and CreateTransfer, implying when results may change. It stops short of stating when to prefer this over Show or GetProject for introspection.

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