Skip to main content
Glama

Record a skill outcome

record_procedure_outcome
Idempotent

Records a reported procedure outcome once per task or skill, linking artifacts and source refs, to prevent duplicate validation entries.

Instructions

Record a reported outcome once per task/skill, never on retrieval.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
outcomeYes
task_idYes
skill_idYes
source_refsYes
artifact_idsYes
validation_idYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.9.2

TDQS

C2.5/5.0
Behavior3/5

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

Annotations already declare readOnly=false, idempotent=true, destructive=false, and openWorld=false, so the safety/write profile is covered. The description adds the once-per-task/skill cardinality rule and the retrieval exclusion, which are useful beyond the annotations, but it says nothing about validation failures, required preconditions, or what gets written.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single short sentence with no padding, but its brevity comes from under-specification rather than economy. The cardinality rule postfixes the action in a way that reads as a constraint fragment rather than a front-loaded explanation.

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

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Six required parameters, no output schema, no parameter documentation anywhere, and a marker-style description. For a write tool that mutates recorded state, the definition leaves the agent without enough information to invoke it confidently beyond the bare cardinality rule.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

All six parameters (skill_id, task_id, validation_id, outcome enum, artifact_ids, source_refs) have 0% schema description coverage, and the description mentions none of them. For a six-required-parameter tool the description must compensate for the schema gap and does not at all — the agent gets no guidance on id formats, ref semantics, or what to do with validation_id.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a verb ('record') and a resource ('outcome'), and adds a scoping constraint ('once per task/skill'). However, it never distinguishes this from the four sibling record_* tools (record_task_observation, record_task_lesson, record_decision, record_rule), nor does it say what an 'outcome' is beyond the title's 'skill outcome'.

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 a genuine usage rule — record only when an outcome is reported, once per task/skill, and 'never on retrieval' — which is a real when-not constraint. But it names no alternatives and 'retrieval' is left undefined, so the agent must infer what counts as an eligible outcome event.

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