Skip to main content
Glama

Read a receipt, and unseal it if there is credit

get_receipt
Read-onlyIdempotent

Read a receipt back as JSON by its id. Folded, it returns the twelve lines and a pay object naming where a human pays. With a bearer token that has credit it unseals: the evidence and the fix paragraph for every open line, and the SOTA Security Model read of the app. One fixed price per unsealed report. 401 for a token we did not issue, 402 when the balance will not cover it.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
tokenNoOptional API credit token. Without it the receipt comes back folded.
receipt_idYesThe receipt id, from scan_app.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.6/5.0
Behavior5/5

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

Annotations already declare readOnly/idempotent/non-destructive, and the description layers on the things they cannot: 401 for an unrecognized token, 402 for insufficient balance, and a fixed price per unsealed report. The billing and auth requirements are exactly the behavioral context an agent needs before spending a user's credit.

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?

Four tight sentences, front-loaded with the core read behavior before the conditional unseal path. Slightly jargon-heavy phrasing ("folded", "unseal it", "SOTA Security Model read") costs a little clarity, but nothing is wasted.

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?

There is no output schema, so the description must carry the return contract, and it does: twelve lines plus a pay object when folded, evidence and a fix paragraph per open line plus a model read when unsealed. Combined with error codes and pricing, an agent has everything needed to call this correctly.

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. The description goes beyond the schema by explaining the consequence of the optional token parameter (folded vs unsealed output), which is the key semantic distinction for that argument. The receipt_id origin is only documented in the schema, not repeated in the description.

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 specific verb and resource ("Read a receipt back as JSON by its id") and then defines the two distinct output modes by name, folding and unsealing. An agent can tell exactly what this returns versus the sibling scan_app, which merely produces the receipt_id. The in-line definition of the jargon terms keeps it unambiguous.

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?

It gives clear conditional routing: without a token the receipt comes back folded; with a token carrying credit it unseals. That tells the agent when to supply the optional token. It stops short of naming alternatives or explicitly stating when not to call it, since scan_app is the only sibling and the relationship is left implicit.

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