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 — usexentfi_list_blockchainsto find valid values),label? - Returns: the created
AgentWallet
xentfi_link_wallet
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, defaultTRANSFER),idempotencyKey?,confirm(required boolean) - Returns: the created
AgentTransaction, or{ submitted: false, wouldSend }ifconfirmwasfalse
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?(defaulttrue),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?(defaulttrue),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.

