Skip to main content
Glama

read_outline

Read-onlyIdempotent

List the headings of a document with their paths and sizes (never the text). It also returns each section's size and share of max_chars, the template sections and those missing. Use it to see where a change fits; it does not return the hashes a write needs, which come with read_document.

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": {
      "project_id": "<project_id>",
      "document_id": "<document_id>"
    },
    "name": "read_outline"
  }
}

Input Schema

NameRequiredDescriptionDefault
project_idYes
document_idYes
result_offsetNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4/5.0
Behavior4/5

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

Annotations already establish read-only, idempotent, non-destructive, closed-world behavior, and the description adds real content beyond that: it will not return body text, it will not return write hashes, and it does report section size, share of max_chars, template sections, and missing sections. The gap is that result_offset implies paging, and nothing in the description says results are paginated or how truncation is signaled.

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, front-loaded with what the tool returns before the negative constraints and the alternative. Every clause carries distinct information: output contents, the no-text constraint, the no-hashes constraint, and the sibling that supplies hashes.

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?

For a small read tool with no output schema, the description covers return contents unusually well, but it leaves the identifier parameters and the result_offset paging parameter unexplained, which matters for actually invoking the tool on a large outline. Adequate, with a clear parameter-documentation gap.

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

Parameters2/5

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

Schema description coverage is 0%, so the description carries the full burden for three parameters, yet it never mentions project_id, document_id, or result_offset by name or meaning. Only an implicit notion of "a document" is conveyed, and paging via result_offset is entirely undocumented, so it fails to compensate for the empty schema descriptions.

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?

"List the headings of a document with their paths and sizes (never the text)" gives a specific verb, resource, and output shape, and the parenthetical rules out the most likely misreading. It also names the sibling it is not (read_document) and what that sibling uniquely provides (hashes), so the two are distinguishable without opening a schema.

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?

"Use it to see where a change fits" states the intended situation, and the sentence about hashes coming with read_document explicitly routes the agent elsewhere for write preparation. What's missing is any guidance on when to prefer search_documents or read_document for plain reading, so the exclusions are only partially covered.

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