Skip to main content
All tools are prefixed xentfi_ so they don’t collide with tools from other MCP servers. They map directly onto the /v1/agent-self/* and /v1/assets/* routes — each tool’s description below notes the underlying endpoint.
xentfi_list_blockchains, xentfi_get_blockchain, xentfi_list_tokens, xentfi_get_token, xentfi_get_token_price, and xentfi_get_token_prices require an orgId in addition to the agent API key. Set XENTFI_ORG_ID when configuring the MCP server if you plan to use them.

Agent & wallets

xentfi_get_agent_info

Identity and status (ACTIVE / SUSPENDED / REVOKED) for the authenticated agent. Call this first to confirm the API key is valid.
  • Maps to: GET /v1/agent-self
  • Arguments: none
  • Returns: { id, organizationId, name, status }

xentfi_list_wallets

List wallets linked to this agent.
  • Maps to: GET /v1/agent-self/wallets
  • Arguments: addressId?, isActive?, from?, to?, offset?, limit?, order?
  • Returns: paginated { data: AgentWallet[], total, hasMore }

xentfi_create_wallet

Generate a brand-new on-chain wallet on a given blockchain and link it to this agent automatically.
  • Maps to: POST /v1/agent-self/wallets/create
  • Arguments: blockchainId (required — use xentfi_list_blockchains to find valid values), label?
  • Returns: the created AgentWallet
Link an existing XentFi child wallet (deposit address) to this agent by its addressId.
  • Maps to: POST /v1/agent-self/wallets
  • Arguments: addressId (required), label?
  • Returns: the created AgentWallet

xentfi_get_wallet_balance

Token balances and live USD value for one of this agent’s wallets.
  • Maps to: GET /v1/agent-self/wallets/{agentWalletId}/balance
  • Arguments: agentWalletId (required)
  • Returns: { asset, balance, usdValue }[]

Policy

xentfi_get_policy

The agent’s effective spend policy and current spend counters. Call this before a large or unusual payment, and after any POLICY_DENIED result.
  • Maps to: GET /v1/agent-self/policy
  • Arguments: none
  • Returns: { policy, currentSpend: { spentTodayUsd, spentThisWeekUsd, spentThisMonthUsd } }

Payments

xentfi_create_payment

Move funds from one of this agent’s wallets to a recipient (TRANSFER) or settle a checkout (CHECKOUT). Evaluated against the agent’s active Policy server-side.
  • Maps to: POST /v1/agent-self/payments
  • Arguments: agentWalletId, assetId, recipient, amount (all required), kind? (TRANSFER | CHECKOUT, default TRANSFER), idempotencyKey?, confirm (required boolean)
  • Returns: the created AgentTransaction, or { submitted: false, wouldSend } if confirm was false
confirm must be explicitly true for the payment to actually submit. This gives the calling agent (and any human-in-the-loop layer above it) a deliberate checkpoint before funds move. It does not replace XentFi’s own server-side Policy enforcement — a payment with confirm: true can still come back POLICY_DENIED.

xentfi_list_payments

List past and pending payment transactions.
  • Maps to: GET /v1/agent-self/payments
  • Arguments: agentWalletId?, status? (PENDING | POLICY_DENIED | APPROVED | SUBMITTED | EXECUTED | FAILED), from?, to?, offset?, limit?, order?
  • Returns: paginated { data: AgentTransaction[], total, hasMore }

xentfi_get_payment

Full detail for a single payment, including policy evaluation trace and denial reason if applicable.
  • Maps to: GET /v1/agent-self/payments/{id}
  • Arguments: id (required)
  • Returns: the AgentTransaction

Market data

xentfi_list_blockchains

Supported blockchains, filterable by mainnet/testnet, token standard, and name/slug. Use this to find a valid blockchainId before creating a wallet.
  • Maps to: GET /v1/assets/blockchains
  • Arguments: isActive? (default true), includeAssets?, slug?, tokenStandard?, name?, mainnet?, offset?, limit?

xentfi_get_blockchain

Detail for a single blockchain by ID or slug.
  • Maps to: GET /v1/assets/blockchains/{id}
  • Arguments: id (required), includeAssets?

xentfi_list_tokens

Supported tokens, filterable by blockchain, network, or symbol. Use this to find a valid assetId before sending a payment.
  • Maps to: GET /v1/assets/tokens
  • Arguments: blockchainId?, blockchainSlug?, network? (mainnet | testnet), isActive? (default true), isNative?, symbol?, name?, offset?, limit?

xentfi_get_token

Detail for a single token by ID or symbol.
  • Maps to: GET /v1/assets/tokens/{id}
  • Arguments: id (required)

xentfi_get_token_price

Current USD price for one token symbol.
  • Maps to: GET /v1/assets/prices/tokens/{symbol}
  • Arguments: symbol (required)

xentfi_get_token_prices

Current USD prices for up to 100 symbols in a single call.
  • Maps to: POST /v1/assets/prices/tokens
  • Arguments: symbols (required, array of up to 100 strings)

Next steps

Error Handling

How policy denials and API failures come back to the agent.

Client Integrations

Wire these tools into Claude, Cursor, VS Code, ChatGPT, and more.