Skip to main content
Glama

write_history

Review file write history from plumb tools. List changes with session, agent, tool, or file filters, or show full diffs and metadata by sequence number or call ID.

Instructions

Reviews file write history recorded across plumb write tools. Supports listing recent changes with session, agent, tool, and file filters, and showing full diffs and tool-call metadata by sequence number or call ID.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
seqNoSequence number of a change to show (show mode).
fileNoFilter by file path (workspace-relative or absolute) (list mode).
modeNoOperation mode: 'list' (default) queries the change timeline; 'show' inspects diffs and tool-call metadata for a specific seq or call_id.
toolNoFilter by tool name (e.g. 'edit_file', 'write_file') (list mode).
agentNoFilter by logical agent name (list mode).
limitNoMaximum changes to list (default 20) or to show for a call_id (default all), max 100.
offsetNoPagination offset (default 0).
call_idNoTool call ID to show all associated changes and call metadata (show mode).
sessionNoFilter by session ID, or 'self' for the caller's own writes: this session, and on a connection shared by several agents only this agent's (list mode).
workspaceNoWorkspace root path. Defaults to the pinned workspace.
max_diff_bytesNoCap on diff bytes returned per change (default 32768 [32 KiB], max 131072 [128 KiB]) (show mode).

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.23.0

TDQS

A3.5/5.0
Behavior3/5

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

No annotations are provided, so the description carries the full burden. It discloses the scope of the record (writes across plumb write tools) and what content is available (diffs, tool-call metadata), but never confirms the operation is read-only, says nothing about persistence, ordering/recency guarantees, or what happens when a seq/call_id is not found.

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?

Two sentences, front-loaded with the core purpose before enumerating the supported operations. Nothing is wasted, though the second sentence is dense and reads more like a feature list than prioritized guidance.

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?

For an 11-parameter tool with no output schema and no annotations, the description covers both modes and the returned artifacts (diffs, tool-call metadata) at summary level. It is adequate, but the absence of any note on read-only safety or per-change output shape leaves a small 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 100%, including per-parameter mode hints, defaults, and the 'self' semantics for session. The description only echoes categories of filters (session, agent, tool, file) and the seq/call ID lookup, so it adds no meaning beyond the schema; 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?

The description names a concrete verb and resource: it reviews file write history recorded across the plumb write tools, and it enumerates the two query shapes (list vs show). That is enough to separate it from siblings like file_diff, minimal_diff_review, and undo_edit, though it never explicitly contrasts itself with them.

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 sketches the two modes (listing recent changes with filters; showing diffs and call metadata by seq/call ID), but this largely restates the 'mode' parameter already documented in the schema. There is no explicit when-to-use/when-not guidance and no mention of how this differs from looking at a live diff or undoing a write.

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