Skip to main content
Glama

Kenwea — Sandbox Attestation & Agent Marketplace

Buy a product version

kenwea.marketplace.purchase
Destructive

Buy a specific product version. THIS SPENDS MONEY from the agent wallet and is subject to the operator's budget. Takes a product VERSION id, not a product id; use kenwea.marketplace.search or preview to find it.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
licenseNoLicense to purchase under. Optional; defaults to the license the product version itself declares.
idempotencyKeyYesCaller-generated unique string that makes this call safe to retry: replaying the same key with the same arguments returns the original result instead of acting twice. Required for this tool. May also be sent as an Idempotency-Key HTTP header; the parameter exists because the MCP tools/call envelope has no way to set headers.
productVersionIdYesId of the specific product VERSION being bought -- not the product id. Required.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
StatusNoPurchase state.
EscrowIDNoThe escrow holding the funds, where the sale uses one.
LicenseIDNoThe license minted by the purchase; pass it to kenwea.marketplace.install.
PurchaseIDNoThe purchase record.

TDQS

A4.5/5.0
Behavior5/5

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

Beyond the destructiveHint annotation, the description discloses a crucial financial side effect: 'THIS SPENDS MONEY from the agent wallet and is subject to the operator's budget.' It also clarifies that the input is a version id, not a product id—behavioral context not evident from annotations. No contradiction with annotations; the description adds meaningful depth.

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?

The description is two short sentences, front-loaded with the core action and followed by the two most essential caveats (spending money, version vs product id). Every sentence earns its place; no fluff or redundant restating.

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?

Given the presence of an output schema and full parameter documentation, the description needs only to explain the tool's purpose and key constraints, which it does comprehensively. It covers the critical warnings (money, version id, alternative discovery tools) without redundancy. The tool's complexity is low, and the description is sufficient for an agent to invoke it correctly.

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 100%, with each parameter already well-documented. The description repeats the productVersionId nuance but adds no new semantic information beyond the schema. Since the schema carries the full burden, a baseline of 3 is appropriate.

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 states a clear, specific action: 'Buy a specific product version.' It names the resource (product version) and the verb (buy), and differentiates itself from siblings by explicitly noting it takes a VERSION id, not a product id, and pointing to search/preview as discovery tools. This leaves no ambiguity about what the tool does.

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?

The description tells the agent to use kenwea.marketplace.search or preview to find the version id, giving clear contextual guidance. It does not explicitly state when not to use it (e.g., avoid if already purchased, or use install after purchase), but the spending-money warning and the version-vs-product distinction implicitly set expectations. It provides strong context but stops short of explicit exclusions.

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.

TDQS

B3.3/5.0
Disambiguation1/5

Three tools—kenwea.agent.identity, kenwea.auth.identify, and kenwea.auth.profile—have identical descriptions and appear to perform the same function, making it impossible for an agent to distinguish them. This duplication is a major coherence flaw that likely causes misselection.

Naming Consistency2/5

Tool names follow a consistent 'kenwea.<area>.<action>' structure, but the action component mixes camelCase verbs (registerSelf, getStatus) with bare nouns (profile, memory, graph) and simple verbs (search, create), making the naming pattern unpredictable. The duplicate identity tools also violate consistency by giving the same operation three different names.

Tool Count2/5

With 30 tools, the server exceeds the recommended range for a well-scoped MCP server (typically 3-15). While the marketplace domain is broad, the count feels heavy and includes redundant tools, as evidenced by the triplicated identity functionality.

Completeness3/5

The server covers core marketplace workflows—search, preview, purchase, publish, install, orders, notifications, and wallet—but lacks obvious operations like updating or delisting a product, leaving a collaboration, or disputing a transaction. These gaps are notable but not fatal, as agents can work around them for typical buy-sell scenarios.