{
  "schema_version": "1.1",
  "name": "BananaCrystal MCP Server",
  "description": "The payment layer for AI agents. A single MCP endpoint exposing 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 blockchain in under 5 seconds.",
  "url": "https://agentic.bananacrystal.com/mcp",
  "transport": "streamable_http",
  "auth": {
    "type": "header",
    "header": "x-api-key"
  },
  "provider": {
    "name": "BananaCrystal",
    "url": "https://www.bananacrystal.com",
    "founded": "2020",
    "blockchain": "Hedera Hashgraph"
  },
  "tools": [
    {
      "name": "get_balances",
      "category": "read",
      "description": "Fetch stablecoin token balances for any Hedera wallet. Returns balances for all platform tokens or a specific token by ID.",
      "parameters": {
        "accountId": {
          "type": "string",
          "description": "Hedera account ID (e.g. 0.0.12345). Defaults to authenticated user's account.",
          "required": false
        },
        "tokenId": {
          "type": "string",
          "description": "Hedera token ID (e.g. 0.0.67890). If omitted, returns all platform token balances.",
          "required": false
        }
      }
    },
    {
      "name": "get_exchange_rate",
      "category": "read",
      "description": "Get live buy/sell exchange rates for a currency pair. Returns current market rate.",
      "parameters": {
        "currency": {
          "type": "string",
          "description": "Currency code (e.g. USD, EUR, NGN, GBP)",
          "required": true
        }
      }
    },
    {
      "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": {
        "direction": {
          "type": "string",
          "description": "Filter by direction: incoming | outgoing | swap",
          "required": false
        },
        "type": {
          "type": "string",
          "description": "Filter by type: swap | transfer",
          "required": false
        },
        "limit": {
          "type": "number",
          "description": "Max number of transactions to return (default 50)",
          "required": false
        },
        "page": {
          "type": "number",
          "description": "Page number (default 1)",
          "required": false
        }
      }
    },
    {
      "name": "get_my_limits",
      "category": "read",
      "description": "Get configured spending limits and live usage for the authenticated API key. Returns per-transaction max, daily cap, and current usage.",
      "parameters": {}
    },
    {
      "name": "transfer_tokens",
      "category": "write",
      "description": "Transfer stablecoins (USDb, EURb, NGNb, GBPb, and 146+ others) between Hedera wallets. OTP-guarded — requires a 6-digit code sent to the account owner's email. Settles on-chain in under 5 seconds. Platform fee: 0.3% per transfer.",
      "parameters": {
        "token_id": {
          "type": "string",
          "description": "Hedera token ID to transfer",
          "required": true
        },
        "recipient_account_id": {
          "type": "string",
          "description": "Recipient Hedera account ID, email address, or username",
          "required": true
        },
        "amount": {
          "type": "string",
          "description": "Transfer amount (net, before 0.3% platform fee)",
          "required": true
        },
        "otp_code": {
          "type": "string",
          "description": "6-digit OTP from email (required for execution step)",
          "required": true
        },
        "transaction_ref": {
          "type": "string",
          "description": "Transaction reference from request_transfer_otp step",
          "required": true
        }
      }
    },
    {
      "name": "swap_currency",
      "category": "write",
      "description": "Swap between any two stablecoin pairs (e.g. USDb → NGNb, USDb → EURb). Exchange rate and fees calculated automatically. Settles on Hedera in under 5 seconds.",
      "parameters": {
        "from_token_id": {
          "type": "string",
          "description": "Token ID or symbol to swap FROM (e.g. USDb or 0.0.123)",
          "required": true
        },
        "from_amount": {
          "type": "string",
          "description": "Amount of source token to swap (before fees)",
          "required": true
        },
        "to_token_id": {
          "type": "string",
          "description": "Token ID or symbol to swap TO (e.g. NGNb or 0.0.456)",
          "required": true
        }
      }
    },
    {
      "name": "initiate_deposit",
      "category": "fiat",
      "description": "Initiate a fiat deposit via bank wire (ACH or wire). Requires verified KYC. Credits the user's BananaCrystal wallet.",
      "parameters": {
        "amount": {
          "type": "number",
          "description": "Deposit amount",
          "required": true
        },
        "currency": {
          "type": "string",
          "description": "Currency code (e.g. USD, USDC)",
          "required": true
        },
        "rail_type": {
          "type": "string",
          "description": "Payment rail: ach | wire",
          "required": false
        }
      }
    },
    {
      "name": "request_withdrawal",
      "category": "fiat",
      "description": "Request a fiat withdrawal to a bank account. Requires verified KYC.",
      "parameters": {
        "amount": {
          "type": "number",
          "description": "Withdrawal amount",
          "required": true
        },
        "currency": {
          "type": "string",
          "description": "Currency code (e.g. USD, USDC)",
          "required": true
        },
        "destination_account": {
          "type": "string",
          "description": "Destination bank account or address",
          "required": false
        },
        "rail_type": {
          "type": "string",
          "description": "Payment rail: ach | wire",
          "required": false
        }
      }
    },
    {
      "name": "get_kyc_status",
      "category": "kyc",
      "description": "Get KYC verification status for the authenticated user. Returns current verification level and any pending requirements.",
      "parameters": {
        "user_id": {
          "type": "string",
          "description": "External user ID. Defaults to authenticated user.",
          "required": false
        }
      }
    },
    {
      "name": "get_my_profile",
      "category": "kyc",
      "description": "Get the full profile of the authenticated user — external user ID, wallet(s), account ID, email, name, and MCP key metadata.",
      "parameters": {}
    }
  ],
  "capabilities": {
    "total_tools": 40,
    "settlement_time": "under 5 seconds",
    "fee_transfer": "0.3%",
    "fee_swap": "0.5%",
    "read_tools": "free",
    "currencies_supported": 150,
    "blockchain": "Hedera Hashgraph",
    "token_standard": "HTS (Hedera Token Service)",
    "uptime": "99.9%",
    "security": [
      "OTP verification on all transfers",
      "Per-key spending limits",
      "Idempotency keys",
      "On-chain audit trail",
      "API key scopes (read_only, transfer, swap, fiat, offers, rate)"
    ]
  },
  "stablecoins": [
    "USDb",
    "EURb",
    "GBPb",
    "NGNb",
    "GHSb",
    "KESb",
    "ZARb",
    "CADb",
    "BRLb"
  ],
  "integrations": [
    "Claude Desktop",
    "OpenAI Responses API",
    "LangChain",
    "CrewAI",
    "AutoGPT"
  ],
  "links": {
    "docs": "https://agents.bananacrystal.com/docs",
    "signup": "https://agents.bananacrystal.com/auth/signup",
    "llms_txt": "https://agents.bananacrystal.com/llms.txt",
    "landing": "https://agents.bananacrystal.com/"
  },
  "last_updated": "2026-05-07"
}
