Skip to main content
Glama
Storno CLI

Storno CLI

Official
by stornoro

licensing_list_keys

Read-onlyIdempotent

List all license keys for your organization with masked values, status, and last validation timestamps to verify self-hosted instances; only owners can access.

Instructions

List all license keys issued for the current organization. Keys are returned with masked values (first and last 8 characters shown). Includes active and revoked keys with lastValidatedAt timestamps to verify self-hosted instances are running. Only the organization owner can list keys.

Input Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.17

TDQS

A4.7/5.0
Behavior5/5

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

Annotations already declare readOnly, idempotent and non-destructive, yet the description still adds genuinely new traits: values are masked to first/last 8 characters, revoked keys are included alongside active ones, and an owner-level authorization requirement applies. These are exactly the details an agent cannot get from the annotation block.

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

Conciseness5/5

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

Four sentences, no repetition, and the core operation is stated first before disclosure of masking, key states and the owner restriction. Every sentence carries distinct information.

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

Completeness5/5

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

With no parameters, no output schema and rich annotations, the remaining risk is unknown return shape — and the description closes that gap by describing masking format, inclusion of revoked keys and the lastValidatedAt field. Nothing an agent needs in order to call or interpret the result is missing.

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

Parameters4/5

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

The tool takes zero parameters, so the baseline is 4 and there is nothing for the description to disambiguate. It correctly does not waste text on parameter semantics and instead spends it on return content.

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?

The description opens with a specific verb and resource ('List all license keys') scoped to 'the current organization', which cleanly separates it from licensing_create_key, licensing_revoke_key and licensing_validate. An agent can identify the operation without inspecting any schema.

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?

It states the access condition ('Only the organization owner can list keys') and gives a concrete use case ('lastValidatedAt timestamps to verify self-hosted instances are running'), which tells the agent why it would call this. It does not explicitly name when to prefer a sibling (e.g., licensing_validate for checking a single key), so it falls short of a full routing statement.

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

Deploy Server

Other Tools