{"schema_version":"1.0","last_updated":"2026-06-09","server_name":"bananacrystal","server_label":"BananaCrystal Payment MCP","server_url":"https://agentic.bananacrystal.com/mcp","transport":"streamable_http","auth":{"type":"header","header":"x-api-key"},"links":{"landing":"https://agents.bananacrystal.com/","docs":"https://agents.bananacrystal.com/docs","signup":"https://agents.bananacrystal.com/auth/signup"},"description":"The payment layer for AI agents. 40 production-ready tools for stablecoin transfers, currency swaps, balance checks, fiat operations, prediction market offers, and agent-to-agent transactions across 150+ currencies. Settled on Hedera in under 5 seconds. Transfer fee: 0.3%. Swap fee: 0.5%.","tools":[{"name":"get_balances","category":"read","description":"Fetch token balances for a Hedera wallet address. Returns balances for all platform tokens or a specific token.","parameters":{"accountId":"string (optional)","tokenId":"string (optional)","chainId":"number (optional, default 296)"}},{"name":"get_exchange_rate","category":"read","description":"Get live buy/sell exchange rates for a currency pair (e.g. USD, EUR, NGN, GBP).","parameters":{"currency":"string (required): ISO currency code e.g. USD, EUR, NGN"}},{"name":"get_transaction_history","category":"read","description":"Retrieve categorized transaction history for a user. Filterable by direction (incoming/outgoing/swap) and type (swap/transfer).","parameters":{"userExtId":"string (optional)","direction":"string (optional)","type":"string (optional)","limit":"number (optional)","page":"number (optional)"}},{"name":"get_my_limits","category":"read","description":"Get configured spending limits and live usage for the authenticated API key.","parameters":{}},{"name":"get_my_profile","category":"read","description":"Get full profile: user ID, wallet(s), account ID, email, and MCP key metadata.","parameters":{}},{"name":"get_kyc_status","category":"read","description":"Check KYC verification status for the authenticated user.","parameters":{}},{"name":"list_supported_currencies","category":"read","description":"List all supported currencies with their dynamic fees.","parameters":{}},{"name":"list_available_tokens","category":"read","description":"List all available stablecoin tokens on the platform with metadata.","parameters":{}},{"name":"get_deposit_status","category":"read","description":"Check the status of a pending fiat deposit.","parameters":{"depositId":"string (required)"}},{"name":"get_withdrawal_status","category":"read","description":"Check the status of a pending fiat withdrawal.","parameters":{"withdrawalId":"string (required)"}},{"name":"get_escrow_balances","category":"read","description":"Get escrow balances held in open prediction market trades.","parameters":{}},{"name":"get_escrow_history","category":"read","description":"Get history of escrow deposits and releases.","parameters":{"limit":"number (optional)","page":"number (optional)"}},{"name":"get_agent_config","category":"read","description":"Get the current agent approval and OTP settings for the authenticated user.","parameters":{}},{"name":"transfer_tokens","category":"transfer","description":"Transfer stablecoins to another wallet. Requires OTP verification (a 6-digit code sent to the account owner's email). Two-step process: call request_transfer_otp first, then transfer_tokens with the OTP.","parameters":{"token_id":"string (required): Hedera token ID","recipient_account_id":"string (required): Hedera account ID, email, or username","amount":"string (required)","otp_code":"string (required): from request_transfer_otp","transaction_ref":"string (required): from request_transfer_otp"}},{"name":"request_transfer_otp","category":"transfer","description":"Request a 6-digit OTP for a pending transfer. Returns a transactionRef to use with transfer_tokens.","parameters":{"token_id":"string (required)","recipient_account_id":"string (required)","amount":"string (required)"}},{"name":"request_agent_transaction","category":"transfer","description":"Submit an agent-to-agent transaction request for approval by the account owner.","parameters":{"tool":"string (required): the tool to execute after approval","params":"object (required): parameters for the tool"}},{"name":"check_approval_status","category":"transfer","description":"Check whether a pending agent transaction request has been approved or rejected.","parameters":{"requestId":"string (required)"}},{"name":"execute_approved_transaction","category":"transfer","description":"Execute a previously approved agent transaction request.","parameters":{"requestId":"string (required)"}},{"name":"update_my_agent_settings","category":"transfer","description":"Toggle agent-to-agent approval mode and OTP requirements for the authenticated user.","parameters":{"requireApproval":"boolean (optional)","requireOtp":"boolean (optional)"}},{"name":"swap_currency","category":"swap","description":"Swap between two stablecoin pairs instantly. Exchange rate and fees calculated automatically. Fee: 0.5%.","parameters":{"from_token_id":"string (required): token ID or symbol e.g. USDb","from_amount":"string (required)","to_token_id":"string (required): token ID or symbol e.g. NGNb"}},{"name":"estimate_swap_fees","category":"swap","description":"Estimate fees and output amount for a currency swap before executing.","parameters":{"from_token_id":"string (required)","from_amount":"string (required)","to_token_id":"string (required)"}},{"name":"initiate_deposit","category":"fiat","description":"Initiate a fiat deposit via Brale. Requires verified KYC.","parameters":{"amount":"number (required)","currency":"string (required)","rail_type":"string (optional)"}},{"name":"request_withdrawal","category":"fiat","description":"Request a fiat withdrawal. Requires verified KYC.","parameters":{"amount":"number (required)","currency":"string (required)","destination_account":"string (optional)","rail_type":"string (optional)"}},{"name":"initiate_kyc","category":"fiat","description":"Start KYC verification via Sumsub. Required for fiat operations.","parameters":{}},{"name":"list_offers","category":"offers","description":"List open prediction market offers. Filterable by currency pair, direction, and status.","parameters":{"currency":"string (optional)","direction":"string (optional)","limit":"number (optional)","page":"number (optional)"}},{"name":"get_offer","category":"offers","description":"Get details for a specific prediction market offer by ID.","parameters":{"offerId":"string (required)"}},{"name":"get_my_offers","category":"offers","description":"List all offers created by the authenticated user.","parameters":{"limit":"number (optional)","page":"number (optional)"}},{"name":"create_offer","category":"offers","description":"Create a new prediction market offer. Funds are held in escrow until the trade settles.","parameters":{"currency":"string (required)","direction":"string (required): buy or sell","amount":"string (required)","rate":"string (required)","expiry":"string (optional): ISO 8601 datetime"}},{"name":"update_offer","category":"offers","description":"Update the rate or amount of an existing open offer.","parameters":{"offerId":"string (required)","rate":"string (optional)","amount":"string (optional)"}},{"name":"delist_offer","category":"offers","description":"Delist an offer from the marketplace without deleting it. Funds are returned from escrow.","parameters":{"offerId":"string (required)"}},{"name":"delete_offer","category":"offers","description":"Permanently delete an offer. Funds are returned from escrow.","parameters":{"offerId":"string (required)"}},{"name":"engage_offer","category":"offers","description":"Trade against an open offer. Initiates a prediction market trade.","parameters":{"offerId":"string (required)","amount":"string (required)"}},{"name":"list_trades","category":"offers","description":"List all active and completed trades on the marketplace.","parameters":{"status":"string (optional)","limit":"number (optional)","page":"number (optional)"}},{"name":"get_trade","category":"offers","description":"Get details for a specific trade by ID.","parameters":{"tradeId":"string (required)"}},{"name":"get_my_trades","category":"offers","description":"List all trades the authenticated user is a party to.","parameters":{"limit":"number (optional)","page":"number (optional)"}},{"name":"cancel_trade","category":"offers","description":"Cancel an active trade. Funds are returned from escrow if within the cancellation window.","parameters":{"tradeId":"string (required)"}},{"name":"get_server_info","category":"read","description":"Get information about the BananaCrystal MCP server, including version, uptime, and supported API versions.","parameters":{}},{"name":"ping","category":"read","description":"Ping the BananaCrystal MCP server to verify connectivity and measure latency.","parameters":{}},{"name":"echo","category":"read","description":"Echo back the input message. Used to test payload transmission and connectivity.","parameters":{"message":"string (required): message to echo back"}},{"name":"reset_sandbox_balance","category":"sandbox","description":"Reset all token balances in the sandbox environment back to their default values (e.g. 10,000 USDb). Sandbox-only tool.","parameters":{}}],"supported_frameworks":["Claude Desktop","OpenAI Responses API","LangChain (langchain-mcp-adapters)","CrewAI","AutoGPT","MCP SDK","Cursor","Windsurf"],"stats":{"total_tools":40,"fee_transfer":"0.3%","fee_swap":"0.5%","settlement_seconds":5,"currencies_supported":150,"availability":"24/7","blockchain":"Hedera"}}