Skip to main content
Glama

Delimit Ledger List

delimit_ledger_list
Read-onlyIdempotent

Filter and page through ledger items by status, priority, tags, text, time range, or external link. Sort results by updated date, created date, or priority to pinpoint the records you need.

Instructions

List ledger items with rich filters, sort, and pagination (LED-1145).

When to use: to query a venture's ledger with filters — by status, priority, tags, text, time window, or external link. When NOT to use: for a top-N summary (use delimit_ledger_context) or to fetch a single item (delimit_ledger_query).

Sibling contrast: delimit_ledger_context is the top-5 summary; delimit_ledger_query fetches one; this is the powerful list call.

Side effects: read-only. Calls ai.ledger_manager.list_items. Single-value status / priority are kept for back-compat.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
sortNo"updated_at" (default), "created_at", or "priority".updated_at
textNoCase-insensitive substring match on title + description.
limitNoPage size. Default 20.
orderNo"asc" or "desc" (default).desc
cursorNoOpaque pagination token from prior next_cursor. Becomes invalid if filters change between calls.
fieldsNoResponse projection. "" / "*" = full; "slim" = subset; CSV = those fields only. Unknown names ERROR.
ledgerNo"ops", "strategy", or "both" (default).both
statusNoSingle-value status filter (back-compat).
ventureNoProject name/path. Empty = auto-detect.
priorityNoSingle-value priority filter (back-compat).
status_inNoComma-separated statuses (e.g. "open,blocked").
priority_inNoComma-separated priorities (e.g. "P0,P1").
created_afterNoISO-8601 timestamp lower bound on creation time. If omitted, no lower bound is applied.
updated_afterNoISO-8601 timestamp lower bound on last-update time. If omitted, no lower bound is applied.
created_beforeNoISO-8601 timestamp upper bound on creation time. If omitted, no upper bound is applied.
updated_beforeNoISO-8601 timestamp upper bound on last-update time. If omitted, no upper bound is applied.
tags_contains_allNoComma-separated tags; item must contain ALL.
linked_external_idNoSubstring match in description / tags / context (github URL, Linear id, Discord thread).

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

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

  1. Changed18 schema fields changedv4.7.9
    • addedInput schema / properties / created_after
      Added value: +{
      +  "default": "",
      +  "description": "ISO-8601 timestamp lower bound on creation time. If omitted, no lower bound is applied.",
      +  "type": "string"
      +}
    • addedInput schema / properties / created_before
      Added value: +{
      +  "default": "",
      +  "description": "ISO-8601 timestamp upper bound on creation time. If omitted, no upper bound is applied.",
      +  "type": "string"
      +}
    • addedInput schema / properties / cursor
      Added value: +{
      +  "default": "",
      +  "description": "Opaque pagination token from prior next_cursor. Becomes invalid if filters change between calls.",
      +  "type": "string"
      +}
    • addedInput schema / properties / fields
      Added value: +{
      +  "default": "",
      +  "description": "Response projection. \"\" / \"*\" = full; \"slim\" = subset; CSV = those fields only. Unknown names ERROR.",
      +  "type": "string"
      +}
    • changedInput schema / properties / ledger / description
      Previous value: -"\"ops\", \"strategy\", or \"both\"."New value: +"\"ops\", \"strategy\", or \"both\" (default)."
    • changedInput schema / properties / limit / description
      Previous value: -"Max items to return."New value: +"Page size. Default 20."
    • addedInput schema / properties / linked_external_id
      Added value: +{
      +  "default": "",
      +  "description": "Substring match in description / tags / context (github URL, Linear id, Discord thread).",
      +  "type": "string"
      +}
    • addedInput schema / properties / order
      Added value: +{
      +  "default": "desc",
      +  "description": "\"asc\" or \"desc\" (default).",
      +  "type": "string"
      +}
    • changedInput schema / properties / priority / description
      Previous value: -"Filter by priority - \"P0\", \"P1\", \"P2\", or empty for all."New value: +"Single-value priority filter (back-compat)."
    • addedInput schema / properties / priority_in
      Added value: +{
      +  "default": "",
      +  "description": "Comma-separated priorities (e.g. \"P0,P1\").",
      +  "type": "string"
      +}
    • addedInput schema / properties / sort
      Added value: +{
      +  "default": "updated_at",
      +  "description": "\"updated_at\" (default), \"created_at\", or \"priority\".",
      +  "type": "string"
      +}
    • changedInput schema / properties / status / description
      Previous value: -"Filter by status - \"open\", \"done\", \"in_progress\", or empty for all."New value: +"Single-value status filter (back-compat)."
    • addedInput schema / properties / status_in
      Added value: +{
      +  "default": "",
      +  "description": "Comma-separated statuses (e.g. \"open,blocked\").",
      +  "type": "string"
      +}
    • addedInput schema / properties / tags_contains_all
      Added value: +{
      +  "default": "",
      +  "description": "Comma-separated tags; item must contain ALL.",
      +  "type": "string"
      +}
    • addedInput schema / properties / text
      Added value: +{
      +  "default": "",
      +  "description": "Case-insensitive substring match on title + description.",
      +  "type": "string"
      +}
    • addedInput schema / properties / updated_after
      Added value: +{
      +  "default": "",
      +  "description": "ISO-8601 timestamp lower bound on last-update time. If omitted, no lower bound is applied.",
      +  "type": "string"
      +}
    • addedInput schema / properties / updated_before
      Added value: +{
      +  "default": "",
      +  "description": "ISO-8601 timestamp upper bound on last-update time. If omitted, no upper bound is applied.",
      +  "type": "string"
      +}
    • changedInput schema / properties / venture / description
      Previous value: -"Project name or path. Auto-detects if empty."New value: +"Project name/path. Empty = auto-detect."
  2. Changed5 schema fields changedv4.5.5
    • addedInput schema / properties / ledger / description
      Added value: +"\"ops\", \"strategy\", or \"both\"."
    • addedInput schema / properties / limit / description
      Added value: +"Max items to return."
    • addedInput schema / properties / priority / description
      Added value: +"Filter by priority - \"P0\", \"P1\", \"P2\", or empty for all."
    • addedInput schema / properties / status / description
      Added value: +"Filter by status - \"open\", \"done\", \"in_progress\", or empty for all."
    • addedInput schema / properties / venture / description
      Added value: +"Project name or path. Auto-detects if empty."
  3. First observedv0.1.0

