Skip to main content
Glama

verify

Records a human- or machine-confirmed verification for a knowledge concept, capturing who checked it and when; can promote a draft to stable after human review.

Instructions

Record a §5.2 verified entry {by, at} (at = now, UTC). Two paths: you (an agent or process) checked it: by=/ or process:; the concept is machine-confirmed. A human checked it: omit by; the human gets a confirmation prompt and types their own id. Never pass human: yourself. Present the concept to them first. At the terminal a human runs it with --attest. promote=true also moves a draft to stable (§5.4); only a human review may.

Input Schema

NameRequiredDescriptionDefault
byNo
fileYes
bundleNo
promoteNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A3.8/5.0
Behavior4/5

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

Goes well beyond the annotations (readOnlyHint=false, destructiveHint=false): it discloses that `at` is stamped as now/UTC, that the human path triggers a confirmation prompt and requires the human to type their own id, and that `promote=true` moves a draft to stable with the constraint that only a human review may do so. It does not say what happens on re-verification of an already-verified concept or how failures surface.

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?

Front-loaded with the core action, then cleanly structured as 'Two paths:' followed by the machine case and the human case. Dense but every clause carries information; the only friction is the unexplained §-references that assume spec familiarity.

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?

A non-idempotent mutation tool with no output schema and 0% schema coverage needs to explain its inputs and effects fully. The human/machine paths and the promote side-effect are covered, but the required `file` parameter (what identifies the concept) and `bundle` are left entirely unexplained.

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 0%, so the description must carry the parameter burden. It does an excellent job on `by` (three accepted forms, which to omit) and explains `promote` as draft→stable, but never explains the required `file` parameter or the `bundle` parameter, leaving half the schema undocumented anywhere.

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 `verified` entry with `{by, at}` and an auto UTC timestamp. It is distinguishable in kind from siblings like `record` or `log`, but the '§5.2 verified entry' framing relies on spec knowledge and it never explicitly contrasts itself with `record`/`recheck_apply`.

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

Usage Guidelines4/5

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

Gives genuinely explicit branch guidance: use the `by=<tool>/<version>` or `process:<id>` path when a machine checked the concept, omit `by` when a human checks it. Adds hard exclusions ('Never pass human:<id> yourself', 'Present the concept to them first') and the terminal `--attest` path. It stops short of saying when to call `verify` rather than sibling `record` or `recheck_apply`.

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