wavepay_checkout
Start a checkout for a product/plan on a rail; returns the hosted checkoutUrl to hand the buyer.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| Yes | |||
| phone | No | ||
| planId | Yes | ||
| provider | Yes | ||
| productId | Yes |
Start a checkout for a product/plan on a rail; returns the hosted checkoutUrl to hand the buyer.
| Name | Required | Description | Default |
|---|---|---|---|
| Yes | |||
| phone | No | ||
| planId | Yes | ||
| provider | Yes | ||
| productId | Yes |
Changes observed during successful MCP inspections.
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden, and it does add one genuinely useful behavioral fact: the tool returns a hosted checkoutUrl to hand to the buyer. However, it says nothing about whether calling it creates a persistent session/order, whether repeated calls are idempotent, what auth or account state is required, or how provider-specific flows differ.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence that front-loads the action and appends the return value efficiently; nothing is padded. The only cost is the undefined 'rail', which spends words without adding precision.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 5-parameter, 4-required mutation-style tool with no annotations, no output schema, and 0% schema coverage, the description covers purpose and return artifact but omits parameter meaning, required account/auth state, and side effects. An agent could not confidently populate the schema from this description alone.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% for five parameters, so the description must compensate, and it partially does: 'product/plan' maps to productId+planId, 'rail' loosely gestures at provider, and 'buyer' implies email/phone. It still leaves phone optionality, the provider enum values (paynow, paynow-mobile, paypal), and the required email semantics entirely to the schema's type declarations.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb and resource ('Start a checkout for a product/plan on a rail') and states the artifact produced (hosted checkoutUrl). It is clearly distinct from siblings like wavepay_checkout_status, wavepay_catalog, and wavepay_pricing, though the term 'rail' is jargon that isn't defined and slightly muddies the resource being acted on.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit guidance on when to use this tool versus wavepay_checkout_status or wavepay_pricing, nor any prerequisites (e.g., must the product already be in the catalog? must the buyer be registered via wavepay_register?). Usage is only inferable from the verb 'Start a checkout', which is minimal guidance rather than a stated condition.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Add one secure layer between your agents and this server.