Skip to main content
Glama

create_receipt

Generate Ed25519-signed receipts using pre-computed SHA-256 hashes for external data. Record AI actions with full control over receipt fields and cryptographic verification.

Instructions

Create an Ed25519-signed receipt with pre-computed SHA-256 hashes. Use when you have already hashed the input/output data externally or need full control over receipt fields. For automatic hashing, use track_action instead. Returns the signed receipt object with receipt_id. The receipt is stored locally in SQLite and can be completed later with complete_receipt.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
actionYesAction name being recorded (e.g., "generate_code", "analyze_data")
input_hashYesPre-computed SHA-256 hash of the input data in format "sha256:hexstring"
receipt_typeNoReceipt type: "action" (default), "verification", "judgment", or "arbitration"
output_hashNoPre-computed SHA-256 hash of the output data in format "sha256:hexstring"
output_summaryNoHuman-readable summary of the output
modelNoAI model used
tokens_inNoInput tokens
tokens_outNoOutput tokens
cost_usdNoCost in USD
latency_msNoLatency in milliseconds
tool_callsNoTools called during the action
tagsNoTags for categorization
confidenceNoConfidence score 0-1
metadataNoArbitrary metadata
parent_receipt_idNoParent receipt ID for chains
chain_idNoChain ID (auto-generated if not provided)
statusNoInitial status: "pending" (default, complete later) or "completed"
constraintsNoArray of constraint definitions to evaluate (types: max_latency_ms, max_cost_usd, min_confidence, required_fields, status_must_be, output_schema)
expires_atNoISO datetime when this receipt expires
ttl_msNoTime-to-live in milliseconds from now
Behavior4/5

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

Discloses key behaviors: Ed25519 signing, local SQLite storage, ability to complete later, and return of receipt_id. However, lacks details on idempotency, error conditions, or permission requirements. With no annotations, the description carries a high burden and mostly meets it.

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?

Four sentences, each essential. Front-loaded with purpose, then guidelines, then storage/return info. No redundancy.

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?

Given the complexity (20 params, nested objects), the description covers purpose, input requirements, alternatives, storage, and lifecycle. Missing details on validation or error handling, but overall comprehensive.

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 coverage is 100%, so baseline is 3. The description reinforces the pre-computed hash requirement and notes optionality of many parameters, but adds minimal new semantic value beyond the schema.

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 specifies a concrete action ('Create an Ed25519-signed receipt with pre-computed SHA-256 hashes') and clearly differentiates from siblings like track_action (automatic hashing) and complete_receipt (completion later).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly states when to use ('when you have already hashed... or need full control') and provides an alternative ('For automatic hashing, use track_action'). Also mentions return value and storage for full context.

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

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/webaesbyamin/agent-receipts'

If you have feedback or need assistance with the MCP directory API, please join our Discord server