Skip to main content
Glama

ugreen_read_file

Read-onlyIdempotent

Reads a requested NAS file in bounded chunks, returning UTF-8 text by default or base64 for binary data; use offset to continue reading beyond the 256 KiB limit.

Instructions

有界读取 NAS 文件,默认 UTF-8 文本,二进制用 base64。每次最多 256 KiB;继续读取使用 offset。仅在用户请求相应文件时使用。

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "path": "<path>"
    },
    "name": "ugreen_read_file"
  }
}

Input Schema

NameRequiredDescriptionDefault
pathYes
lengthNo
offsetNo
encodingNoutf8

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.2.0

TDQS

A3.6/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent, non-destructive, and open-world, so the safety profile is covered. The description adds substantive behavior beyond that: a hard 256 KiB per-call cap, continuation via offset, and encoding selection. What is missing is whether a truncated read is signaled and how the caller learns the file ended.

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 clauses, front-loaded with the core action and its size bound, then the usage restriction. No filler; the only soft spot is the final sentence, which is vague about what 'the corresponding file' means.

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?

With no output schema and zero schema description coverage across four parameters, the description should say more about the return shape — specifically whether the response indicates truncation or EOF so the agent knows when to stop issuing offset reads. It covers the reading mechanics well but leaves that loop-termination question open.

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 must carry the load, and it partially does: it explains encoding semantics (UTF-8 default, base64 for binary) and the role of offset for continuation. It does not explain the length parameter or its 65536 default, and the 256 KiB figure is stated as a cap rather than tied explicitly to length.

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 states a specific verb+resource: a bounded read of a NAS file, with the default UTF-8 and base64-for-binary behavior. This distinguishes it from write_file, delete_file, and file_stat, though it never names a sibling explicitly and leaves the boundary with download_file implicit.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

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

It gives one usage condition — only when the user requests that specific file — which is a real constraint on when to call it. However, no alternative is named (e.g., when to prefer download_file or file_stat), and the offset-continuation pattern is described mechanically rather than as a decision rule.

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