Skip to main content
Glama

journal_distill

Distills raw journal events since the high-water mark into topic-grouped markdown entries, then advances the mark and auto-provisions project rows for orphan slugs. Runs idempotently.

Instructions

Run the distillation pipeline: read raw events since the high-water mark, group by topic, write mechanical markdown entries, advance high-water. Idempotent. Auto-provisions a project row for orphan slugs (e.g. default) that have no registered project yet.

Input Schema

NameRequiredDescriptionDefault
max_eventsNoMaximum raw events to process per run (default 200, max 2000).
project_slugNoProject slug to distill. Defaults to the current active project.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv6.1.2

TDQS

A4/5.0
Behavior4/5

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

With no annotations, the description carries the behavioral burden and does well: it discloses the high-water read, topic grouping, mechanical markdown writes, high-water advancement, idempotency, and auto-provisioning of project rows for orphan slugs. It still omits permissions, partial-failure behavior, and whether raw events are retained or deleted.

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?

Three front-loaded sentences with no filler: purpose first, then the key idempotency trait, then the auto-provisioning side effect. Every sentence adds actionable information for selecting and calling the tool.

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 two-parameter, no-annotation pipeline tool, the description is nearly complete: it explains the pipeline steps, idempotency, and project-row provisioning. It lacks return-value expectations and failure-mode details, which is a gap given there is no output schema, but the core invocation context is well covered.

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 both max_events and project_slug are already documented. The description adds only behavioral context around orphan slugs (e.g. 'default') rather than new parameter-level meaning, matching the baseline of 3 when schema does the heavy lifting.

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?

States a specific verb and resource — running the distillation pipeline — and details the internal sequence: read events since high-water, group by topic, write entries, advance high-water. This operationally distinguishes it from sibling journal tools like journal_write (manual entry) and journal_housekeep (cleanup), so an agent can identify its role.

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

Usage Guidelines3/5

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

The description implies usage by explaining the pipeline's function, so an agent can infer it is for distilling journal events. However, it never states when to choose this over alternatives such as journal_write or journal_housekeep, nor does it give prerequisites or when-not-to-use conditions.

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