Skip to main content
Glama

hac_record_learning

Records error patterns, fixes, and best practices into SAP-Commerce-MCP's persistent knowledge base to help resolve recurring SAP Commerce issues.

Instructions

Records a newly discovered error pattern, solution, or best practice into the MCP's persistent knowledge base.

Args: pattern_name: Short title for the rule/pattern (e.g. 'B2BCostCenter Type Code') problem: Description of the obstacle, error, or symptom encountered solution: Exact fix, workaround, or ImpEx/Groovy snippet that solves it tags: Categorization tags (e.g. ['b2b', 'impex'])

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
tagsNo
problemYes
solutionYes
pattern_nameYes

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv3.0.0

TDQS

A3.5/5.0
Behavior2/5

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

With no annotations, the description carries the full behavioral burden. It discloses that entries go into a 'persistent' knowledge base, which signals durability, but says nothing about permissions/auth, deduplication, idempotency, or whether an entry can be updated or deleted after recording. For a mutation tool this leaves significant gaps.

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?

The purpose sentence is front-loaded and the Args block is compact and well-organized. Nothing is wasted, though the Args list is somewhat verbose relative to the small tool surface.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/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 values need no explanation, and the description adequately covers purpose and all four parameters. However, for a write/record tool with zero annotation coverage, it omits behavioral details (auth, idempotency, mutability of stored entries) that an agent would benefit from.

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: each of the four parameters is given clear semantics with examples (pattern_name as a short title, problem as symptom, solution as fix/snippet, tags as categorization with a sample array). This adds substantial meaning beyond the bare schema titles.

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 description states a specific verb ('Records') and clearly identifies the resource ('error pattern, solution, or best practice') and target ('MCP's persistent knowledge base'). It is easy to understand what the tool does, but it does not explicitly differentiate itself from similarly-named siblings like hac_self_improve or hac_self_diagnose.

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 phrase 'newly discovered' implies when to record (upon discovery), and the three item types hint at eligible content, but there is no explicit when/when-not guidance or any mention of alternative tools for capturing knowledge. Usage is implied rather than directed.

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