The Sperax half is what the name promises — USDs supply and rebase state, veSPA voting power, Demeter farm APRs, vault peg and collateral. The larger half is chain-agnostic: swaps, lending, ENS, portfolio, and a security stack that screens a token for honeypots, taxes and holder concentration before a signature is asked for. All of the read tools work with no key configured.
An MCP server for on-chain work on Arbitrum, BNB Chain and Ethereum. Most of the surface is general EVM — balances, transfers, swaps, bridges, staking, lending, ENS and contract security — and on top of that sit reads and actions for the Sperax protocol: the USDs auto-yield stablecoin, SPA governance, veSPA staking and Demeter yield farms.
- Wallets and transfers: `create_wallet`, `get_native_balance`, `get_erc20_balance`, `transfer_erc20`, `batch_transfer_erc20`, `get_wallet_portfolio`, `get_multichain_portfolio`
- Approvals treated as a standing risk — `get_token_approvals`, `check_token_allowance`, `check_approval_risks`, `revoke_token_approval`
- DEX work: `get_swap_quote`, `get_best_route`, `get_price_impact`, `execute_swap`, plus `add_liquidity`, `remove_liquidity`, `get_pool_reserves`
- Screening before anything is signed: `analyze_token_security`, `detect_honeypot`, `detect_rug_pull_risk`, `get_holder_distribution`, `analyze_contract_permissions`, and the GoPlus set including `goplus_token_security`, `goplus_address_security` and `goplus_signature_decode`
- Lending and staking positions — `get_lending_position`, `calculate_health_factor`, `get_lending_rates`, `stake_tokens`, `get_staking_apr`, `stake_eth_lido`
- Prices from oracles rather than one source: `get_chainlink_price`, `get_multiple_prices`, `check_price_feed_health`, `get_uniswap_pool_price`
- The Sperax protocol itself: `usds_get_info`, `usds_get_rebase_state`, `usds_get_yield_info`, `vespa_get_position`, `vespa_calculate_power`, `demeter_list_farms`, `demeter_estimate_apr`, `vault_get_peg_status`, `vault_simulate_mint`
- Protocol analytics, governance and history — `analytics_get_tvl`, `analytics_compare_yields`, `governance_get_proposals`, `governance_get_voting_power`, `subgraph_usds_rebase_history`
Node.js 18 or newer. The registry entry is `io.github.nirholas/sperax-crypto-mcp` and the published package is `@nirholas/sperax-mcp`, launched over stdio through `npx`. Reads need no credentials at all: `RPC_URL` is optional, and `ARBITRUM_RPC_URL` swaps in your own endpoint for better reliability. Anything that signs a transaction needs `PRIVATE_KEY` in the environment — that is a wallet key sitting in plain client configuration, so use one holding only what you are prepared to lose. An HTTP server mode is available for integrations that want it.
One command — npx -y @nirholas/sperax-mcp
