Skip to main content
Glama
kadal-store

kadal-store

Official

A link to buy

create_buy_link
Read-only

Builds a review and checkout link for chosen items so a person can inspect licences, prices and totals, then pay themselves; creating it charges nothing and buys nothing.

Instructions

A link to a review page on the store where the person sees each item (picture, licence, price), anything they already own, and the total, and pays in the checkout themselves. Only when the person asked to buy or agreed to it; building the link charges nothing and buys nothing. Give them the URL, and never say something was bought.

Input Schema

NameRequiredDescriptionDefault
refNoWhere the link came from, for the store's counts (default agent).
itemsYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.1

TDQS

A4.1/5.0
Behavior5/5

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

Beyond readOnlyHint=true and openWorldHint=true, the description discloses that building the link charges nothing and buys nothing, that payment happens externally in the store's checkout, and that the agent must hand over the URL without asserting a purchase. This is exactly the side-effect context an agent needs before calling a "create_"-named tool.

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?

The core purpose is front-loaded and every clause carries information (review page contents, payment location, when to use, no-charge semantics, URL handoff). The first sentence is a long run-on that is harder to parse than it needs to be.

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?

There is no output schema, and the description correctly covers what the caller gets back (a URL to pass along) plus the crucial no-purchase constraint. It leaves required-item semantics and the item limit to the schema, which is acceptable but leaves a small gap.

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?

With 50% schema description coverage, the schema already documents ref and the tier enum. The description adds only indirect meaning, hinting at licence choice via "see the licence", and says nothing about the undocumented slug field or the 20-item limit. Baseline-appropriate but not compensating for the coverage gap.

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 states a concrete resource and outcome: a link to a store review page where the person reviews items (picture, licence, price), existing ownership and total, then pays in checkout. That clearly separates it from get_download_links (retrieving files) and search_products, though no sibling is named explicitly.

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?

"Only when the person asked to buy or agreed to it" gives an explicit, actionable when-to-use condition, plus the caution against claiming a purchase was made. It stops short of naming alternatives (e.g. recommend or get_download_links for free items), so no exclusion routing is offered.

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