read_output
Retrieve new output from a terminal session using the specified process ID (PID). Enables monitoring of active command execution in real time.
Instructions
Read new output from a running terminal session.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| pid | Yes |
Implementation Reference
- src/tools/execute.ts:30-45 (handler)The core handler function that implements the logic for the 'read_output' tool. It validates the input (pid), fetches new output from the terminal manager, and formats the response.export async function readOutput(args: unknown) { const parsed = ReadOutputArgsSchema.safeParse(args); if (!parsed.success) { throw new Error(`Invalid arguments for read_output: ${parsed.error}`); } const output = terminalManager.getNewOutput(parsed.data.pid); return { content: [{ type: "text", text: output === null ? `No session found for PID ${parsed.data.pid}` : output || 'No new output available' }], }; }
- src/tools/schemas.ts:9-11 (schema)Zod schema defining the input parameters for the read_output tool: requires a numeric PID.export const ReadOutputArgsSchema = z.object({ pid: z.number(), });
- src/server.ts:66-71 (registration)Tool registration in the server's listTools response, specifying name, description, and input schema for MCP protocol.{ name: "read_output", description: "Read new output from a running terminal session.", inputSchema: zodToJsonSchema(ReadOutputArgsSchema), },
- src/server.ts:220-223 (handler)Dispatch handler in the server's CallToolRequestHandler that parses arguments and calls the readOutput implementation.case "read_output": { const parsed = ReadOutputArgsSchema.parse(args); return readOutput(parsed); }