Skip to main content
Glama

record approved metric

record_approved_metric
DestructiveIdempotent

Save a number or metric only after the owner approves the exact wording. LOCKED means the metric is established. An existing locked metric cannot be changed here; the owner revises it with revise_approved_fact. Existing entries require expectedRevision from retrieval. Identical retries leave history unchanged. Do not invent a metric that the owner did not supply.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
tagsNo
titleYes
statusYes
contentYes
productIdYes
revisionReasonNo
expectedRevisionNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
dataNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare idempotent=true and destructive=true, and the description reinforces idempotency ("Identical retries leave history unchanged") while adding the immutability rule for LOCKED metrics and a do-not-invent guardrail. It adds real behavioral context beyond the annotations, though it does not spell out the full effect of destructiveHint (e.g., what a conflicting overwrite does).

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?

Five sentences, each carrying a distinct constraint (approval, LOCKED meaning, locked-edit restriction, expectedRevision, idempotency, no-invention). Dense and front-loaded, with only minor redundancy in the two LOCKED-related sentences.

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?

An output schema exists, so return format need not be described, and the description covers the key mutation constraints (approval gate, immutability, revision concurrency). It is nearly complete, though the enum's other values (DEVELOPING, UNKNOWN, RETIRED) and the roles of undeclared params remain 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 carries the full burden, and it only partially compensates: it explains the LOCKED enum value and the expectedRevision requirement for existing entries. It adds nothing for title, content, tags, revisionReason, or productId, leaving most parameters to be inferred from their names.

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

Purpose5/5

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

States a specific verb and resource (save a number/metric) and front-loads the governing precondition that the owner must approve the exact wording. It explicitly distinguishes itself from revise_approved_fact by carving out locked metrics as out of scope for this tool.

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

Usage Guidelines5/5

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

Gives explicit when-to-use (only after owner approval), when-not (an existing locked metric cannot be changed here), and names the alternative (revise_approved_fact) for that case. It also flags the expectedRevision prerequisite for existing entries, leaving nothing to inference.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources