Skip to main content
Glama
traderalvin1

Polymarket MCP Server

by traderalvin1

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
CHAIN_IDNoBlockchain network chain ID137
DATA_API_URLNoPolymarket Data API base URLhttps://data-api.polymarket.com
CLOB_API_BASENoPolymarket CLOB API base URLhttps://clob.polymarket.com
GAMMA_API_URLNoPolymarket Gamma API base URLhttps://gamma-api.polymarket.com
BRIDGE_API_URLNoPolymarket Bridge API base URLhttps://bridge.polymarket.com

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{}
logging
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
get_tool_guideB

Return a concise usage guide with workflows, dependencies, and examples for this MCP.

get_market_by_slugA

Get detailed market info by slug. Source: slug from search_markets or list_markets. Returns market with clobTokenIds for CLOB tools. Example: slug=will-biden-win-2024.

get_event_by_slugA

Get event details by slug. Source: slug from search_markets or list_events. Returns event and associated markets. Example: slug=presidential-election-2024.

list_active_marketsA

List active markets sorted by volume. Use clobTokenIds/conditionId from results for CLOB or Data API tools. Example: limit=20, order=volume24hr.

search_marketsC

Search for markets, events, and profiles using text search. limit applies per type (events/markets/profiles). Example: query=trump, limit=3.

get_markets_by_tagB

Get markets filtered by tag ID. Source: tag_id from get_all_tags. Example: tag_id=2, limit=20, closed=false.

get_all_tagsB

List all tags. Use tag id/slug with get_markets_by_tag or list_markets tag_slug. Example: call then pick tag_id.

get_order_bookA

Get order book via CLOB /book for token_id. Source: clobTokenIds from list_active_markets or get_market_details. If token has no active order book, returns 404. Example: token_id=clobTokenIds[0].

get_trending_marketsC

Get markets with highest trading volume for timeframe. Returns active markets sorted by volume. Example: timeframe=24h, limit=10.

get_closing_soon_marketsA

Get markets closing within specified hours. Returns active markets sorted by endDate. Example: hours=24, limit=20.

get_featured_marketsA

Get featured/promoted markets. Falls back to top-volume active markets. Example: limit=10.

filter_markets_by_categoryA

Filter markets by tag/category slug (case-insensitive). Source: get_all_tags for slug list. Example: category=politics, active_only=true.

get_event_marketsB

Get markets for a specific event. Provide event_id or event_slug from list_events/search_markets. Example: event_id=80505.

compare_marketsB

Compare multiple markets by slug. Source: slugs from search_markets/list_markets. Returns market data or error per slug. Example: market_slugs=[a,b].

get_market_detailsA

Get complete market information including metadata, tokens, volume, liquidity, and livePrice by token_id. livePrice may be null when tokens are closed or have no active CLOB.

get_current_priceA

Get CLOB /price for BUY/SELL and return bid/ask/mid. Source: clobTokenIds from list_active_markets or get_market_details. If token has no active CLOB/order book, returns 404. Example: token_id=clobTokenIds[0], side=BOTH.

get_spreadA

Compute spread from CLOB /book best bid/ask. Source: clobTokenIds from list_active_markets or get_market_details. If token has no active CLOB/order book, returns 404. Example: token_id=clobTokenIds[0].

get_market_volumeB

Get volume and liquidity for a market by slug. Source: slug from search_markets/list_markets. Example: slug=will-biden-win-2024.

get_liquidityA

Compute liquidity from CLOB /book depth (bid/ask USD). Source: clobTokenIds from list_active_markets or get_market_details. If token has no active CLOB/order book, returns 404. Example: token_id=clobTokenIds[0].

analyze_market_opportunityC

Heuristic market analysis using volume, liquidity, spread, and time-to-close. Uses first clobTokenIds entry when available. Example: slug=will-biden-win-2024.

subscribe_market_pricesB

Subscribe to real-time price changes by market condition IDs (conditionId). Source: list_markets/list_active_markets/get_market_by_slug. Use get_realtime_status to inspect events. Example: market_ids=[conditionId].

subscribe_orderbook_updatesB

Subscribe to real-time orderbook updates by token_ids (clobTokenIds). Source: list_active_markets/get_market_details. Use get_realtime_status to inspect events. Example: token_ids=[clobTokenIds[0]].

subscribe_market_resolutionB

Subscribe to market resolution alerts by condition IDs. Source: list_markets/list_active_markets/get_market_by_slug. Example: market_ids=[conditionId].

get_realtime_statusA

Get status of WebSocket subscriptions (active topics, connection state, stats, recent messages). connected=false means offline; subscriptions can exist but will not receive events until connected.

unsubscribe_realtimeB

Unsubscribe from a real-time feed. Source: subscription_id from subscribe_* response. Example: subscription_id=abc.

get_price_historyB

