Skip to main content
Glama

read_outline

Get a file's structure—functions, classes, signatures—at configurable depth without reading the full file. Use for quick code navigation and understanding.

Instructions

File structure: functions/classes/signatures, no full read. depth=hierarchy nesting, NOT call depth. Known symbol? read_symbol.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
fileYesFile path relative to workspace_dir (e.g. "src/auth.py")
depthNoHierarchy depth: 0=top-level only, 1=class+methods, 2=full recursive (default: 1)
max_itemsNoMax top-level items to return (default: 50)
include_refsNoInclude reference counts per symbol (default: false)
workspace_dirYesREQUIRED: project root (abs). reindex first if new.
include_test_refsNoInclude test reference counts (default: false)

Schema Changelog

Changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. First observed

TDQS

A4/5.0
Behavior3/5

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

With no annotations, the description carries the transparency burden. It discloses the key behavioral limitation ('no full read') and clarifies depth semantics, adding value beyond the schema. Yet it does not mention whether the tool is purely read-only, whether it requires indexing, or what the return format is, leaving some behavioral aspects undisclosed.

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?

The description is extremely concise, packing critical info into two short sentences and a question. It is front-loaded with the core purpose and every clause adds value without redundancy.

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 a read tool with 6 parameters, the description gives a clear outline of purpose and a sibling pointer. It lacks explicit mention of call depth alternatives and return details, but the schema covers parameters and the tool name implies read-only behavior. Overall, it is adequate but could slightly expand on when to use call_chain.

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%, so each parameter is already documented. The description adds a useful clarification that depth means hierarchy nesting, not call depth, but this largely reinforces the schema's existing 'Hierarchy depth' description. Baseline 3 is appropriate.

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?

Description clearly states the tool reads file structure (functions/classes/signatures) rather than full content, and explicitly distinguishes from read_symbol. The phrase 'no full read' clarifies scope, matching the tool 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?

Provides clear guidance for the known-symbol case ('Known symbol? read_symbol'), and 'depth=hierarchy nesting, NOT call depth' implicitly directs call-depth analysis elsewhere. However, it does not explicitly name call_chain or other alternatives for full reads, so some usage context is missing.

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

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/wulun811/LiuHe'

If you have feedback or need assistance with the MCP directory API, please join our Discord server