Skip to main content
Glama

assetfare_v2_session_observe_source

Idempotent

Record already-signed and submitted source transaction hashes to advance the current workflow session. Use this after submission to update status without signing or submitting transactions.

Instructions

Record source hashes the caller already signed and submitted, then advance the workflow. Example: transaction_hashes=[''] with idempotency_key='source-0001'. Never pass an unsigned hash; AssetFare observes but never signs or submits.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
session_idYesV2 workflow session UUID returned by assetfare_v2_session_create. Use only with assetfare_v2_session_* tools; do not pass a legacy session ID.
session_tokenYesSensitive caller-generated v2 session capability: at least 32 CSPRNG bytes encoded as 43-128 URL-safe base64 characters. Generate it locally; never log it or substitute a private key or legacy access token.
idempotency_keyYesCaller-generated retry key, 8-128 characters. Reuse it only when retrying the same logical mutation; choose a new key for a new operation.
transaction_hashesYesOne to eight hashes for source transactions the caller already signed and submitted. Do not provide unsigned payloads or destination hashes.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
signedYes
statusYes
submittedYes
session_idYes
current_actionYes
server_signingYes
action_availableYes
server_submissionYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already indicate mutation and idempotency, but the description adds context: it records hashes and advances the workflow, and explicitly states it never signs or submits. This goes beyond the annotations without contradicting them.

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?

The description is two sentences, front-loaded with the core action and followed by a concise caution. The example is directly useful and the structure is efficient with no wasted words.

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 output schema exists, return values need not be described. The description covers the essential purpose, constraints, and an example. It could mention when to use this vs. the output observation tool, but that's not critical for correct usage.

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 each parameter is documented in the schema. The description adds an example and a constraint on transaction_hashes, providing modest extra value beyond the schema's parameter descriptions.

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 states a specific verb ('Record') and resource ('source hashes'), and clarifies it advances the workflow. It distinguishes from sibling tools by specifying 'source' rather than 'output' hashes, making the purpose 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 provides clear constraints: 'Never pass an unsigned hash' and clarifies that AssetFare never signs or submits. The example with idempotency_key offers concrete usage. It doesn't explicitly name alternatives like assetfare_v2_session_observe_output, but the source/output distinction is implied.

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