BananaCrystal MCP Server
OfficialServer Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| DEBUG | No | Enable verbose debug logging | false |
| BANANACRYSTAL_API_KEY | Yes | Your API key from agents.bananacrystal.com/account. Sandbox keys start with bc_test_ (no real money). Live keys have no prefix. | |
| BANANACRYSTAL_API_URL | No | Override API endpoint (for MCP tools). Rate service uses /api/v1/mcp/rate/* endpoints on same domain. | https://agentic.bananacrystal.com/mcp |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| pingA | Health check tool that returns pong |
| get_server_infoB | Returns basic server information |
| echoA | Echoes the input message back to the caller |
| get_my_profileA | Get your BananaCrystal profile including user ID, wallets, and account details |
| get_balancesA | Get Hedera account balances for all tokens or a specific token |
| request_transfer_otpA | Step 1: Request an OTP code to authorize a token transfer. An email will be sent with the code. |
| transfer_tokensA | Step 2: Execute the token transfer. If OTP is enabled on your key (default), provide otpCode and transactionRef from request_transfer_otp. If OTP is disabled, these fields are not required. |
| swap_currencyB | Swap between two Hedera tokens. Exchange rate calculated automatically. |
| estimate_swap_feesA | Estimate fees for a currency swap before executing |
| get_exchange_rateA | Get current buy/sell exchange rates for a currency |
| list_supported_currenciesA | List all supported currencies and tokens on BananaCrystal |
| list_available_tokensA | List all available Hedera tokens for the platform |
| get_transaction_historyB | Get your transaction history with filtering options |
| get_my_limitsA | Get your API key limits and current usage |
| update_my_agent_settingsA | Update agent approval settings (require_human_approval, require_otp, callback_url) |
| initiate_kycA | Initiate KYC verification for a user. Returns a Sumsub access token. |
| get_kyc_statusB | Get KYC verification status for a user |
| initiate_depositB | Initiate a fiat deposit via Brale. Requires verified KYC. |
| request_withdrawalA | Request a fiat withdrawal via Brale. Requires verified KYC. |
| get_deposit_statusA | Get the status of a fiat deposit by transfer ID |
| get_withdrawal_statusA | Get withdrawal requests for a user via Brale |
| list_offersA | Browse the prediction market. Returns active offers with trade stats. |
| get_offerA | Get full details of a single offer including trade stats and time remaining |
| get_my_offersA | Get all offers created by a specific user |
| create_offerA | Create a prediction market offer. The creator locks totalAmount in escrow. |
| update_offerA | Edit an existing offer. Only allowed when the offer has no trades yet. |
| delist_offerA | Delist (deactivate) your own offer from the marketplace. Releases locked escrow. |
| delete_offerA | Permanently delete your own offer. Blocked if the offer has active trades. |
| list_tradesA | List all trades on the platform. Filter by trade type or state. |
| get_tradeA | Get full details of a single trade including the parent offer stats |
| get_my_tradesA | Get all trades for a user, including trades they created and trades on offers they own |
| engage_offerC | Engage (trade against) an open offer. The trader locks the same totalAmount in escrow. |
| cancel_tradeA | Cancel an active trade and release your locked escrow. Only possible while trade is active. |
| get_escrow_balancesA | Get a user's escrow balance breakdown, including total, available, and locked amounts |
| get_escrow_historyB | Get a user's full escrow transaction history, covering locks, releases, wins, losses, and fees |
| reset_sandbox_balanceA | Reset your sandbox account balances back to the default pre-seeded amounts. Only works with sandbox keys (bc_test_*). |
| request_agent_transactionA | Request a transaction on behalf of another user. They will receive an email to approve. |
| check_approval_statusB | Check the status of a pending agent transaction approval |
| execute_approved_transactionB | Execute a transaction after it has been approved |
| get_agent_configB | Look up another user's agent configuration |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/BananaCrystal/mcp-server-bananacrystal'
If you have feedback or need assistance with the MCP directory API, please join our Discord server