Skip to main content
Glama

cw_cal_help

Returns the CAL language reference, run procedure, and generated programs so you can create, delete, or read SONAR note data on a free license and avoid known traps.

Instructions

CAL is SONAR's legacy macro language and it is NOT behind the membership paywall, unlike CakeScript. It reads and writes note data directly, so on a free licence it is the only way to CREATE, DELETE or READ notes — the dialogs can only transform existing ones. This returns the language reference (fields, operators, builtins), the run procedure, the generated programs, and the traps that cost real time to find.

Input Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.2.0

TDQS

A3.7/5.0
Behavior4/5

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

With no annotations, the description carries the full burden and largely meets it: it enumerates the returned sections (reference, run procedure, programs, traps) and discloses the licensing constraint that governs CAL versus CakeScript. It stops short of explicitly stating the call is side-effect-free and read-only, which is the one piece of behavioral clarity an agent still has to assume.

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 substantive but the ordering is off: the opening sentence is about paywall status and CakeScript, while what the tool actually returns appears only in the last sentence. Phrases like 'traps that cost real time to find' are persuasive rather than informative, and the em-dash clause about dialogs is tangential to invoking this 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 zero-parameter, no-output-schema help tool, the description covers what an agent needs: what comes back, why it matters, and the CAL/CakeScript licensing distinction. It could go one step further and point to cw_cal_run as the follow-on action, but nothing essential to correct invocation 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?

The tool takes zero parameters, which sets the baseline at 4 per the rubric; there is nothing for the description to add or omit. The empty schema confirms no parameter semantics are needed.

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?

The final sentence names the resource concretely: the CAL language reference (fields, operators, builtins), run procedure, generated programs, and known traps. That tells an agent exactly what it gets back. It does not, however, explicitly position itself against the closely related cw_cal_plan / cw_cal_run / cw_cal_cleanup siblings, so the differentiation is implicit 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 Guidelines3/5

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

Usage is strongly implied — the description explains that CAL is the only way to CREATE/DELETE/READ notes without a paid licence, which makes clear why an agent would reach for this reference. But it never says 'call this before cw_cal_run' or 'not needed if you already know CAL syntax', so the when-to-use step is left to inference.

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