Skip to main content
Glama

List goals

list_gol

Browse goals in your base directory by retrieving IDs, titles, and statuses. Filter the results using glob patterns or select a specific language for focused review.

Instructions

Ids, titles, statuses, and refs of goals in the configured goal base directory, one page at a time, for context before addressing one by id. 'ref' is an opaque, extensionless identifier -- not a filename to read from disk -- for documents that have no assigned id; use it with the get_gol tool instead. An optional glob pattern (e.g. 'dead*') filters the listing to the goals whose id matches it, case-insensitively; glob=None (the default) lists everything, and an empty string matches nothing. max_results/offset control paging (default page size 25, capped at 100); out-of-range values are clamped, not errored. The optional language parameter (default 'en') selects the directory scanned: omitted/'en' = the flat docs/gol/ directory (the default behavior, unchanged); any other ISO 639-1-shaped lowercase two-letter code (e.g. 'de') = only that language's docs/gol/{language}/ subdirectory, listing exactly the existing variants of that language (there is deliberately no 'all languages' mode). The language is shape-validated before any file access (an invalid-shaped value is a ValueError, like an invalid id), and a shape-valid language without a packaged heading-mapping table is rejected up front with an actionable ValueError.

Input Schema

NameRequiredDescriptionDefault
globNo
offsetNo
languageNoen
max_resultsNo

Output Schema

NameRequiredDescriptionDefault
totalYes
offsetYes
resultsYes
truncatedYes
error_countNo
max_resultsYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv0.38.0
    • addedInput schema / properties / language
      Added value: +{
      +  "default": "en",
      +  "title": "Language",
      +  "type": "string"
      +}
  2. First observedv0.36.0

TDQS

A4.5/5.0
Behavior5/5

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

With no annotations supplied, the description carries the full burden and does so: paging defaults (25, capped at 100), tolerated out-of-range values (clamped, not errored), glob semantics including case-insensitivity and the empty-string edge case, and the two distinct validation failure modes for `language` (shape check before file access, missing heading-mapping table rejected up front). This is unusually rich disclosure of errors and limits for a read tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The content is front-loaded and nearly every clause carries real information, but it is delivered as one dense run-on paragraph with nested parentheses and backticked terms, making it hard to scan. Phrases like 'the default behavior, unchanged' and 'there is deliberately no ... mode' edge toward editorializing, and bullets or short segmented sentences would deliver the same facts more efficiently.

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?

An output schema exists, so return-value format need not be explained, yet the description still names the returned fields and covers paging, filtering, and both validation failure paths. The only residual gap is that ordering of results and what an empty page looks like relative to the clamping behavior are not stated.

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

Parameters5/5

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

Schema description coverage is 0%, so the description must compensate and it does for all four parameters: glob (semantics, case-insensitivity, None vs empty string difference, example), offset and max_results (default page size 25, 100 cap, clamping), and language (default 'en', which directory is scanned, ISO 639-1 shape, validation behavior). The subtle None-vs-empty-string distinction is exactly the kind of meaning a bare schema cannot convey.

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?

Opens with a specific verb and resource plus the exact fields returned ('Ids, titles, statuses, and refs of goals in the configured goal base directory'), and explicitly separates itself from get_gol by saying the 'ref' is an identifier to pass to get_gol rather than a filename. An agent can distinguish list_gol from the many sibling list_*/get_* tools without opening another 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?

Gives a clear motivating context ('for context before addressing one by id') and names the follow-up tool for ref-based retrieval (get_gol), plus states that there is deliberately no 'all languages' mode so the agent won't hunt for one. It stops short of contrasting with other list_* siblings or saying when not to list at all (e.g. when an id is already known).

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

Deploy Server

Other Tools