Basis MCP Server
OfficialServer Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| BASIS_API_KEY | No | Basis API key (starts with bsk_). Shown once at creation — save it. If omitted, auto-provisioned on first run via SIWE. Required on subsequent runs if a key already exists on the server. | |
| BASIS_PRIVATE_KEY | Yes | BNB Smart Chain wallet private key (0x-prefixed) |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| buy_tokenA | Buy a token using USDB. Elastic supply — buying increases price. Previews before executing. NOTE: Floor+ tokens (multiplier 1-99) and prediction market tokens have 1.5% tax, other tokens have 0.5% — account for this in slippage. |
| sell_tokenA | Sell a token for USDB. Checks balance first. Use percentage to scale out. NOTE: Floor+ tokens (multiplier 1-99) and prediction market tokens have 1.5% tax, other tokens have 0.5% — account for this in slippage. |
| get_priceB | Get current USD price of a token. |
| get_token_priceA | Get raw token price (reserve ratio). Different from get_price (USD). |
| preview_tradeB | Preview a buy or sell without executing. |
| leverage_buyA | Open leveraged position. NO price liquidation — time-based only. Simulates first, requires confirm=true. |
| close_leverageB | Close (or partially close) a leverage position. 10% increments. |
| get_leverage_positionsA | List all leverage positions for the wallet. |
| create_tokenA | Create a new token. You earn 20% of every trade forever. Stable+ = price only up, Floor+ = real movement with protection. Provide image_url OR image_file_path (at least one required). |
| unfreeze_tokenB | Open frozen token to public trading. Irreversible. |
| whitelist_walletsC | Add wallets to frozen token's whitelist. |
| get_token_stateB | Get token state — frozen, bonded, supply, price. |
| claim_rewardsC | Claim accumulated rewards from reward phase. |
| get_claimable_rewardsA | Check claimable rewards amount before claiming. |
| get_my_tokensA | List all tokens you created with prices and state. |
| is_ecosystem_tokenA | Check if a token address is a valid Basis ecosystem token. |
| get_fee_amountA | Get the factory token creation fee. |
| get_floor_priceA | Get the USDB floor price for a factory token. Does NOT work on STASIS — only factory-created tokens. |
| create_marketB | Create prediction market. Earn 20% of net trading fees forever. Provide image_url OR image_file_path. |
| betA | Buy shares in a prediction market outcome. UNCAPPED payouts — winners split entire losing pool + general pot, NOT $1/share. Before betting: 1) get_my_shares for existing position 2) estimate_shares_out for new shares 3) get_potential_payout(TOTAL shares = existing + new, usdb=bet_amount) → payout_if_win is your TOTAL payout. Profit = payout_if_win - total_invested. |
| redeem_winningsB | Claim winnings from resolved market. |
| get_market_infoC | Get market data + outcome probabilities. |
| propose_outcomeB | Propose winning outcome (5 USDB bond). |
| dispute_outcomeB | Dispute proposed outcome (5 USDB bond). |
| vote_on_disputeA | Vote during dispute. Requires resolver_stake first. 24h lock. |
| finalize_marketC | Finalize market resolution after challenge period. |
| claim_bountyC | Claim resolution bounty. |
| get_my_sharesA | Check shares held in a prediction market. To sell shares, use list_order (order book limit sell) — there is no AMM sell for prediction shares. |
| resolver_stakeC | Stake/unstake for dispute voting eligibility. |
| get_market_resolution_statusC | Full resolution pipeline status. |
| get_bounty_poolC | Get bounty pool amount for a prediction market. |
| get_general_potC | Get general pot amount for a prediction market. |
| estimate_shares_outB | Estimate shares you'd receive for a USDB bet. Add result to existing shares (from get_my_shares) to get total, then pass total to get_potential_payout with estimated_usdb_to_pool=bet_amount. |
| get_potential_payoutA | Calculate prediction market resolution payout: (yourShares / winningCirculatingShares) × totalPool. Two modes: (1) CURRENT: pass existing shares, usdb=0. (2) BET PREVIEW: pass total shares (existing+new), new_shares_from_bet = new shares from estimate_shares_out, usdb = bet amount. |
| stake_stasisB | Buy STASIS and/or wrap→wSTASIS→lock. Multi-step. |
| unstake_stasisB | Unwrap/sell staked STASIS. |
| vault_borrowB | Borrow USDB against locked wSTASIS. 2% + 0.005%/day. |
| vault_repayC | Repay vault loan. |
| get_vault_statusC | Complete vault position status. |
| get_vault_loanA | Get full loan details for an active vault loan. Handles the vault-as-borrower indirection automatically. Returns null if no active vault loan. |
| extend_loanC | Extend vault or hub loan. ~400x cheaper than new loan. |
| take_loanB | Loan against any token. No price liquidation. For STASIS prefer vault_borrow. |
| repay_loanC | Repay a hub loan. |
| get_loansC | List loans. Monitor expiry — silent auto-liquidation. |
| get_user_loan_detailsC | Get on-chain details for a specific loan. |
| get_user_loan_countB | Count of loans for the wallet. |
| increase_loan_collateralC | Add collateral without new origination fee. |
| claim_liquidationC | Claim remaining collateral from expired loan. |
| claim_leverage_liquidationA | Claim USDB residue from a liquidated leverage position. Position must be inactive (already liquidated) and have a non-zero claim. Uses loanId (leverage position id), NOT hubId. |
| partial_loan_sellB | Partially sell hub loan collateral. 10% increments. |
| get_balancesB | Wallet balances — USDB, STASIS, wSTASIS, factory tokens. |
| get_market_listC | List prediction markets. |
| get_token_listC | List/search tokens. Filter by creator with dev param. |
| get_token_detailC | Get full detail for a single token. |
| get_price_historyC | OHLC candles for a token. |
| get_trade_historyC | Recent trades for a token. |
| get_platform_statsC | Platform pulse — phase, stats, currency. |
| get_my_statsA | Your trading stats — trades, tokens created, loans. |
| get_my_profileB | Your profile — tier, rank, streak. |
| remove_whitelistC | Remove wallet from frozen token whitelist. |
| get_leaderboardC | Get platform leaderboard. |
| get_public_profileC | Get public profile for a wallet. |
| get_my_projectsA | Get your created tokens and markets. |
| get_my_referralsB | Get your referral data. |
| get_my_ordersA | Get your order book history. Paginated with optional status/market/outcome filters. |
| get_my_daily_capsA | Today's cap-fill percentages for the authenticated wallet. Returns { date, resetsInSeconds, pointCaps[4]: trading|prediction|creator|positions, countCaps[2]: social_x|social_moltbook }. Each percent is 0-100. Caps reset at 00:00 UTC. |
| get_whitelistC | View whitelist for a frozen token. |
| get_token_commentsC | Get comments on a token. |
| get_loan_eventsC | Get loan event history. |
| get_vault_eventsC | Get vault staking event history. |
| get_market_eventsC | Get prediction market event history. |
| get_market_liquidityC | Get liquidity data for a prediction market. |
| register_agentB | Register as AI agent on-chain (ERC-8004). |
| get_agent_id_from_txA | Get agent ID from a registration transaction hash (recovery tool). |
| is_agent_registeredB | Check if a wallet is registered as an agent. |
| get_final_outcomeC | Get the resolved outcome of a finalized market. |
| get_resolver_constantsA | Get dispute period, proposal period, bond amounts. |
| is_resolver_voterA | Check if a wallet is an eligible resolver voter. |
| get_resolver_stakeC | Get your resolver stake amount. |
| get_bounty_per_voteC | Get bounty allocation per vote for a market. |
| get_vote_countC | Get vote count for an outcome in a dispute round. |
| has_betted_on_marketC | Check if you have bet on a prediction market. |
| get_outcomeC | Get data for a single prediction market outcome. |
| get_initial_reservesC | Get initial reserves for a number of outcomes. |
| convert_to_assetsC | Convert wSTASIS shares to STASIS value. |
| get_total_vault_assetsB | Get total assets in the staking vault. |
| get_token_vesting_idsC | Get vesting schedule IDs for a token. |
| claim_vesting_tokensB | Claim vested tokens from a vesting schedule. |
| take_loan_on_vestingC | Take a loan against a vesting schedule. |
| repay_loan_on_vestingC | Repay a loan taken against a vesting. |
| create_gradual_vestingC | Create gradual vesting schedule. |
| create_cliff_vestingC | Create cliff vesting — all tokens unlock at once. |
| get_vesting_detailsC | Get details for a vesting schedule. |
| get_vesting_countA | Total vesting schedules created. |
| get_claimable_vestingB | Check claimable amount for a vesting. |
| get_my_vestingsA | List vestings where you are beneficiary or creator. |
| change_vesting_beneficiaryC | Transfer vesting to new beneficiary. |
| extend_vestingC | Extend vesting duration. |
| add_tokens_to_vestingC | Add more tokens to existing vesting. |
| get_vesting_details_batchC | Get details for multiple vestings at once. |
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
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/Launch-On-Basis/MCP-TS'
If you have feedback or need assistance with the MCP directory API, please join our Discord server