Prediction Market Rule Check MCP
Risk-scores Polymarket/Kalshi settlement rules; Kalshi weather settlements. Not advice.
Should I use this
Quality & Safety
Findings (1)
- LOWin kalshi_check
Based on automated analysis of tool definitions and protocol compliance.
Context Cost
This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.
Install
One-Click Install
Add this to your `claude_desktop_config.json` file:
{
"mcpServers": {
"prediction-rules-mcp": {
"url": "https://prediction-rules-mcp.donniertf.workers.dev/mcp"
}
}
}Remote endpoints
https://prediction-rules-mcp.donniertf.workers.dev/mcpstreamable-httpWhat it can do
Tool inventory
Tools (12)
🟢rule_check(market)
FREE. Risk-score the settlement rules of a Polymarket market (slug or search words): flags discretion, vague sources, cancellation and deadline traps. Top 2 markets.
Input Schema
{
"type": "object",
"properties": {
"market": {
"type": "string",
"description": "Polymarket slug or search words"
}
},
"required": [
"market"
]
}🟢rule_check_full(market, access_token)
PRO. Full rule text + resolution source + all flags for up to 10 Polymarket markets matching a slug or search.
Input Schema
{
"type": "object",
"properties": {
"market": {
"type": "string"
},
"access_token": {
"type": "string",
"description": "Subscriber token from /success (or Authorization: Bearer)"
}
},
"required": [
"market"
]
}🟢kalshi_check(ticker, access_token)
PRO. Risk-score a Kalshi market's rules by ticker (rules_primary + rules_secondary).
Input Schema
{
"type": "object",
"properties": {
"ticker": {
"type": "string"
},
"access_token": {
"type": "string",
"description": "Subscriber token from /success (or Authorization: Bearer)"
}
},
"required": [
"ticker"
]
}🟢scan_risky(limit, min_score, access_token)
PRO. Scan the top live Polymarket markets by volume and list the ones with the riskiest settlement wording.
Input Schema
{
"type": "object",
"properties": {
"limit": {
"type": "number"
},
"min_score": {
"type": "number"
},
"access_token": {
"type": "string",
"description": "Subscriber token from /success (or Authorization: Bearer)"
}
}
}⚪market_lookup(id)
FREE. Live price, volume and close time for ONE prediction market in the normalised Polymarket+Kalshi schema. Give a Polymarket slug or a Kalshi ticker.
Input Schema
{
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Polymarket market slug (e.g. will-x-happen) or Kalshi market ticker (e.g. KXFEDDECISION-26DEC-H0)"
}
},
"required": [
"id"
]
}⚪live_markets(venue, limit, contains, access_token)
PAID $0.02/call (x402) or subscription. Live open markets from Polymarket and Kalshi in one schema, ranked by 24h volume within each venue (interleaved). Filter by venue or text.
Input Schema
{
"type": "object",
"properties": {
"venue": {
"type": "string",
"enum": [
"all",
"polymarket",
"kalshi"
],
"description": "Default all"
},
"limit": {
"type": "number",
"description": "1-100, default 25"
},
"contains": {
"type": "string",
"description": "Optional text filter on question"
},
"access_token": {
"type": "string",
"description": "Subscriber token from /success (or Authorization: Bearer)"
}
}
}🟢search_markets(query, venue, limit, access_token)
PAID $0.02/call (x402) or subscription. Keyword search across live Polymarket and Kalshi markets (e.g. 'fed rate', 'bitcoin', 'election'); normalised prices and volumes.
Input Schema
{
"type": "object",
"properties": {
"query": {
"type": "string"
},
"venue": {
"type": "string",
"enum": [
"all",
"polymarket",
"kalshi"
],
"description": "Default all"
},
"limit": {
"type": "number",
"description": "1-50, default 20"
},
"access_token": {
"type": "string",
"description": "Subscriber token from /success (or Authorization: Bearer)"
}
},
"required": [
"query"
]
}⚪top_movers(venue, limit, access_token)
PAID $0.02/call (x402) or subscription. Live markets with the biggest 24h price moves on Polymarket and Kalshi, in one schema.
Input Schema
{
"type": "object",
"properties": {
"venue": {
"type": "string",
"enum": [
"all",
"polymarket",
"kalshi"
],
"description": "Default all"
},
"limit": {
"type": "number",
"description": "1-50, default 15"
},
"access_token": {
"type": "string",
"description": "Subscriber token from /success (or Authorization: Bearer)"
}
}
}⚪doubles_record(limit)
FREE. Sports doubles feed (info only, 18+): the full SETTLED record of Grok Double Bot's daily doubles, every pick including losses, with legs, odds at tip time and result; won/lost/void counts, win rate, average combined odds and running profit on a flat £10 stake. Never shows unsettled picks. Information only, not betting advice. No guaranteed returns. 18+. BeGambleAware.org
Input Schema
{
"type": "object",
"properties": {
"limit": {
"type": "number",
"description": "Most recent N settled picks to list (1-500, default all up to 500). Stats always cover the full record."
}
}
}⚪doubles_today(access_token)
PAID $0.05/call (x402 USDC on Base) or subscription / bundle pass. Sports doubles feed (info only, 18+): today's stats-led doubles from Grok Double Bot with legs, kick-off/start times (UK), odds at tip time, combined odds, confidence and rationale. Information only, not betting advice. No guaranteed returns. 18+. BeGambleAware.org
Input Schema
{
"type": "object",
"properties": {
"access_token": {
"type": "string",
"description": "Subscriber token from /success (or Authorization: Bearer)"
}
}
}🟢kalshi_weather_series(city, kind, limit)
FREE. List Kalshi weather series (daily high/low temperature, rain, snow) by city or keyword, with series ticker, frequency and official settlement source. Use the ticker with kalshi_weather_settlements. Information only, not betting advice. Historical settlements do not predict future results. 18+. BeGambleAware.org
Input Schema
{
"type": "object",
"properties": {
"city": {
"type": "string",
"description": "City or keyword, e.g. London, NYC, Chicago"
},
"kind": {
"type": "string",
"enum": [
"high",
"low",
"rain",
"snow"
]
},
"limit": {
"type": "number",
"description": "default 25, max 100"
}
}
}⚪kalshi_weather_settlements(series, city, kind, from, to, ...)
PAID $0.02/call (x402) or subscription / bundle pass. Settled Kalshi weather markets for a series (e.g. KXHIGHNY) or city: per market the ticker, close date, exact close_time (ISO 8601 UTC, Z) and close_time_local (ISO with the city's UTC offset; local_tz IANA zone, null if unknown), settlement_time (Kalshi settlement timestamp, ISO UTC; null if Kalshi gives none) and close_to_settlement_seconds / close_to_settlement_minutes (gap from close to settlement, to spot late settlements or revisions), expiration_time, strike/bucket, yes/no result and settlement payout, plus the observed settlement value per day and the official settlement source. Optional date range. Information only, not betting advice. Historical settlements do not predict future results. 18+. BeGambleAware.org
Input Schema
{
"type": "object",
"properties": {
"series": {
"type": "string",
"description": "Series ticker, e.g. KXHIGHNY, KXHIGHTEGLL, KXRAINNYC"
},
"city": {
"type": "string",
"description": "Alternative to series: city/station keyword (e.g. London, Chicago)"
},
"kind": {
"type": "string",
"enum": [
"high",
"low",
"rain",
"snow"
],
"description": "With city: which series type (default high)"
},
"from": {
"type": "string",
"description": "Close date from, YYYY-MM-DD"
},
"to": {
"type": "string",
"description": "Close date to, YYYY-MM-DD"
},
"limit": {
"type": "number",
"description": "Max markets, default 100, max 500"
},
"access_token": {
"type": "string",
"description": "Subscriber token from /success (or Authorization: Bearer)"
}
}
}Community
Evidence