Skip to main content
Glama

Viridis certify

viridis_certify

Certify a subject (parcel/portfolio) with a module -> a certificate. Errors if the module's backing theorem is not gate-passed (BLOCKED).

Input Schema

NameRequiredDescriptionDefault
inputsYes
subjectYes
module_idYes

Output Schema

NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already declare this is a non-read-only, non-idempotent, non-destructive, closed-world operation, so the safety bar is partly covered. The description usefully discloses the gate-passed failure mode (BLOCKED error), but says nothing about whether the certificate is persisted, where it lives, or whether repeat calls accumulate state despite idempotentHint=false.

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?

Two short sentences, front-loaded with the action and result, with no filler. The arrow notation is compact and readable, though the parenthetical example adds little the verb did not already convey.

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 values need no prose, and the description covers action, target, and failure mode. What is missing for a state-producing tool with an unstructured nested input object is guidance on what belongs in "inputs", though the existence of an output schema lowers the burden.

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% across three required parameters, so the description must carry the burden and only partly does: "subject (parcel/portfolio)" hints at the subject value domain. module_id and especially the nested free-form "inputs" object (additionalProperties: true) remain completely unexplained, leaving the most error-prone parameter opaque.

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 gives a specific verb ("Certify") and resource ("a subject (parcel/portfolio)") plus the product ("a certificate"), so an agent knows exactly what the tool produces. It does not, however, distinguish itself from the sibling viridis_certify_envelope, which an agent could easily confuse with this one.

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?

Usage is only implied by the certifying verb; there is no explicit when-to-use versus a sibling like viridis_certify_envelope or viridis_verify_mark. It does add one valuable precondition — the module's backing theorem must be gate-passed or the call errors as BLOCKED — which partly compensates.

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.