Skip to main content
Glama

Read document

traceable_doc_read
Read-onlyIdempotent

Read a document or a template. Both modes return meta.revision (on a full read, revision= on the [[document]] line): pass it as baseRevision on your next content write so it is refused if the document changes in between. mode=outline returns metadata + the body heading outline + titlePageHeadings + landmarks (the row order and kind of the revision table, references, glossary, Test Plan and similar rows, and of each diagram and image row with its caption; a diagram also gives its status) + item counts + the document's references with the referenceId a citation uses (cheap; default when exploring). mode=full returns the content as Traceable Markdown (TrMD): segments as [[segment …]], each block prefixed with its [[row N]] anchor annotation, including ID-grid structure ([[id-header types=…]]). When other documents in the project trace INTO this one, a second text block lists those incoming links, grouped under each source document (its number, name and id) as " -> "; a bounded read lists only the links into the rows it returns. Link cells in the TrMD list a row's outgoing links only. Bound a full read with fromOrder/toOrder (row orders from the outline or a prior read) to load only a section; a range that holds no rows says so and gives the row orders the document spans. Accepts a template id (from traceable_workspace_templates) so you can inspect a template body and its column structure before cloning it with traceable_doc_create.

Input Schema

NameRequiredDescriptionDefault
modeNooutline (default) or full
toOrderNoLast row order to include (full mode)
fromOrderNoFirst row order to include (full mode)
documentIdYesA document or template UUID (from traceable_workspace_map / traceable_workspace_templates)

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.3/5.0
Behavior5/5

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

Annotations already declare readOnly/idempotent/non-destructive/closed-world, and the description adds substantial context on top: the revision=value on the [[document]] line is meant to be passed as baseRevision so a later write is refused on conflict, incoming cross-document links are returned as a second grouped block, and a bounded read only returns links into the rows it covers. It also discloses empty-range behavior ('says so and gives the row orders the document spans').

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?

Front-loaded with the core action, and nearly every sentence carries load-bearing detail about modes, revision handling, or link output. It is dense and contains long parenthetical sentences (the outline enumeration, the revision sentence) that could be broken up for easier parsing, but there is little outright filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

There is no output schema, so the description must carry return-shape information — and it does: meta.revision, outline contents (headings, titlePageHeadings, landmarks, item counts, references with referenceId), and the TrMD block format with [[row N]] anchors and ID-grid structure. For a read tool of this complexity, an agent has everything needed to call it and interpret the result.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3, but the description adds real meaning beyond the schema strings: it defines what outline vs full actually return, states outline is the default, and clarifies that fromOrder/toOrder take 'row orders from the outline or a prior read'. That is operational semantics the schema's terse 'First row order to include' does not convey.

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?

Opens with a concrete verb+resource ('Read a document or a template') and immediately characterizes the two modes, so an agent knows this is the document reader. It does not explicitly contrast itself with sibling readers like traceable_board_read, traceable_test_plan_read, or traceable_library_read, leaving that distinction to inference from the resource name.

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

Usage Guidelines4/5

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

Gives real routing guidance: outline is 'cheap; default when exploring', full is for content, and a full read should be bounded with fromOrder/toOrder 'to load only a section'. It also states a concrete precondition/alternative — accept a template id from traceable_workspace_templates to inspect a body before cloning with traceable_doc_create. It stops short of saying when NOT to use this tool versus other read siblings.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources