Skip to main content
Glama

get_brief

Read-onlyIdempotent

Retrieve a brief from a vault by target slug, resolving supersede chains to the terminal brief. Returns null when stale or too old unless allow_stale is true.

Instructions

Look up a brief by target slug. D-13 decision tree: staleness dominates; age is independent; follow the supersede chain to the terminal brief. Returns null when the caller MUST recompile (stale + !allow_stale OR too_old + !allow_stale).

Input Schema

NameRequiredDescriptionDefault
vaultYesVault name (registered in [vaults] config block)
targetYesStable cross-version handle for the brief
allow_staleNoWhen true, return briefs flagged stale or too_old with annotation rather than null
max_age_daysNoReject briefs older than this many days unless allow_stale=true

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv2.0.0-rc.5

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already cover the safe-read profile (readOnly, idempotent, non-destructive), yet the description adds real behavioral value: the null contract under stale/too_old plus !allow_stale, and the supersede-chain resolution. The 'D-13 decision tree' reference is internal jargon the agent cannot resolve, which caps this below 5.

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?

Three sentences, front-loaded with the core verb+resource, then the decision rule and the null contract. Dense and mostly waste-free, though the unexplained 'D-13 decision tree' label costs a little clarity.

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 retrieval tool with no output schema, the description covers the null contract and chain-following, which are the essential behaviors. It leaves gaps on what a brief actually contains and how the supersede chain is traversed, and leans on an unexplained internal decision-tree reference.

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 baseline is 3, but the description goes further by explaining how allow_stale and max_age_days interact with staleness to produce null versus an annotated brief. That interaction is not spelled out in the schema and is the key calling decision.

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?

States a specific verb and resource ('Look up a brief by target slug') and adds scope detail (supersede chain to the terminal brief) that separates it from a plain note fetch. It does not name its closest sibling (compile_brief) explicitly, so the differentiation is implied rather than stated.

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?

The null-return clause tells the agent when this tool will not yield a brief and that the caller must recompile, which is an actionable routing cue. It stops short of naming the alternative tool (compile_brief) or stating exclusions, so it is clear context rather than explicit alternatives.

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