Skip to main content
Glama

read_process_output

Pages stdout and stderr for an existing JobManager process session, reading bounded output from a byte offset without starting or retrying commands.

Instructions

Use to page stdout/stderr for an existing current-process JobManager session. Reads bounded output from offset; does not start or retry commands. Use previous_output for a prior Host invocation.

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": {
      "session_id": "<session_id>"
    },
    "name": "read_process_output"
  }
}

Input Schema

NameRequiredDescriptionDefault
offsetNoExisting output byte cursor for paginated reading (default 0).
session_idYesOpaque existing JobManager session ID; never use it to start a second job.

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.2

TDQS

A4.3/5.0
Behavior4/5

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

With no annotations at all, the description carries the full safety burden and does disclose the non-obvious traits: reads are bounded and paginated by offset, the tool never starts or retries commands, and the session must already exist. It stops short of saying whether reads advance a cursor, block, or what happens on an expired session or an offset past the end.

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 short, front-loaded sentences with zero filler; the primary use case comes first and the exclusion plus redirect follow. Some domain jargon ('current-process JobManager session', 'prior Host invocation') adds slight parsing load but is functionally necessary for disambiguation.

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?

An output schema exists, so return values need no explanation, and the description covers purpose, scope boundary and the sibling alternative for a simple two-parameter read. It leaves gaps only around failure/edge behavior (invalid session, offset beyond end, whether output is drained), which is reasonable for a read-only pager but not fully complete given the absence of annotations.

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%, and both parameters already carry descriptions covering the offset cursor default and the 'never start a second job' warning for session_id. The description's 'bounded output from offset' restates rather than extends the schema, so the baseline 3 applies.

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?

The first sentence names a specific verb (page) and resource (stdout/stderr of an existing current-process JobManager session), which separates it cleanly from siblings like run_command, await_process_output and previous_output. The second sentence adds scope ('reads bounded output from offset') and an explicit negative ('does not start or retry commands').

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

Usage Guidelines5/5

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

It states the precondition for use (an existing current-process session), what it must not be used for (starting or retrying commands, or starting a second job), and redirects to a named alternative ('Use previous_output for a prior Host invocation'). An agent can pick between this and the many run/await siblings without opening a schema.

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