Skip to main content
Glama

read_many

Read multiple text files in a single call, returning an error entry for a bad path while still reading the valid files.

Instructions

Read several text files in one call. A bad path yields an error entry; other files are still read.

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": {
      "file_paths": "<file_paths>"
    },
    "name": "read_many"
  }
}

Input Schema

NameRequiredDescriptionDefault
pathNoLocal project directory. Defaults to the server's working directory.
formatNoOutput format: 'markdown' (default) or 'json' (structured envelope).markdown
file_pathsYesPaths relative to the root. At most 50 are processed per call.

Output Schema

NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

B3.3/5.0
Behavior3/5

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

With no annotations, the description carries the full burden, and it does disclose one genuinely useful behavior: partial failure, where a bad path produces an error entry while other files still succeed. It omits the 50-file cap, root-relative path resolution, and any permission or performance notes, leaving meaningful gaps for a batch I/O tool.

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?

Two sentences, zero waste, with the core capability front-loaded and the failure behavior following. 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?

An output schema exists, so return values need not be described. However, for a batching tool with several plausible alternatives, the definition does not say when batching is preferable or how it interacts with the single-file `read` or `search`, leaving the selection decision underspecified.

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 coverage is 100%, so `path`, `format`, and `file_paths` (including the 50-per-call limit and root-relative semantics) are already fully documented in the schema. The description adds no parameter meaning beyond it, so the baseline 3 applies.

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?

"Read several text files in one call" gives a specific verb and resource, and "several" distinguishes it from a single-file read. It never names the sibling `read` tool, so the contrast with the alternative is implied rather than stated.

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

Usage Guidelines2/5

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

There is no explicit when-to-use or when-not-to-use guidance. The phrase "in one call" hints at batch efficiency versus a single-file read, but the agent must infer the selection rule, and the sibling list (read, search, project_map) is not referenced at all.

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