Write Tools

prepare_register_agent(ownerPubkey, name, serviceCategory, agentCardUrl, agentCardHash)

Prepare an unsigned registration transaction for client-side signing.

serviceCategory allowed values: "commerce", "dataAnalysis", "contentCreation", "customerService", "financial", "logistics", "development", "research", "other".

agentCardHash: Must be a JSON array of 32 byte values (integers 0–255).

prepare_update_agent(ownerPubkey, newName?, newServiceCategory?, newVersion?, newAgentCardUrl?, newAgentCardHash?, newCapabilities?)

Prepare an unsigned update transaction. All fields optional.

newServiceCategory allowed values: "commerce", "dataAnalysis", "contentCreation", "customerService", "financial", "logistics", "development", "research", "other".

Parameter constraints: newName (1–32 chars), newVersion (1–16 chars), newAgentCardUrl (1–200 chars), newCapabilities (bitmask 0–63).

prepare_deposit(ownerPubkey, ownerTokenAccount, vaultTokenAccount, amount)

Prepare an unsigned USDC deposit transaction.

amount: In USDC base units (6 decimals). For example, 1000000 = 1 USDC.

submit_transaction(txId, signedTx)

Submit a signed transaction for on-chain execution.

signedTx format: The signedTx parameter must be a base64-encoded serialized transaction.

Example Returns

prepare_register_agent

Response
{
  "txId": "tx_reg_a1b2c3",
  "serializedTx": "AQAAAA...base64...",
  "blockhash": "GHtXQBtXMQ2...",
  "lastValidBlockHeight": 287654500,
  "estimatedComputeUnits": 95000,
  "priorityFee": 5000,
  "feePayer": "FeePayerPubkey...",
  "accounts": {
    "agent": "BKq8rN4EwJQG3R9FnLhSGqJ2tNkh8cVRxvNApj7hbfQM",
    "owner": "7xKXtg2CW87d97TXJSDpHD4vMvnQ1985FchZRgCd9oPr"
  },
  "did": "did:sol:7xKXtg2CW87d97TXJSDpHD4vMvnQ1985FchZRgCd9oPr",
  "instructions": "Sign this transaction with the owner keypair, then call submit_transaction with the txId and signedTx."
}

prepare_update_agent

Response
{
  "txId": "tx_upd_d4e5f6",
  "serializedTx": "AQAAAA...base64...",
  "blockhash": "HJtYRCuXNR3...",
  "lastValidBlockHeight": 287654800,
  "feePayer": "FeePayerPubkey...",
  "accounts": {
    "agent": "BKq8rN4EwJQG3R9FnLhSGqJ2tNkh8cVRxvNApj7hbfQM",
    "owner": "7xKXtg2CW87d97TXJSDpHD4vMvnQ1985FchZRgCd9oPr"
  },
  "instructions": "Sign this transaction with the owner keypair, then call submit_transaction with the txId and signedTx."
}

prepare_deposit

Response
{
  "txId": "tx_dep_g7h8i9",
  "serializedTx": "AQAAAA...base64...",
  "blockhash": "KLmZSDwYPQ4...",
  "lastValidBlockHeight": 287655100,
  "feePayer": "FeePayerPubkey...",
  "accounts": {
    "stakeAccount": "9mWRABuz2Aji5Z4dCNfcBqoZGPSvMhR8oi3xTgLPQ72k",
    "owner": "7xKXtg2CW87d97TXJSDpHD4vMvnQ1985FchZRgCd9oPr"
  },
  "instructions": "Sign this transaction with the owner keypair, then call submit_transaction with the txId and signedTx."
}

submit_transaction

Response
{
  "txId": "tx_reg_a1b2c3",
  "status": "confirmed",
  "signature": "5UfDuX...abc123",
  "explorer": "https://explorer.solana.com/tx/5UfDuX...abc123?cluster=devnet"
}