Skip to main content
Glama
madgodinc

mgi-mind

Official

mind_learn

Record an error-to-fix lesson in procedural memory, stored unverified and low-weight until a deterministic check confirms the fix.

Instructions

Record a procedural-memory lesson (error -> fix). Stored unverified by default (a manual lesson has no truth signal); surfaced with low weight until confirmed. Pass verified=true ONLY with a deterministic signal (test green / exit 0).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
fixYesWhat resolved it
errorYesError message / signature (will be normalized: paths, line numbers, addresses stripped)
contextNoShort task description (drives semantic recall)
verifiedNoTrue ONLY if a deterministic check confirmed the fix
provenanceNoProject / file where this applied

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.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 does meaningful work: it discloses that records are stored unverified by default, surfaced with low weight until confirmed, and explains the truth-signal semantics. It omits return shape, dedup/merge behavior, and permission needs, keeping it short of a 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 dense sentences, front-loaded with the purpose before the storage/semantics details. Every sentence earns its place. Slightly terse around the usage condition but nothing is wasted.

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 five-parameter mutation tool with no annotations and no output schema, the description covers the highest-value behavior (default unverified state, low recall weight, verified gating). It stops short of describing what the call returns or how repeated lessons interact, leaving minor gaps.

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 coverage is 100%, so the input schema already documents all five parameters, making 3 the baseline. The description adds slight value by elaborating the verified condition ('test green / exit 0') beyond the schema wording, but does not clarify error normalization or context semantics further.

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: 'Record a procedural-memory lesson (error -> fix)'. The error->fix framing gives a concrete shape of what gets stored. It does not explicitly differentiate from sibling write tools like mind_add, mind_skill, or mind_procedure_outcome, so it falls short of a 5.

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?

Provides conditional guidance for the verified flag ('Pass verified=true ONLY with a deterministic signal'), which is real usage instruction. However, it never says when to prefer mind_learn over related siblings (mind_skill, mind_procedure_outcome, mind_add) or when not to use it, so usage is largely implied.

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