TDQS

A4.7/5.0
Behavior4/5

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

Annotations already declare readOnlyHint and idempotentHint, but the description adds useful context: it explicitly states 'Side effects: read-only', names the underlying implementation call, and explains the back-compat behavior of single-value status/priority. This goes beyond the structured annotations without contradicting them.

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 well-structured and front-loaded with the core purpose, followed by concise usage routing, sibling contrast, and side effects. Every sentence earns its place; the back-compat note is particularly valuable without adding bulk.

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?

With 18 parameters, a rich input schema, an output schema, and annotations, the description completes the picture by providing routing guidance, filter category summaries, and explicit read-only semantics. Nothing needed to call this tool correctly is missing.

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. The description adds value by grouping the 18 parameters into meaningful categories (status, priority, tags, text, time window, external link) and by flagging that single-value status/priority are back-compat, implying preference for the _in variants. This helps an agent navigate a large parameter set.

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?

The description opens with a specific verb and resource ('List ledger items with rich filters, sort, and pagination'), and the sibling contrast explicitly names the nearby tools it is not — delimit_ledger_context and delimit_ledger_query. An agent can immediately distinguish this from similar ledger tools.

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

Usage Guidelines5/5

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

The description provides explicit 'When to use' and 'When NOT to use' sections, naming the alternatives (delimit_ledger_context for top-N summary, delimit_ledger_query for single item) and the conditions that select them. No inference is required.

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

Install Server

Other Tools

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/delimit-ai/delimit-mcp-server'

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