Surf MCP Server
OfficialServer Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| SURF_API_KEY | Yes | Your Surf API key (get one at https://ask.surf) |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| surf_dexA | Use this when the user needs dex data from Surf. Commands: token-price - DEX Token OHLCV Price params: chain* (string), address* (string), interval (string), time_range (string), from (string), to (string) |
| surf_exchangeA | Use this when the user needs exchange data from Surf. Access real-time trading data from major exchanges including Binance, OKX, Bybit, and more. Query live ticker prices, order book depth, OHLCV candlestick charts, and perpetual contract data such as funding rates, open interest, and long/short ratios. Commands: candles - Exchange Historical Candles params: exchange* (string) [bithumb, upbit, hashkey, bitflyer, coinone, korbit], pair* (string), interval (string) [5m, 4h, 1w], from (string), to (string), include_synthetic (boolean), limit (integer), offset (integer) coverage - Exchange Market Coverage params: exchange (string) [bithumb, upbit, hashkey, bitflyer, coinone, korbit], q (string), quote (string), type (string) [spot], status (string) [active, inactive], data_status (string), sort_by (string), order (string) [asc, desc], limit (integer), offset (integer) depth - Exchange Order Book Depth params: pair* (string), type (string) [spot, swap, perpetual, perp], limit (integer), exchange (string) funding-history - Exchange Funding Rate History params: pair* (string), from (string), limit (integer), exchange (string) klines - Exchange OHLCV Candlesticks params: pair* (string), type (string) [spot, swap, perpetual, perp], interval (string), from (string), limit (integer), exchange (string) long-short-ratio - Exchange Long/Short Ratio History params: pair* (string), interval (string) [1h, 4h, 1d], from (string), limit (integer), exchange (string) [binance, okx, bybit, bitget] markets - Exchange Trading Pairs params: exchange (string), type (string) [spot, swap, future, option, perpetual, perp], base (string), quote (string), search (string), limit (integer) perp - Exchange Perpetual Contract Snapshot params: pair* (string), fields (string), exchange (string) price - Exchange Ticker Price params: pair* (string), type (string) [spot, swap, perpetual, perp], exchange (string) |
| surf_fundA | Use this when the user needs fund data from Surf. Explore crypto venture capital. Look up fund profiles with team info and social links, browse their full investment portfolio with round details, and rank funds by tier or portfolio size. Commands: detail - Fund Profile Detail params: id (string), q (string) portfolio - Fund Portfolio params: id (string), q (string), limit (integer), offset (integer), is_lead (string) [true, false, ], invested_after (integer), invested_before (integer), sort_by (string) [invested_at, recent_raise, total_raise], order (string) [asc, desc] ranking - Fund Ranking params: metric* (string) [tier, portfolio_count], limit (integer), offset (integer) |
| surf_signalA | Use this when the user needs signal data from Surf. Explore ranked project signal score snapshots, token-of-day/week highlights, and project-level signal cards with latest price, price-change, dimension scores, compact signals, and AI summaries. Commands: detail - Signal Detail params: id (string), project_slug (string), time_range (string) [24h, 7d] projects - Signal Projects params: time_range (string) [24h, 7d], limit (integer), offset (integer) token-of-the-day - Signal Token Of The Day params: limit (integer), offset (integer) token-of-week - Signal Token Of The Week params: limit (integer), offset (integer) |
| surf_hyperliquidA | Use this when the user needs hyperliquid data from Surf. Commands: account - Account Portfolio params: address* (string) candles - Market Candles params: symbol* (string), interval (string), from* (string), to* (string) fills - Fills params: address* (string), from (string), to (string), to_ms (integer), to_fill_id (string), order (string) [desc, asc], cursor (string), symbol (string), limit (integer) leaderboard - Trader Leaderboard params: time_range (string) [1d, 7d, 30d, 90d, all], sort_by (string) [total_pnl, win_rate, volume_traded], min_trades (integer), min_days_active (integer), min_account_age_days (integer), min_human_score (integer), dex (string), limit (integer), offset (integer) orders - Open & Recent Orders params: address* (string), open_limit (integer), historical_limit (integer) performance - Trading Performance params: address* (string), dex (string) positions - Open Positions params: address* (string), dex (string) trades - Closed Trades params: address* (string), symbol (string), direction (string) [long, short], dex (string), from (string), to (string), cursor (string), limit (integer) trades-aggregate - Closed Trades Aggregate params: address* (string), group_by (string) [day, symbol, direction, size_bucket, hold_bucket], from (string), to (string), dex (string), fill_gaps (boolean) trade-context - Closed Trade Funding and Leverage params: address* (string), symbol* (string), direction* (string) [long, short], open_time* (integer), close_time* (integer) |
| surf_marketA | Use this when the user needs market data from Surf. Get a high-level view of the crypto market. Browse token rankings by market cap or volume, track derivatives across all exchanges, monitor spot ETF fund flows, view liquidation events, compute technical indicators (RSI, MACD, Bollinger Bands, and more), explore on-chain valuation metrics (NUPL, MVRV, SOPR), and check the Fear & Greed Index. Commands: etf - ETF Flow History params: symbol* (string) [BTC, ETH, XRP, SOL, HYPE], sort_by (string) [flow_usd, timestamp], order (string) [asc, desc], from (string), to (string) exchange-flow-exchanges - Exchange Flow Exchanges params: symbol* (string) [BTC, ETH], limit (integer), offset (integer) fear-greed - Fear & Greed Index History params: from (string), to (string) futures - Futures Market Overview params: sort_by (string) [open_interest, funding_rate, volume_24h, long_short_ratio], order (string) [asc, desc] liquidation-chart - Liquidation Chart params: symbol* (string), interval (string), exchange (string), limit (integer), from (string), to (string) liquidation-exchange-list - Liquidation by Exchange params: symbol (string), time_range (string) [1h, 4h, 12h, 24h], sort_by (string) [liquidation_usd, long_liquidation_usd, short_liquidation_usd], order (string) [asc, desc] liquidation-order - Large Liquidation Orders params: exchange (string), symbol (string), min_amount (string), side (string) [long, short], sort_by (string) [usd_value, timestamp, price], order (string) [asc, desc], limit (integer), offset (integer), from (string), to (string) listing - Exchange Listing Events params: from* (string), to (string), symbol (string), exchange (string), product (string) [spot, margin, perp, pre_market_perp, all], type (string) [listing, delisting, cancelled, advanced, postponed], limit (integer), offset (integer) onchain-indicator - On-Chain Indicator params: symbol* (string) [BTC, ETH], metric* (string), granularity (string) [day], from (string), to (string), exchange (string) options - Options Market Data params: symbol* (string), sort_by (string) [open_interest, volume_24h], order (string) [asc, desc] price - Token Price History params: symbol* (string), time_range (string), from (string), to (string), currency (string) price-indicator - Technical Indicator params: indicator* (string), symbol* (string), interval (string), exchange (string) [binance, bybit, coinbase, kraken], from (string), to (string), options (string) public-sale - Public Sale / Crowdsale params: id (string), q (string) ranking - Token Rankings params: sort_by (string) [market_cap, change_24h, volume_24h], order (string) [asc, desc], category (string), limit (integer), offset (integer) tge - Token Generation Event params: id (string), q (string) |
| surf_newsA | Use this when the user needs news data from Surf. Stay up to date with crypto news. Browse the latest articles from major crypto media outlets, read full article content, and search across all sources by keyword. Commands: detail - News Article Detail params: id* (string) feed - Crypto News Feed params: source (string), project (string), from (string), to (string), sort_by (string) [recency, trending], limit (integer), offset (integer) |
| surf_onchainA | Use this when the user needs onchain data from Surf. Query blockchain data directly. Look up transaction details by hash, check gas prices, and run structured or raw SQL queries against indexed blockchain datasets spanning Ethereum, Base, Solana, and more. Commands: bridge-ranking - Bridge Protocol Ranking params: time_range (string) [7d, 30d, 90d, 180d, 1y, all], limit (integer), offset (integer) dex-activity - DEX Protocol Activity params: chain* (string) [ethereum, base, bsc, arbitrum, tron], project (string), address (string), time_range (string) [1d, 7d, 30d, 90d], from (string), to (string), group_by (string) [total, day] gas-price - Current Gas Price params: chain* (string) structured-query - Blockchain Structured Query params: $schema (string), fields (array,null), filters (array,null), limit (integer), offset (integer), sort (array,null), source* (string) schema - On-Chain Table Schema params: table (string) sql - Blockchain SQL Query params: $schema (string), max_rows (integer), sql* (string) sql-job-create - Submit Asynchronous Blockchain SQL Job params: $schema (string), max_rows (integer), sql* (string) sql-job-get - Get Asynchronous Blockchain SQL Job params: job_id* (string) sql-job-results - Download Asynchronous Blockchain SQL Results params: job_id* (string), format (string) [json, csv] sql-preflight - Preflight Blockchain SQL Query params: $schema (string), max_rows (integer), sql* (string) tx - Transaction Details by Hash params: hash* (string), chain* (string), include (string) yield-ranking - Yield Pool Ranking params: project (string), sort_by (string) [apy, tvl_usd], order (string) [asc, desc], limit (integer), offset (integer) |
| surf_prediction_marketA | Use this when the user needs prediction market data from Surf. Track prediction markets on Polymarket and Kalshi. Browse events and markets, view live prices and odds, analyze trading volume and open interest history, inspect individual trades, and discover top-ranked markets by activity. Commands: analytics - Prediction Market Analytics params: category (string), platform (string) [polymarket, kalshi], time_range (string) [7d, 30d, 90d, 180d, 1y], top_n (integer), sort_by (string) [volume_7d, whale_flow_net_7d, price_change_7d, oi_change_7d], order (string) [asc, desc], limit (integer), offset (integer) correlations - Market Correlations params: category* (string), condition_id (string), min_correlation (number), limit (integer), offset (integer) kalshi-events - Kalshi Events params: event_ticker (string), limit (integer), offset (integer) kalshi-markets - Kalshi Markets params: market_ticker (string), limit (integer), offset (integer) kalshi-open-interest - Kalshi Open Interest History params: ticker* (string), time_range (string) [7d, 30d, 90d, 180d, 1y] kalshi-orderbooks - Kalshi Orderbook History params: ticker* (string), start_time (integer), end_time (integer), limit (integer), pagination_key (string) kalshi-prices - Kalshi Price History params: ticker* (string), time_range (string) [7d, 30d, 90d, 180d, 1y], interval (string) [1h, 1d, latest] kalshi-trades - Kalshi Trades params: ticker* (string), taker_side (string) [yes, no], min_amount (integer), from (string), to (string), sort_by (string) [timestamp, notional_volume_usd], order (string) [asc, desc], limit (integer), offset (integer) kalshi-volumes - Kalshi Volume History params: ticker* (string), time_range (string) [7d, 30d, 90d, 180d, 1y] matching-market-daily - Cross-Platform Daily Comparison (Polymarket <> Kalshi) params: polymarket_condition_id* (string), kalshi_market_ticker* (string), time_range (string), limit (integer), offset (integer) matching-market-pairs - Cross-Platform Prediction Market Matcher (Polymarket <> Kalshi) params: category (string), match_type (string) [exact, related], active_only (boolean), min_confidence (integer), polymarket_condition_id (string), kalshi_market_ticker (string), sort_by (string) [confidence, polymarket_volume, kalshi_volume, spread_pct], order (string) [asc, desc], limit (integer), offset (integer) polymarket-events - Polymarket Events params: event_slug* (string), limit (integer), offset (integer) polymarket-leaderboard - Polymarket Leaderboard params: sort_by (string) [pnl, volume, trade_count], order (string) [asc, desc], limit (integer), offset (integer) polymarket-markets - Polymarket Markets params: market_slug* (string), limit (integer), offset (integer) polymarket-open-interest - Polymarket Open Interest History params: condition_id* (string), time_range (string) [7d, 30d, 90d, 180d, 1y] polymarket-orderbooks - Polymarket Orderbook History params: token_id* (string), start_time (integer), end_time (integer), limit (integer), pagination_key (string) polymarket-positions - Polymarket Wallet Positions params: address* (string), limit (integer), offset (integer) polymarket-price-ohlcv - Polymarket OHLCV Candlesticks params: condition_id* (string), start_time (integer), end_time (integer), interval (integer) polymarket-prices - Polymarket Price History params: condition_id* (string), time_range (string) [7d, 30d, 90d, 180d, 1y], interval (string) [1h, 1d, latest] polymarket-smart-money - Polymarket Smart Money params: view (string) [positioning, trades], condition_id (string), category (string), direction (string) [bullish, bearish, neutral], whale_tier (string) [whale, large, mega], from (string), to (string), sort_by (string) [smart_wallets_involved, smart_buy_volume_usd, smart_sell_volume_usd, amount_usd, block_time], order (string) [asc, desc], limit (integer), offset (integer) polymarket-trades - Polymarket Trades params: condition_id (string), address (string), type (string) [trade, redemption, all], outcome_label (string) [Yes, No], min_amount (number), from (string), to (string), sort_by (string) [timestamp, notional_volume_usd], limit (integer), offset (integer) polymarket-volume-split - Polymarket Volume Split (YES/NO) params: condition_id* (string), granularity (string) [hour, day, week], start_time (integer), end_time (integer) polymarket-volumes - Polymarket Volume History params: condition_id (string), token_id (string), time_range (string) [7d, 30d, 90d, 180d, 1y], interval (string) [1h, 1d], granularity (string) [day, week, month, year, all], start_time (integer), end_time (integer) |
| surf_projectA | Use this when the user needs project data from Surf. Research crypto projects in depth. Retrieve aggregated project profiles covering overview, team, funding rounds, tokenomics, social links, and TGE status. Track DeFi protocol metrics like TVL, fees, revenue, trading volume, and active users over time. Commands: ai-news - Project AI News params: id (string), q (string), limit (integer), offset (integer), lang (string) [en, zh, ja, kr] defi-metrics - Project DeFi Metrics params: id (string), q (string), metric (string) [volume, fee, fees, revenue, tvl, users], from (string), to (string), chain (string), limit (integer), offset (integer) defi-ranking - DeFi Protocol Ranking params: metric* (string) [tvl, revenue, fees, volume, users], limit (integer), offset (integer) detail - Aggregated Project Detail params: id (string), x_id (string), handle (string), q (string), fields (string) pulse - Project Pulse [Deprecated] params: id (string), q (string), limit (integer), offset (integer), lang (string) [en, zh, ja, kr] |
| surf_searchA | Use this when the user needs search data from Surf. Find anything across Surf's data universe. Search for crypto projects, news articles, wallet addresses, web pages, investment funds, airdrop opportunities, and prediction market events — all from a single unified search interface. Commands: airdrop - Airdrop Search params: q (string), phase (string), reward_type (string) [airdrop, points, whitelist, nft, role, ambassador], task_type (string), has_open (boolean), sort_by (string) [total_raise, xscore, last_status_update], order (string) [asc, desc], limit (integer), offset (integer), include_tasks (boolean) airdrop-activities - Airdrop Activities params: limit (integer), offset (integer) events - Project Event Search params: id (string), q (string), type (string), limit (integer), offset (integer) fund - Fund Search params: q* (string), limit (integer), offset (integer) fundraising - Fundraising Event Search params: q (string), from (string), to (string), source (string) [social, news], lang (string) [en, zh, ja, kr], min_importance (integer), sort_by (string) [recency, relevance, importance], order (string) [asc, desc], limit (integer), offset (integer) news - News Article Search params: q* (string), limit (integer), offset (integer) prediction-market - Search Prediction Markets params: condition_id (string), market_ticker (string), platform (string) [polymarket, kalshi], category (string), status (string) [active, closed, finalized], sort_by (string) [volume_1d, volume_7d, volume_30d, open_interest, trade_count_7d, days_to_resolution], order (string) [asc, desc], smart_money (string) [bullish, bearish], q (string), limit (integer), offset (integer) project - Project Search params: q* (string), limit (integer), offset (integer) token - Token Symbol Resolution params: q* (string), chain (string), limit (integer), offset (integer) wallet - Wallet Search params: q* (string), limit (integer), offset (integer) web - Web Search params: q* (string), limit (integer), offset (integer), site (string), include_content (boolean) |
| surf_tokenA | Use this when the user needs token data from Surf. Analyze individual tokens on-chain. Look up top holders and their share of supply, track ERC-20/SPL token transfers, browse DEX swap history, and view upcoming token unlock schedules with allocation breakdowns. Commands: dex-trades - Token DEX Trade History params: address* (string), chain (string) [ethereum, base, bsc, arbitrum, tron], limit (integer), offset (integer), include (string) holders - Token Holders params: address* (string), chain* (string), limit (integer), offset (integer), include (string) tokenomics - Token Unlock Schedule params: id (string), symbol (string), from (string), to (string) transfer-counterparties - Top Transfer Counterparties params: address* (string), chain* (string) [ethereum, base, bsc, arbitrum, tron], direction* (string) [to, from], metric (string) [count, amount, amount_usd], time_range (string) [1d, 7d, 30d, 90d], limit (integer), offset (integer), include (string), exclude_labels (string) transfer-stats - Token Transfer Activity Summary params: address* (string), chain* (string) [ethereum, base, bsc, arbitrum, tron], time_range (string) [1d, 7d, 30d, 90d], include (string) transfers - Token Transfer History params: address* (string), chain* (string) [ethereum, base, solana, tron, bsc, arbitrum], from (string), to (string), limit (integer), offset (integer), include (string) |
| surf_walletA | Use this when the user needs wallet data from Surf. Inspect any wallet on Ethereum, Base, Solana, and other chains. View token balances, NFT holdings, entity labels, transfer history, full transaction logs, DeFi protocol positions (lending, staking, LP), and net worth trends over time. Commands: detail - Aggregated Wallet Detail params: address* (string), chain (string), fields (string) history - Wallet Transaction History params: address* (string), chain (string), limit (integer), offset (integer), before (integer), sort_by (string) [timestamp, value], order (string) [asc, desc], include (string) labels-batch - Wallet Labels (Batch) params: addresses* (string) net-worth - Wallet Net Worth History params: address* (string) protocols - Wallet DeFi Protocol Positions params: address* (string), limit (integer), offset (integer) transfers - Wallet Transfer History params: address* (string), chain (string) [ethereum, base, solana, tron, bsc, arbitrum], flow (string) [in, out], token (string), limit (integer), offset (integer), include (string) |
| surf_webB | Use this when the user needs web data from Surf. Fetch and search web content. Retrieve any URL and convert it to clean, LLM-friendly markdown, or search the internet for crypto-related articles, reports, and resources. Commands: fetch - Web Page Fetch params: url* (string), target_selector (string), remove_selector (string), wait_for_selector (string), timeout (integer) |
| surf_xA | Use this when the user needs x data from Surf. Retrieve X posts and author details by numeric post ID. Commands: tweets - X Tweets by IDs params: ids* (string) |
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/asksurf-ai/surf-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server