Skip to main content
Glama

assetfare_prepare_cctp_action

Idempotent

Prepare the unsigned CCTP burn for a legacy v1 session using your caller-owned event signer public key. Advances preparation without receiving private keys, signing, or submitting transactions.

Instructions

Prepare the unsigned CCTP burn for the current legacy v1 session using a caller-owned event signer public key. Use only when the legacy workflow reports this as the next action; for v2 routes use assetfare_v2_prepare or assetfare_v2_session_create instead. Requires caller approval and advances preparation state, but never receives the event signer private key, signs, or submits.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
session_idYesLegacy v1 session UUID returned by assetfare_create_session. Use only with the unversioned legacy workflow; do not pass a v2 session ID.
access_tokenYesSensitive legacy v1 wallet-bound bearer token returned by assetfare_finish_wallet_auth. Use only with unversioned legacy session tools; never log or use it as a v2 session capability.
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. Strict approval_v3 requests additionally enforce its ASCII key pattern.
event_signer_publicYesFresh caller-generated ephemeral Solana event signer public key for the legacy CCTP burn. Keep the matching private key client-side; never send it.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv1.2.0
    • changedInput schema / properties / idempotency_key / description
      Previous value: -"Caller-generated retry key, 8-128 characters. Reuse it only when retrying the same logical mutation; choose a new key for a new operation."New value: +"Caller-generated retry key, 8-128 characters. Reuse it only when retrying the same logical mutation; choose a new key for a new operation. Strict approval_v3 requests additionally enforce its ASCII key pattern."
  2. First observedv0.1.0

TDQS

A4.6/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=false, idempotentHint=true, and destructiveHint=false. The description adds meaningful behavioral context beyond those annotations: it requires caller approval, advances preparation state, and explicitly does not receive the private key, sign, or submit. This is useful for an agent deciding whether this is the right mutation step. It does not describe the response shape, but no output schema exists and the core behavioral traits are well covered.

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 compact and front-loaded: it states the core action first, then usage constraints, then exclusions. Every sentence earns its place, and the sibling differentiation is woven in without 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?

For a 4-parameter tool with no output schema, the description covers the action, the workflow context, the v2 alternative, the caller-approval requirement, and the non-goals (no private key, no signing, no submission). The only minor gap is that it does not describe what the response contains or how to detect success, but the description is otherwise complete enough for an agent to invoke it 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 description coverage is 100%, so the schema already documents all four parameters. The description adds value by clarifying the event_signer_public is caller-generated and ephemeral, and by reinforcing that the private key must never be sent. It also clarifies the access_token is legacy v1 wallet-bound and not a v2 capability. This goes beyond the schema's field 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 ('prepare'), a specific resource ('unsigned CCTP burn'), and the exact context ('current legacy v1 session using a caller-owned event signer public key'). It also explicitly distinguishes itself from v2 sibling tools, so an agent can tell it apart from assetfare_v2_prepare and assetfare_v2_session_create without opening schemas.

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?

The description gives explicit when-to-use guidance: 'Use only when the legacy workflow reports this as the next action' and explicitly names alternatives for v2 routes. It also states what the tool does not do (never receives the private key, signs, or submits), which helps an agent avoid misuse.

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