Skip to main content
Glama
Krineon-lab

Rob Desktop Commander

by Krineon-lab

fs_read

Read-onlyIdempotent

Read a single local file with UTF-8 line slicing or base64 encoding for binary data; choose the multi-file reader when handling several files.

Instructions

Read one local file. Supports UTF-8 line slicing or base64 for binary files. Prefer fs_read_many when several files are needed.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
pathYes
encodingNoutf8
maxBytesNo
maxLinesNo
offsetLineNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.2.0

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent, non-destructive, closed-world behavior, so the safety profile is covered. The description adds genuine context beyond that: two encoding modes and line-slicing support for text vs base64 for binary. It omits truncation/error behavior (e.g. what happens when maxLines is hit).

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?

Three short sentences, zero filler, with the core action stated first and the sibling routing last. Every sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/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 should hint at the return shape and truncation semantics; it does not say whether content is truncated at maxLines/maxBytes or how binary results are returned. For a read tool with five parameters and silent defaults, that is a meaningful gap.

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 0%, so the description carries the burden, and it only partially does: 'UTF-8 line slicing' maps to maxLines/offsetLine and 'base64 for binary files' maps to encoding. maxBytes, the default 1000-line cap, and the 20MB ceiling go unexplained, yet these strongly affect output.

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 ('Read one local file') and explicitly eliminates its nearest sibling with 'Prefer fs_read_many when several files are needed.' An agent can select between them without opening either 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?

Gives a clear routing rule to the alternative tool (fs_read_many for multiple files), which is exactly the ambiguity in this tool family. It stops short of any exclusion beyond that, e.g. when to use fs_list or search instead of reading directly.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.