MCP execution tools

executeIntent, walletExecute, agentRun, buildTx, getIntentStatus, and the recommended write sequence.

Execution tools submit catalog-backed intents. Unsupported actions are rejected before broadcast.

Write rails

ToolWhen
walletExecuteSingle agent-owned execution wallet (runMode=agent_wallet) after agentWalletBootstrap
executeIntentFan-out / subscriber lane, hybrid and thirdfy delegated users
agentRunHigher-level run wrapper with JSON params (common in MCP hosts)
buildTxBYOW unsigned tx preparation (runMode=self)
walletSign + walletSubmitBYOW sign and broadcast
getIntentStatusPoll execute-intent fanout jobs only

For walletExecute, read txHash, blockedReason, and blockedStage from the direct response. Do not poll getIntentStatus for solo wallet executes.

  1. Onboarding (once): Onboarding tools
  2. getActionsCatalog
  3. getAgentActions
  4. getProviderActions for the venue family
  5. getChainCapabilities or getNonEvmCapabilities
  6. Readiness gate
    • agent_wallet: agentWalletBootstrap with requireFundingCheck: true when collateral is required
    • self: getSelfReadiness then buildTx / walletSign
    • hybrid / thirdfy: delegationStatus and active Gator binding
  7. Write via the rail that matches runMode
  8. Analytics: trackAgentAction and portfolio reads (Tracking)

Run mode quick reference

ModeAuthorityTypical MCP path
agent_walletManaged execution walletagentWalletBootstrapwalletExecute
thirdfy / hybridDelegated user walletdelegation*executeIntent or agentRun
selfLocal signerbuildTxwalletSignwalletSubmit

Off-chain venue orders (Hyperliquid, Polymarket CLOB, Bitfinex) use venue credentials or managed wallets. Do not use self for those order paths.

Workflow examples

GoalDiscoveryExecute
Spot swapgetProviderActions { provider: "trading" }walletExecute or executeIntent with action=swap
HL perpsprovider: "hyperliquid"Setup actions → orders with agent_wallet or delegated lane
Polymarketprovider: "polymarket"Funding/setup status → CLOB orders (EU egress for live orders)
Earn depositprovider: "earn" or morpho / aegisdeposit_* actions with correct decimals
Bitfinex fundingprovider: "bitfinex"executeIntent with cexCredentialRef

Venue operator detail lives on Integrations pages and in getProviderActions hints.

Hosted runtime context

Pass optional executionContext (runtimeId, orgId) on walletExecute, executeIntent, and agentRun so Thirdfy credits attribute to the correct EarnClaw or Claude runtime.