Verify Economic Receipt
verify_economic_receiptVerify the network Ed25519 signature and digest of an authorized canonical dynamic-commerce or completed-withdrawal receipt.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| receiptId | No | ||
| withdrawalId | No |
verify_economic_receiptVerify the network Ed25519 signature and digest of an authorized canonical dynamic-commerce or completed-withdrawal receipt.
| Name | Required | Description | Default |
|---|---|---|---|
| receiptId | No | ||
| withdrawalId | No |
Changes observed during successful MCP inspections. Dates show when Glama detected each change.
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, so the safety profile is clear. The description adds useful context about what is verified (Ed25519 signature and digest) and which receipt categories apply, but it does not disclose what happens on failure, whether the receipt must already be known to the system, or what response the caller receives.
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?
The description is a single sentence with no filler, and the core action is front-loaded. It is reasonably concise, though the dense phrase 'authorized canonical dynamic-commerce or completed-withdrawal' could be clearer without much added length.
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?
Given the absence of an output schema and two undocumented optional parameters, the description leaves significant gaps: which ID is expected, whether receiptId and withdrawalId are mutually exclusive, and what a successful or failed verification looks like. It provides only the high-level operation without enough operational detail.
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%, and the description does not mention receiptId or withdrawalId at all. With two optional parameters and no explanation of how to select one or whether both can be used, the agent receives no value beyond the raw parameter names in the schema. The description must compensate for the low schema coverage but does not.
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 uses a specific verb 'Verify' and names the exact object: the network Ed25519 signature and digest of a receipt. It identifies the domain (dynamic-commerce or completed-withdrawal receipts), which distinguishes it from generic retrieval tools like get_commerce_receipt or get_withdrawal_status, though the phrase 'authorized canonical' adds jargon and some ambiguity.
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?
The description provides no guidance on when to use this tool versus alternatives such as verify_portable_bundle or get_commerce_receipt. It does not state prerequisites, when verification is necessary, or when a different tool should be used instead. Usage is only vaguely implied by the verb 'Verify'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.