Get historical price data for a token. Source: clobTokenIds from list_active_markets or get_market_details. If no history, returns history=[]. Example: token_id=clobTokenIds[0], interval=1h.

get_midpointB

Get midpoint price via CLOB /midpoint. Source: clobTokenIds from list_active_markets or get_market_details. If token has no active CLOB/order book, returns 404. Example: token_id=clobTokenIds[0].

get_batch_pricesB

Batch prices via POST CLOB /prices. Source: clobTokenIds from list_active_markets or get_market_details. If none found, returns {}. Example: token_ids=[clobTokenIds[0], clobTokenIds[1]].

get_batch_spreadsB

Batch spreads via POST CLOB /spreads. Source: clobTokenIds from list_active_markets or get_market_details. If none found, returns {}. Example: token_ids=[clobTokenIds[0], clobTokenIds[1]].

get_batch_order_booksB

Batch order books via POST CLOB /books. Source: clobTokenIds from list_active_markets or get_market_details. If none found, returns []. Example: token_ids=[clobTokenIds[0], clobTokenIds[1]].

get_market_by_idB

Get market details by numeric id. Source: id from list_markets. Returns clobTokenIds and conditionId. Example: id=680392.

list_marketsB

List markets with filters (active/closed/tag/date/sort). Use conditionId for Data API and clobTokenIds for CLOB tools. Example: active=true, limit=20.

list_eventsB

List events with filters and pagination. Use event id for list_comments/get_event_by_id/get_live_volume. Example: active=true, limit=20.

get_event_by_idA

Get event details by id, including associated markets. Source: id from list_events. Example: id=80505.

list_seriesC

List series from the Gamma API. limit applies to series count; each series can include a large events array. Example: limit=1, offset=0.

get_series_by_idB

Get series by id. Source: id from list_series. Series includes events array. Example: id=10543.

get_sports_metadataA

Get sports metadata (leagues, seasons, etc.). Use with list_teams or sports market filters. Example: no params.

list_teamsB

List sports teams with pagination. Use to map team names/abbreviations in sports markets. Example: limit=20, offset=0.

get_public_profileA

Get a user's public profile by Ethereum address. Unknown address may return 404. Example: address=0xabc....

list_commentsA

List comments from Gamma API /comments. Requires parent_entity_type and parent_entity_id in practice (use list_events/list_series/list_markets to get IDs); otherwise Gamma often returns 422. Example: parent_entity_type=Event, parent_entity_id=80505.

get_comment_by_idB

Get a comment by id. Source: id from list_comments. Example: id=2064395.

get_valid_sports_market_typesB

Get valid sports market types from Gamma API /sports/market-types (returns {marketTypes:[...]}). Example: use result in sports filters.

check_health_gammaA

Check Gamma API health via GET /status. Returns plain text OK.

get_positionsB

Get a user's open positions (public on-chain data). Use user address; optional market conditionId. Example: user=0xabc..., market=0x...

get_closed_positionsB

Get a user's closed/settled positions (public on-chain data). Use user address; optional market conditionId. Example: user=0xabc...

get_tradesB

Get trade history (public data). Filter by user address and/or market conditionId from list_markets. Example: user=0xabc..., market=0x...

get_user_activityB

Get a user's activity feed (public data). Use user address. Example: user=0xabc..., limit=50.

get_top_holdersB

Get top holders for a market. Source: market conditionId from list_markets. Example: market=0x...

get_positions_valueB

Get total value of a user's positions (public data). Use user address. Example: user=0xabc....

get_open_interestB

Get open interest for a market. Source: market conditionId from list_markets. Example: market=0x...

get_live_volumeB

Get live trading volume for an event. Source: event id from list_events. Example: id=80505.

get_total_tradedB

Get total markets a user has traded in (public data). Use user address. Example: user=0xabc....

get_trader_leaderboardB

Get trader leaderboard (public). Use limit/offset for pagination. Example: limit=50, offset=0.

get_builder_leaderboardB

Get builder leaderboard (public). Use limit/offset for pagination. Example: limit=50, offset=0.

get_builder_volume_timeseriesC

Get builder daily volume timeseries (public). Use limit for number of points. Example: limit=30.

check_health_data_apiB

Check Data API health via GET /. Returns JSON {data:"OK"}.

get_bridge_transaction_statusB

Check bridge transactions via GET https://bridge.polymarket.com/status/{address}. Address must have bridge history; invalid/unknown addresses may return 500. Example: address=0xabc....

get_supported_assetsA

Get bridge-supported assets and chains. Use to fill get_bridge_quote params. Example: call then pick fromTokenAddress/toTokenAddress.

get_bridge_quoteB

Get a bridge quote from /quote. Source: token/chain from get_supported_assets. Requires fromAmountBaseUnit and recipientAddress. Example: fromChainId=137, toChainId=137.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

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/traderalvin1/polymarket-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server