Skip to main content
Glama

Unlock a purchased capability

unlock_capability
Idempotent

Exchange the license key from the checkout (a purchase requires operator approval) for a signed entitlement and a download link that lasts at most 15 minutes. How the key is handled: the privacy page at /legal/privacy/. Repeating it with the same key is safe and never charges. Use when: your operator completed the hosted checkout and gave you the license key. Not for: a price or a checkout link (get_quote); a free capability downloads from its page. Input: the capability id and the license key, plus quote_id and evaluation_id when you have them. Output: a signed entitlement, a purchase_ref for report_outcome and the download link.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
quote_idNoThe quote_id of the quote the purchase followed, if any (links the records; never changes the price).
capabilityYesCapability id (ak:publisher:name or ak:publisher:name:x.y.z), ak:// URI or slug.
license_keyYesLicense key from the checkout.
evaluation_idNoThe evaluation_id from evaluate_capability, if you evaluated first.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.8/5.0
Behavior5/5

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

Goes well beyond the annotations: states the purchase requires operator approval, that the download link expires in at most 15 minutes, and that repeating with the same key is safe and never charges (a richer, more actionable statement of idempotency than idempotentHint alone). It also explains key handling via the privacy page and that purchase_ref feeds report_outcome.

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-loads the core exchange action, then scopes usage and I/O in clearly separated clauses. Slightly dense, with one awkward fragment ('How the key is handled: the privacy page at /legal/privacy/.') and a redundant restatement of input already in the schema, but overall efficient.

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 output schema, the description names the return payload (signed entitlement, purchase_ref, download link) and its expiry, plus the approval prerequisite and idempotency behavior. An agent has everything needed to call it correctly in sequence.

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?

Schema coverage is 100%, so the baseline is 3, but the description adds usage guidance beyond the schema by clarifying that quote_id and evaluation_id are supplied 'when you have them' and linking them to prior steps (quote, evaluation). This adds conditional/relational meaning the flat schema does not.

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 precise verb+resource: exchanging a checkout license key for a signed entitlement and a time-limited download link. It also explicitly contrasts itself with get_quote and free capability downloads, so an agent can distinguish it from siblings.

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?

Contains explicit 'Use when:' (operator completed hosted checkout and gave the license key) and 'Not for:' clauses naming the alternative tool (get_quote) and the free-download path. Nothing about when to invoke is left 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