polymarket-odds-mcp
Server Details
Fetches live Polymarket prediction market orderbooks, implied Yes/No probabilities, volume, and wh
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP ยท MCP 2025-11-25
- URL
TDQS
Scored across 2 tools
The two tools target entirely different concerns: wallet/quota inspection versus fetching Polymarket odds. Descriptions explicitly cross-reference each other and clarify WHEN TO USE / WHEN NOT TO USE, leaving no realistic chance of misselection.
Both names follow the same get_<snake_case_noun> pattern (get_agent_wallet_status, get_polymarket_prediction_odds), differing only in subject length. The convention is predictable and readable.
Two tools is thin for a server whose own descriptions reference sibling capabilities (paid execution, Stripe/USDC top-up, marketplace tool execution) that are nowhere present. The core function exists but the surface feels under-scoped.
Descriptions repeatedly defer to 'the other tools on this server' for execution, marketplace processing, and payment submission, yet only read-only tools exist. There is no way to actually complete a top-up or paid execution flow within this server, creating dead ends.
Available Tools
2 toolsget_agent_wallet_statusARead-onlyIdempotentInspect
Inspect an agent's account ledger: remaining free trial calls (out of 5), prepaid USD balance, cumulative spend, total API calls, and total LLM tokens saved. WHEN TO USE: Call before a batch of paid tool executions or after completing a Stripe or USDC top-up to confirm your balance. WHEN NOT TO USE: Do not use to process web content, execute marketplace tools, or submit payments; use the other tools on this server for execution. PARAMETER INTERACTIONS: Omit agent_id to inspect the default trial account derived from your client IP, or pass your explicit agent_id or agd_pass_ session key to check a specific funded wallet. Free and read-only: never charges a fee or consumes a free trial call. Example: get_agent_wallet_status(agent_id='example')
| Name | Required | Description | Default |
|---|---|---|---|
| agent_id | No | Optional Agent ID or agd_pass_ session key to inspect. Omit to check the default wallet derived from your client IP. |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | No | Structured tool output payload. |
| status | Yes | Execution status ('ok' or 'payment_required'). |
| roi_proof | No | Token compression and cost-savings verification metrics. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false, so the safety profile is covered. The description adds real context beyond that: it never charges a fee or consumes a free trial call, and the default wallet is derived from the caller's client IP. It does not discuss rate limits or caching, but the cost/free-trial guarantee is meaningful behavioral disclosure.
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?
Front-loaded with the ledger contents, then structured WHEN TO USE / WHEN NOT TO USE / PARAMETER INTERACTIONS / Example. The labeled sections make it scannable, though the repetition of the read-only guarantee and the worked example add a little bulk.
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?
An output schema exists, so return-value detail is optional, yet the description still names the key fields. With a single optional parameter, no nested objects, and annotations covering safety, an agent has everything needed to invoke it correctly.
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 baseline is 3. The description goes slightly further by naming the agd_pass_ session-key form and framing the two modes as an interaction (omit for IP-derived trial account vs. pass explicit agent_id/session key for a funded wallet), which aids selection even though the schema states the omit behavior.
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 (inspect) and resource (agent's account ledger) and enumerates exactly what is returned: trial calls out of 5, prepaid USD balance, cumulative spend, total API calls, tokens saved. This clearly separates it from the sibling web-content tools (distill_webpage, extract_structured_data, recon_webpage_skeleton), which operate on webpages rather than wallet state.
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?
Explicit WHEN TO USE (before paid tool batches, after a Stripe or USDC top-up) and WHEN NOT TO USE (not for processing web content, executing marketplace tools, or submitting payments). The exclusion clause routes the agent back to the other server tools for execution, so the alternative is named.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_polymarket_prediction_oddsARead-onlyIdempotentInspect
Fetches live Polymarket prediction market orderbooks, implied Yes/No probabilities, volume, and whale sentiment for macro/crypto/AI events. WHEN TO USE: Call get_polymarket_prediction_odds when your task requires deterministic polymarket-odds analysis for topic; use get_agent_wallet_status to check your remaining free trial quota or prepaid balance. WHEN NOT TO USE: Do not use for unrelated domains or binary media. PARAMETER INTERACTIONS: Pass the target topic as a non-empty string; omit agent_id and tx_hash during your 5 free trial calls, or supply agent_id (agd_pass_...) / tx_hash for paid execution. Read-only and idempotent; results are cached for 1 hour (<5ms cache hit). $0.015 per call. Pricing: the first 5 calls per agent_id are free and failed calls are never charged. After 5 calls, the tool returns a payment-required quote (not a fatal error) with a $2 Stripe top-up link and Base/Solana USDC addresses; complete payment, then retry with your agd_pass_ key in agent_id or pass tx_hash. Example: get_polymarket_prediction_odds(topic='example')
| Name | Required | Description | Default |
|---|---|---|---|
| topic | Yes | Prediction market topic, event keyword, or question to query live Polymarket odds. | |
| tx_hash | No | Optional on-chain Base Mainnet (0x...) or Solana SPL USDC transaction hash. Omit unless settling an individual call directly on-chain instead of using an agd_pass_ key in agent_id. | |
| agent_id | No | Optional agent identifier or prepaid agd_pass_ session key. Omit during your 5 free trial calls to use an ID automatically derived from your client IP, or pass your agd_pass_ key after topping up. |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | No | Structured tool output payload. |
| status | Yes | Execution status ('ok' or 'payment_required'). |
| roi_proof | No | Token compression and cost-savings verification metrics. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only cover read-only/idempotent/open-world safety; the description goes far beyond them with caching behavior (1 hour, <5ms cache hit), the pricing model ($0.015/call, 5 free calls per agent_id, failed calls never charged), and the non-fatal payment-required quote response with top-up mechanics. This is exactly the operational context an agent needs before invoking a metered endpoint.
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?
Purpose is front-loaded and the WHEN TO USE / WHEN NOT TO USE / PARAMETER INTERACTIONS structure is scannable. However, the free-call rule is stated twice (in PARAMETER INTERACTIONS and again in the Pricing sentence) and the payment flow is verbose, costing some efficiency.
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 an output schema present, the description does not need to explain return values, and it covers everything else an agent needs: authentication path, trial vs paid behavior, cost, caching, and retry-after-payment. Nothing material is missing 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 the baseline is 3; the description nonetheless adds workflow meaning beyond the schema by explaining that agent_id and tx_hash should be omitted during the 5 free trial calls and supplied afterward for paid execution. It slightly restates the agd_pass_/tx_hash semantics already present in the schema, capping it below 5.
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 (fetches) and a precise resource set: live Polymarket orderbooks, implied Yes/No probabilities, volume, and whale sentiment for macro/crypto/AI events. That is clearly distinguishable from the only sibling, get_agent_wallet_status, which is about quota/balance rather than market data.
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?
Explicit WHEN TO USE and WHEN NOT TO USE sections, including the exact sibling to use for quota checks ('use get_agent_wallet_status to check your remaining free trial quota or prepaid balance'). It also names the domain boundary ('unrelated domains or binary media'), leaving little to inference.
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.
2 tool updates
- First observed
get_agent_wallet_status - First observed
get_polymarket_prediction_odds
Related MCP Connectors
Live Polymarket odds, order books, fee-inclusive quotes and non-custodial prediction trading.
Live prediction markets: Polymarket + Kalshi prices, odds, order books. Pay-per-call USDC, no key.
Polymarket orderbook history, live books, trades and settlements, plus Hyperliquid perp books.
Order-book depth & history for Polymarket, Kalshi & Limitless. Keyless demo, key for full access.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceEnables querying Polymarket prediction market data, including top active markets and order books, without an API key or database.18 npm1MIT
- AlicenseNot gradedqualityCmaintenanceProvides read-only market data for the CFTC-regulated Polymarket US prediction-market exchange, enabling keyword search and category browsing of markets along with top-of-book quotes, full order-book depth, historical Yes/No price series, and final settlement prices. All lookups are keyless and operate on market slugs, with every response tagged by venue and data timestamp so results are never confused with other prediction-market platforms.217 npmMIT
- FlicenseNot gradedqualityCmaintenanceEnables interaction with Polymarket prediction markets through read-only access to market data, events, orderbooks, and user positions, plus authenticated trading capabilities for creating and managing orders.1-
- AlicenseNot gradedqualityDmaintenanceProvides real-time access to Polymarket prediction market data, enabling search, browsing, and analysis of prediction markets through natural language.18 npmMIT
Glama MCP Gateway
Add one secure layer between your agents and this server.