Polymarket MCP by Nova (CIVAI)
Server Details
Browse prediction markets, check odds, and follow big trades.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
TDQS
Scored across 18 tools
Most tools map cleanly to a distinct resource+action (market odds vs orderbook vs price history vs resolution status vs news context; trader profile vs activity vs positions). The fuzziest boundaries are get_market_odds vs get_market_summary (the summary also returns raw price/probability fields) and get_position_transfers vs get_wallet_transfers, where the descriptions carry the distinction (global ERC1155 flow vs per-wallet flow) but an agent could still pick the wrong one.
All 18 names follow a strict snake_case verb_noun pattern, grouped by resource prefix (get_market_*, get_trader_*, get_wallet_*, get_whale_*, get_position_*). The single search_markets still fits the verb_noun convention, so the set is highly predictable.
18 tools is slightly above the comfortable 3-15 band, but each covers a genuinely different data facet (market, trader, wallet, whale, arbitrage, leaderboard, news, site context) rather than duplicating. No tool looks like pure filler, though a couple of market-level getters could plausibly be merged.
The read-only analytics surface is broad: market discovery, pricing, orderbook, history, resolution, related markets, news, trader/wallet/whale activity, arbitrage and leaderboards. Minor gaps remain — no event-level lookup (grouping markets under a Polymarket event), no listing/browsing by category or tag outside search/related, and market lookups appear slug-only.
Available Tools
18 toolsget_arbitrage_opportunitiesBInspect
Returns markets with mispriced outcomes or cross-platform (Polymarket vs Kalshi) price inconsistencies.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max results (default 20, max 100) | |
| min_spread | No | Minimum absolute spread (0-1, default 0.02) | |
| notification_message | No | Short user-facing sentence for this action if the follow-up reply fails. Plain text only; do not mention template syntax or variable names. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden. It implies a read operation via 'Returns' and states the detection criterion, but does not disclose data freshness, whether spreads account for fees or liquidity, cross-platform matching behavior, or any output shape.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single front-loaded sentence with no wasted words, making it easy to scan. Its brevity is efficient, though additional context would be useful elsewhere.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a cross-platform arbitrage detector with no output schema and no annotations, the description is too thin. It does not explain how opportunities are computed, whether both platforms are always queried, what fields are returned, or any caveats about stale or incomplete comparisons.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and the schema already documents limit, min_spread, and notification_message with defaults and ranges. The description adds no parameter-level meaning, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb and resource ('Returns markets') and names the detection criteria: mispriced outcomes and cross-platform Polymarket vs Kalshi inconsistencies. This distinguishes it from generic market-data siblings, though it does not explicitly contrast with tools like get_market_odds or get_market_movers.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is used to find arbitrage opportunities but gives no explicit when-to-use, when-not-to-use, or alternative-tool guidance. An agent has to infer its role relative to the numerous sibling market tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_leaderboardBInspect
Returns top Polymarket traders ranked by PnL, ROI, win rate, or volume.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Number of traders (default 10, max 50) | |
| metric | No | Ranking metric (default: pnl) | |
| notification_message | No | Short user-facing sentence for this action if the follow-up reply fails. Plain text only; do not mention template syntax or variable names. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description's 'Returns' framing is the only signal that this is a read-only, non-mutating call. It says nothing about auth requirements, rate limits, result freshness, or default-vs-max behavior at the behavioral level. Adequate but thin for a tool carrying the full disclosure burden.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no filler; the resource and the ranking options appear immediately. Nothing could be trimmed without losing information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description should hint at what a leaderboard entry contains (trader identity? PnL value? rank?), but it stops at 'top traders.' The default and cap for limit live only in the schema. Adequate for selection, incomplete for invocation confidence.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so limit, metric, and notification_message are already documented in the schema, and the description's metric list merely mirrors the enum. It adds no default or interaction semantics beyond what the schema provides, which is the textbook baseline 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Returns') and resource ('top Polymarket traders') plus the ranking dimensions, which is enough to distinguish it from siblings like get_trader_profile or get_trader_activity. It does not name those siblings, so differentiation is implicit rather than explicit.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no when-to-use context, no prerequisites, and no pointer to alternative tools such as get_site_stats or get_trader_activity. The agent must infer the call site entirely from the tool name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_market_moversBInspect
Returns Polymarket markets with the largest price movements in the last 24 hours.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Results (default 10) | |
| direction | No | Price direction (default: both) | |
| notification_message | No | Short user-facing sentence for this action if the follow-up reply fails. Plain text only; do not mention template syntax or variable names. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must carry the behavioral load; 'Returns' implies a safe read and the 24-hour lookback is disclosed. However, it omits how movement is measured (percent vs absolute), the sort order, whether results are capped, and any rate-limit or auth behavior, leaving meaningful gaps for a zero-annotation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single well-formed sentence with the selection criterion front-loaded and zero filler. Its brevity is appropriate even if it leaves detail on the table elsewhere.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema and no annotations, and all three parameters are schema-documented, so the description is close to sufficient. It still lacks the definition of 'largest movement' and result ordering, which an agent would want to describe results correctly to a user.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with limit, direction (enum), and notification_message all documented, so the schema does the heavy lifting and baseline 3 applies. The description adds no semantics about what 'limit' counts against or how direction interacts with the mover ranking.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Returns Polymarket markets') plus the selection criterion ('largest price movements in the last 24 hours'), which separates it from siblings like get_price_history or get_market_odds. It does not explicitly name an alternative or boundary tool, so it stops short of 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to reach for this tool versus get_arbitrage_opportunities, get_whale_trades, or get_price_history, and no prerequisites or exclusions are stated. The use case ('what moved today') must be inferred entirely from the description's noun phrase.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_market_news_contextBInspect
Returns recent news articles relevant to a Polymarket market topic, useful for grounding LLM analysis.
| Name | Required | Description | Default |
|---|---|---|---|
| slug | No | Market slug to derive topic from | |
| limit | No | Max articles (default 10, max 30) | |
| query | No | Optional explicit keyword(s) to search | |
| notification_message | No | Short user-facing sentence for this action if the follow-up reply fails. Plain text only; do not mention template syntax or variable names. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden. It does not disclose the news source, freshness/lookback window, caching or rate limits, or what happens when neither slug nor query is supplied (all params are optional), nor what an article object contains.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no filler; the verb and resource come first. It is efficient, though its brevity edges toward under-specification rather than tightness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and no annotations, the description should explain the return shape (article fields, number of items) and default behavior when no slug or query is passed. For a 4-parameter tool with all-optional inputs, one sentence leaves an agent guessing what a call with an empty argument set actually does.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so slug, limit (default 10, max 30), query, and notification_message are already documented in the schema — baseline 3 applies. The description adds nothing about how slug-derived topics relate to an explicit query, or which takes precedence.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource ('Returns recent news articles') scoped to a Polymarket market topic, which is clearly distinct from every sibling tool (all market/trader data). It stops short of an explicit contrast with siblings, but the resource itself is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The clause 'useful for grounding LLM analysis' implies when to reach for it, but there is no explicit when/when-not guidance and no named alternative (e.g., get_market_summary) for cases where structured market data is wanted instead of news.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_market_oddsBInspect
Returns current prices, implied probability, volume, liquidity, and metadata for a specific Polymarket market by slug.
| Name | Required | Description | Default |
|---|---|---|---|
| slug | Yes | Market slug or condition ID (required) | |
| notification_message | No | Short user-facing sentence for this action if the follow-up reply fails. Plain text only; do not mention template syntax or variable names. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden. It makes clear that the tool retrieves data and lists the returned fields, but it does not state error behavior, authentication needs, rate limits, or any explicit read-only/side-effect profile.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The definition is a single front-loaded sentence that states the resource, key returned fields, and scoping parameter without any wasted phrasing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple lookup tool with a fully described schema, the description is largely complete: it covers the required slug input and, since there is no output schema, lists the key returned fields. It still omits explicit usage guidance versus siblings and behavioral details such as failure modes.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so both parameters are already documented in the input schema. The description reinforces the required "slug" parameter with "by slug" but adds no additional semantics for the optional notification_message parameter; baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ("Returns") and resource ("current prices, implied probability, volume, liquidity, and metadata") scoped to "a specific Polymarket market by slug." This is clear enough to distinguish it from general market search or orderbook tools, though it does not explicitly name any sibling alternative.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by the phrase "specific Polymarket market by slug" and by the odds-oriented return fields, suggesting this is the tool to call when you already have a market slug and need pricing/probability data. However, there is no explicit guidance on when to use this versus get_market_summary, get_market_orderbook, or search_markets.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_market_orderbookBInspect
Returns bid/ask depth, spread, and liquidity quality for a Polymarket market.
| Name | Required | Description | Default |
|---|---|---|---|
| slug | Yes | Market slug (required) | |
| depth | No | Number of price levels per side (default 10, max 50) | |
| notification_message | No | Short user-facing sentence for this action if the follow-up reply fails. Plain text only; do not mention template syntax or variable names. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full disclosure burden. It never states freshness/staleness of the book, behavior for empty or illiquid markets, rate limits, or whether depth is truncated by default — all material for an orderbook read.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no filler; the returned fields are listed immediately.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description usefully enumerates what comes back (depth, spread, liquidity quality), and the schema covers inputs. Only behavioral notes about data freshness and empty books are missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the schema documents slug, depth (default 10, max 50), and notification_message fully. The description adds nothing about parameters, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource: it returns bid/ask depth, spread, and liquidity quality for a Polymarket market. That distinguishes it substantively from siblings like get_market_odds and get_price_history, though it never names an alternative explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to call this versus get_market_odds, get_price_history, or get_market_summary. Usage must be inferred entirely from the returned-field list.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_market_resolution_statusBInspect
Returns resolution state, outcome, close date, and resolution-source metadata for a Polymarket market.
| Name | Required | Description | Default |
|---|---|---|---|
| slug | Yes | Market slug (required) | |
| notification_message | No | Short user-facing sentence for this action if the follow-up reply fails. Plain text only; do not mention template syntax or variable names. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. 'Returns' implies a read, but it does not say what happens for an unresolved or unknown slug, whether resolution-source metadata can be null, or anything about auth or rate limits — all of which matter for a resolution-lookup tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with zero filler; the resource and returned fields lead immediately.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and no annotations, the description usefully enumerates the return fields, which partially compensates. But it omits edge-case behavior for unresolved markets and says nothing about the second parameter, leaving an agent to infer too much for a data-lookup tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, with both parameters documented in the schema itself, so the baseline of 3 applies. The description adds nothing about the slug format (id vs. URL slug) or the unusual optional notification_message parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Returns') plus a precisely scoped resource ('resolution state, outcome, close date, and resolution-source metadata for a Polymarket market'). An agent can distinguish it from siblings like get_market_summary or get_market_odds by the resolution focus, though no sibling is named explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no statement of when to use this tool versus the many adjacent market tools (summary, odds, related markets), nor any preconditions such as whether the market must already be closed or resolved. Usage is only inferable from the field list.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_market_summaryBInspect
Returns a pre-formatted, AI-citable summary paragraph for any Polymarket market, plus raw data fields.
| Name | Required | Description | Default |
|---|---|---|---|
| slug | Yes | Market slug (required) | |
| notification_message | No | Short user-facing sentence for this action if the follow-up reply fails. Plain text only; do not mention template syntax or variable names. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full disclosure burden. It does reveal the return shape (a citable summary paragraph plus raw fields), but says nothing about failure modes, auth needs, rate limits, or whether the market must exist.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single efficient sentence with the core value proposition front-loaded and no filler. It is slightly under-specified rather than overwritten, which is the right side to err on.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and no annotations, the description should say more about what 'raw data fields' means for the caller to plan parsing. It is adequate for a simple two-parameter read tool but leaves a real gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so both parameters are documented in the schema itself. The description adds no extra meaning about slug format or the fallback role of notification_message, leaving it at the baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource: returns a pre-formatted, AI-citable summary paragraph for a Polymarket market plus raw data fields. This is distinct from sibling read tools like get_market_odds or get_price_history, though the description never explicitly contrasts itself with them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to choose this over get_market_odds, get_market_news_context, or search_markets, and no prerequisites or exclusions are stated. 'For any Polymarket market' defines scope, not selection criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_position_transfersBInspect
Returns recent ERC1155 conditional-token (share) transfers on Polymarket. Surfaces whales moving winning positions to fresh wallets to mask PnL, self-shuffling, fresh-wallet drops, and round-trips — all activity that happens off the exchange order book.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Number of transfers (default 25, max 100) | |
| min_usd | No | Minimum transfer notional in USD (default 10000) | |
| market_slug | No | Optional: filter to a specific market slug | |
| since_hours | No | Only include transfers in the last N hours (default 24) | |
| flagged_only | No | If true, only return transfers with heuristic flags (whale, self_shuffle, fresh, round_trip) | |
| notification_message | No | Short user-facing sentence for this action if the follow-up reply fails. Plain text only; do not mention template syntax or variable names. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the full burden. It does not disclose whether this is a read-only operation, permission requirements, rate limits, or the meaning of the notification_message parameter. It only describes the patterns the tool surfaces, not the tool's operational behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences and front-loads the core function. The second sentence elaborates on use cases efficiently. It is appropriately sized with minimal waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with six parameters and no output schema, the description gives a clear purpose but does not describe the return format or what fields the transfers contain. It is adequate for understanding what the tool does, but leaves gaps for an agent needing to interpret results.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already fully documents all six parameters. The description adds no additional semantic meaning beyond what the schema provides, which is the baseline for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Returns') and resource ('recent ERC1155 conditional-token (share) transfers on Polymarket'), and it clarifies that this is off-exchange activity. It distinguishes from order-book tools implicitly, but does not name any sibling tools explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies its use case is detecting off-order-book position movements (whale moves, self-shuffling, etc.), but it does not explicitly say when to use this tool versus alternatives like get_wallet_transfers or get_whale_trades. The guidance is implied rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_price_historyAInspect
Returns historical YES price / implied probability snapshots over time for a Polymarket market.
| Name | Required | Description | Default |
|---|---|---|---|
| slug | Yes | Market slug (required) | |
| hours | No | Lookback window in hours (default 168 = 7d, max 8760) | |
| limit | No | Max snapshots to return (default 200, max 1000) | |
| notification_message | No | Short user-facing sentence for this action if the follow-up reply fails. Plain text only; do not mention template syntax or variable names. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It does disclose the meaningful behavioral fact that the output is a series of snapshots over time rather than a single value, but it omits anything about snapshot granularity, pagination/truncation behavior when limit is hit, or what happens if the window exceeds available data.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no filler, hedging, or repeated schema content. Every word carries information and the key qualifier ('historical ... over time') arrives immediately.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple (4 params, 1 required, no nesting) and the schema is fully described, but with no output schema and no annotations the description should at least sketch the return shape (e.g. timestamp/price pairs) and snapshot granularity. It gestures at the return ('snapshots over time') without enough detail for an agent to plan parsing or pagination.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so slug, hours, limit, and notification_message are already documented with defaults and maxima. The description adds nothing beyond that (no guidance on sensible hour/limit combinations or the relationship between window and snapshot density), so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource ('Returns historical YES price / implied probability snapshots') for a named domain (Polymarket market), which is far more specific than a bare name restatement. It implicitly distinguishes itself from the current-odds sibling by emphasizing 'historical ... over time', but never names that sibling explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied: the word 'historical' suggests this is for time-series analysis rather than current pricing, which a reader can infer against get_market_odds. There is no explicit when-to-use, when-not-to-use, or named alternative, and no prerequisite guidance such as needing a valid slug.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_site_statsAInspect
Returns aggregate PolymarketScan platform statistics. Call this first to establish context before querying specific data.
| Name | Required | Description | Default |
|---|---|---|---|
| notification_message | No | Short user-facing sentence for this action if the follow-up reply fails. Plain text only; do not mention template syntax or variable names. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description carries the full burden. 'Returns' implies a safe read and 'call this first' implies it is a cheap orientation call, but there is no disclosure of auth requirements, rate limits, freshness of the stats, or roughly what the payload contains. Adequate but thin for a zero-annotation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, zero waste, with the identity of the resource front-loaded and the sequencing instruction second. Nothing could be removed without losing information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a no-required-param read tool with no output schema and no annotations, the description covers what it returns at a high level and when to call it. It does not enumerate which statistics are included, but an agent can call it cheaply and discover them, so the gap is minor.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Only one optional parameter exists and the schema documents it at 100% coverage, including its purpose and formatting constraints, so the schema does the work. The description adds nothing about the parameter, which is expected here and matches the baseline for high-coverage schemas.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Returns aggregate PolymarketScan platform statistics'), which is clearly distinct from the per-entity siblings like get_trader_profile or get_market_odds. It never names a sibling explicitly, but 'aggregate' vs 'specific data' implicitly draws the line without requiring the agent to open any schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'Call this first to establish context before querying specific data' gives explicit ordering guidance that no sibling communicates. It stops short of naming a concrete alternative or a when-not-to-use condition, so it lands just below the top band.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_trader_activityCInspect
Returns recent trades executed by a Polymarket wallet.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max trades (default 25, max 100) | |
| wallet | Yes | Ethereum wallet address (0x...) | |
| notification_message | No | Short user-facing sentence for this action if the follow-up reply fails. Plain text only; do not mention template syntax or variable names. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden. 'Returns' implies a read, but nothing is said about ordering (newest first?), pagination, whether the wallet must have activity, or rate limits, and no output schema exists to compensate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One front-loaded sentence with zero waste. It is efficient, though the brevity edges into under-specification rather than true economy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no annotations and no output schema, the description should explain what a 'trade' record contains and how results are ordered. As written, an agent knows the resource but not the shape or behavior of the response.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, including the limit default/max and the wallet address format, so the schema does the heavy lifting. The description adds only the notion of 'recent', which loosely frames the limit parameter but gives no ordering semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource: returns recent trades for a Polymarket wallet. An agent can tell it apart from get_trader_positions and get_wallet_transfers by the word 'trades', but the description never explicitly contrasts with those close siblings (or get_whale_trades).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this versus get_trader_positions, get_wallet_transfers, or get_whale_trades, and no stated prerequisites or exclusions. The agent must infer selection from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_trader_positionsBInspect
Returns current open positions for a Polymarket wallet (from PolymarketScan's positions cache).
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max positions (default 25, max 100) | |
| wallet | Yes | Ethereum wallet address (0x...) | |
| notification_message | No | Short user-facing sentence for this action if the follow-up reply fails. Plain text only; do not mention template syntax or variable names. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden. It usefully discloses that results come from a positions cache, which signals possible staleness, but it omits error behavior for an invalid/empty wallet, any rate-limit or auth context, and what an empty result looks like.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with zero filler; the resource and its data source appear immediately.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read tool with full schema coverage this is adequate, but with no output schema and no annotations, the description could still state what a position record contains or how many come back by default. The cache note helps but leaves real gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the wallet format, the limit default/max, and notification_message are already documented. The description adds only the 'Polymarket wallet' framing and nothing about pagination behavior of limit, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description pairs a specific verb ('Returns') with a specific resource ('current open positions for a Polymarket wallet') and names the upstream data source, so an agent can tell it apart from sibling read tools like get_position_transfers or get_trader_activity. It stops short of explicitly contrasting itself with those siblings, keeping it below a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to choose this tool over get_position_transfers, get_wallet_transfers, or get_trader_activity, and no stated prerequisites (e.g., whether the wallet must be a Polymarket trader). The 'current open positions' phrasing implies usage but names no alternatives or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_trader_profileBInspect
Returns performance data for any Polymarket wallet — PnL, ROI, win rate, trade count, classification, and leaderboard rank.
| Name | Required | Description | Default |
|---|---|---|---|
| wallet | Yes | Ethereum wallet address (0x...) | |
| notification_message | No | Short user-facing sentence for this action if the follow-up reply fails. Plain text only; do not mention template syntax or variable names. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description carries the full burden. It does disclose the return payload shape (PnL, ROI, win rate, trade count, classification, rank), which substitutes for a missing output schema, but says nothing about auth requirements, rate limits, caching, or behavior for unknown/invalid wallets.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with the resource first and the returned fields after; every clause earns its place. Only the em-dash construction is slightly dense, but nothing is wasted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-parameter read-only lookup with no output schema, the enumerated metric list gives the agent enough to know what comes back and whether to call it. The only real gap is routing guidance against the many trader/wallet siblings, which is not covered anywhere.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the schema already documents both parameters, including the 0x Ethereum address format. The description adds no parameter-level detail beyond what the schema provides, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (returns) and resource (performance data for any Polymarket wallet) and enumerates the metrics returned. It implicitly separates itself from get_trader_activity and get_trader_positions by focusing on aggregated performance metrics, but never names or contrasts those siblings explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no statement of when to use this tool versus get_trader_activity, get_trader_positions, get_wallet_transfers, or get_leaderboard. The agent must infer from the metric list that this is the aggregate-summary call, which is guidance by implication only.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_wallet_transfersBInspect
Returns ERC1155 share transfers involving a specific wallet (as sender or recipient). Useful for tracing what positions a whale has moved off-exchange.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Number of transfers (default 25, max 100) | |
| wallet | Yes | Wallet address (0x + 40 hex) | |
| min_usd | No | Minimum notional in USD | |
| direction | No | from | to | either (default either) | |
| since_hours | No | Look back N hours | |
| notification_message | No | Short user-facing sentence for this action if the follow-up reply fails. Plain text only; do not mention template syntax or variable names. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must disclose behavioral traits. It says 'Returns' (implying read-only) and describes the data scope, but omits key details such as pagination behavior, sorting, rate limits, or whether the operation has side effects. For a tool with zero annotation coverage, this is a significant gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the primary purpose and followed by a concise use case. No wasted words; structure is efficient and easy to scan.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has six parameters, no output schema, and no annotations. The description is only two sentences and fails to address the return format, pagination (limit), the notification_message parameter, or any behavioral details. It is insufficient for the complexity and lack of structured support.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all six parameters are documented in the schema. The description adds only marginal meaning by clarifying that the wallet can be sender or recipient, but it does not elaborate on defaults, enums, or the unusual notification_message parameter. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Returns') and resource ('ERC1155 share transfers') scoped to a wallet as sender or recipient. This is clear enough for an agent to understand the tool's core function, though it does not explicitly contrast with sibling tools like get_position_transfers or get_trader_activity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides a concrete use case ('tracing what positions a whale has moved off-exchange'), giving clear context for when to use the tool. However, it does not name alternatives or exclusions, so it falls short of explicit routing guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_whale_tradesAInspect
Returns recent large Polymarket trades above a USD size threshold. Useful for detecting whale activity and smart-money flow.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Number of trades (default 20, max 100) | |
| market_slug | No | Optional: filter to a specific market slug | |
| min_size_usd | No | Minimum trade size in USD (default 10000) | |
| notification_message | No | Short user-facing sentence for this action if the follow-up reply fails. Plain text only; do not mention template syntax or variable names. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full disclosure burden. "Returns" implies a safe read and the threshold filtering behavior is stated, but the meaning of "recent" is undefined, and there is no mention of auth, rate limits, result ordering, or pagination behavior. It establishes the read-only nature but leaves several behavioral traits unstated.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences, zero filler, with the core operation and the filtering constraint front-loaded before the use-case hint. Nothing restates the tool name gratuitously.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only list tool with fully documented parameters this is close to adequate, but with no output schema the description never indicates what a trade record contains, and the undefined recency window is a real gap for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so defaults and limits for limit, market_slug, and min_size_usd are already documented in the schema. The description only echoes the size-threshold concept behind min_size_usd without adding syntax or interaction details, so the schema does the real work.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource — returns recent large Polymarket trades filtered by a USD size threshold — which is concrete and distinguishable from siblings like get_trader_activity or get_wallet_transfers. It does not explicitly name which sibling to prefer for narrower queries, so it stops short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
"Useful for detecting whale activity and smart-money flow" implies the use case but gives no explicit when-to-use/when-not guidance and never names alternatives (e.g., use get_trader_activity for a single wallet). The agent must infer the boundary from sibling names alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_marketsBInspect
Full-text search across all active Polymarket markets. Supports natural language queries.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Results (default 10, max 50) | |
| query | Yes | Search query (required) | |
| category | No | Category filter (default: all) | |
| min_volume | No | Minimum total volume in USD | |
| notification_message | No | Short user-facing sentence for this action if the follow-up reply fails. Plain text only; do not mention template syntax or variable names. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the behavioral burden. It does disclose two useful traits: search is full-text/fuzzy rather than exact-match, and results are restricted to currently active markets. However, it says nothing about result ordering/ranking, pagination behavior beyond the schema's limit, or rate limits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two front-loaded sentences with no filler; the scope constraint ('active markets') comes first. It is efficient, though very sparse for a five-parameter search tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description should hint at what a result contains (market id, question, volume, prices) so an agent knows what to do with the response, and it does not. The schema is fully documented, but the return contract and the role of notification_message remain unexplained.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so every parameter is already documented in the schema. The description adds only that queries may be natural language, which mildly informs the 'query' parameter but says nothing about combining category, min_volume, or the unusual notification_message parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('full-text search across all active Polymarket markets') with an explicit scope ('active'), which cleanly separates it from retrieval siblings like get_market_summary or get_market_odds. It does not name any sibling or declare what it is not, so differentiation is inferable rather than stated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied: it is the discovery tool for finding markets by keyword or natural language. There is no explicit when-to-use/when-not-to-use guidance, no mention of when to prefer get_related_markets or get_market_summary, and no note on how to combine it with downstream retrieval tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
18 tool updates
- First observed
get_arbitrage_opportunities - First observed
get_leaderboard - First observed
get_market_movers - First observed
get_market_news_context - First observed
get_market_odds - First observed
get_market_orderbook - First observed
get_market_resolution_status - First observed
get_market_summary - First observed
get_position_transfers - First observed
get_price_history - First observed
get_related_markets - First observed
get_site_stats - First observed
get_trader_activity - First observed
get_trader_positions - First observed
get_trader_profile - First observed
get_wallet_transfers - First observed
get_whale_trades - First observed
search_markets
Related MCP Connectors
Live Polymarket odds, order books, fee-inclusive quotes and non-custodial prediction trading.
Prediction market data and crowd-sourced probability forecasts
Polymarket, Kalshi + 6 more prediction markets: live odds, volume, movers. Read-only, no auth.
Trade, orderbook, and volatility data for prediction markets and crypto derivatives.
Related MCP Servers
- AlicenseAqualityDmaintenanceAggregates prediction market data from 5 major platforms (Manifold, Polymarket, Metaculus, PredictIt, Kalshi), enabling users to search markets, compare odds across platforms, detect arbitrage opportunities, and track predictions through natural language.83MIT
- AlicenseNot gradedqualityDmaintenanceProvides real-time access to Polymarket prediction market data, enabling search, browsing, and analysis of prediction markets through natural language.44 npmMIT
- AlicenseNot gradedqualityBmaintenanceEnables AI agents to list, retrieve, and search active real-money US-politics-focused prediction markets, with contract prices expressed as implied probabilities (0–100%).13 npmMIT
- AlicenseAqualityAmaintenanceConnects real-world news to Polymarket prediction markets by matching headlines to relevant markets with live odds. Read-only by default with optional trading capabilities.5MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.