Problee
Measured conclusion: Alive, not deep-tested. L2 outcome: not_attempted.
The prediction lab for traders and AI agents: research on real-world markets; trade with play money.
| Author | com.problee |
|---|---|
| Access | remote |
| Publisher key required | No |
| Measured state | Alive, not deep-tested |
| L1 liveness | alive |
| L1 latency | 286 ms |
| Last measured | 2026-10-26 |
Add to your agent
Copy this into your MCP client config:
{
"mcpServers": {
"Problee": {
"url": "https://mcp.problee.com",
"transport": "streamable-http"
}
}
}
Measured tools (36)
problee_get_market_researchread-onlyRead dated research, sources and published AI analyst takes for a binary market. Research, not advice.
Parameters:
address(required) — string — Checksummed or lowercase 20-byte EVM address (0x + 40 hex).chainId— integer
Hints: read-only yes · destructive no · idempotent yes · open-world yes
problee_get_market_newsread-onlyRead a market's recent news headlines (last 7 days, newest first): title, link to the publisher, outlet, label (official, wire, local) and the market terms each title matched. Titles and links only. Research, not advice.
Parameters:
address(required) — string — Checksummed or lowercase 20-byte EVM address (0x + 40 hex).chainId— integer
Hints: read-only yes · destructive no · idempotent yes · open-world yes
problee_get_perp_index_barsread-onlyRead the Kellian Perps index (the underlying stock, index, commodity or coin price, recorded every minute Kellian saw whole) as bars for a window: open, high, low, close and how many minutes each bar holds. Use it for the real range of a price market's window; a minute not recorded has no bar. Information only.
Parameters:
symbol(required) — stringfrom(required) — string — Start of the window (inclusive). Bars open on whole multiples of the interval, UTC.to— string — End of the window (exclusive). Default: now.interval— string — Bar length. 30m bars line up with a 9:30 ET open.
Hints: read-only yes · destructive no · idempotent yes · open-world yes
problee_get_contextread-onlyEvery market's research in one call, one compact record per market: the market (question, rules, chance, 24h move, close, Polymarket link), the newest headlines, the AI analysts' average, gap and one-line reasons, and the top traders' lean (API Pro: each one by name, with side, shares, Tier 1-3, entry price and last move). Filter by segment, category or ids, or all; page with cursor. Without a key or on a free account it is the Free preview (5 markets, the analysts' average only, 1 headline); meta says what it withheld. Research, not financial advice.
Parameters:
all— boolean — Every open market, paged.ids— array — Market ids (base:0x…), instead of segment or category.limit— integer — Records per page (default 25).since— string — Only markets whose record changed after this time.cursor— string — The nextCursor of the previous page.segment— string — A topic, as the Traders board names it: politics, ai, economy, culture, movies, tech, weather, or a list such as ai-model-lab-rankings.category— string — The market's arena. Retired names are stored as their successor; OTHER is unfiled. Open enum: tolerate unseen values.
Hints: read-only yes · destructive no · idempotent yes · open-world yes
problee_get_context_changesread-onlyOnly what changed since your last call, newest first: new headlines, AI analyst views that moved, big price moves, new and closing markets, and (API Pro) top-trader moves with their price and size. Each change comes once, in the first window after Kellian recorded it. Call again with since = the answer's until. Plus and API Pro. Research, not financial advice.
Parameters:
since(required) — string — Your last call's until (ISO 8601), up to 7 days back.ids— arraytypes— arraycursor— stringsegment— string — A topic, as the Traders board names it: politics, ai, economy, culture, movies, tech, weather, or a list such as ai-model-lab-rankings.
Hints: read-only yes · destructive no · idempotent yes · open-world yes
problee_get_server_timeread-onlyReturn the protocol server wall-clock time as Unix epoch milliseconds. Use before quoting to measure client clock skew. Unauthenticated. Examples: Current server epoch ms
Hints: read-only yes · destructive no · idempotent yes · open-world yes
problee_list_capabilitiesread-onlyList protocol capabilities available at the authenticated agent tier (endpoint catalog for the current key).
Hints: read-only yes · destructive no · idempotent yes · open-world yes
problee_list_chainsread-onlyList all supported blockchain networks
Hints: read-only yes · destructive no · idempotent yes · open-world yes
problee_get_token_releaseread-onlyReturn the active versioned participation-token profile, deployment evidence, test/production stage, and distributor release IDs. This is separate from live market collateral discovery.
Hints: read-only yes · destructive no · idempotent yes · open-world yes
problee_list_collateralread-onlyList public launch collateral tokens (symbol, address, decimals, chainId). chainId is optional only when exactly one chain is active.
Parameters:
chainId— integer — Optional only when exactly one chain is active; required when multiple chains are active.
Hints: read-only yes · destructive no · idempotent yes · open-world yes
problee_get_contractsread-onlyCanonical per-chain collateral capabilities and addresses (per-collateral MarketRouter proxies, the shared OutcomeToken1155, and factories) plus the exact one-time approvals for collaterals with trading=true: approve(collateral -> router, MAX) for buys (AMM + orderbook), setApprovalForAll(OutcomeToken1155 -> router, true) for a LMSR or orderbook sell today — engine-scoped, so this drops out per settlement venue as each ships approval-free sells (burn-and-mint instead of a pull); check the actual /trade/prepare or /trade/simulate response for one market rather than assuming this list is permanent. A collateral whose settlement is committed emits no approval at all: its fills are entries on the venue commit ledger, so there is no router pull to authorize — read `settlement` per collateral from GET /discover/collateral. Creator agents must select a collateral with creation=true; role=protocol identifies the selected participation-token generation. Cancel and direct market-local claims need no approval. Human identity is a separate global service and is never discovered as chain-local trading periphery. All addresses are stable/permanent (UUPS) where applicable.
Parameters:
chainId— integer — Optional chainId. Returns all enabled chains if omitted.collateral— string — Optional reviewed collateral symbol or token address filter.
Hints: read-only yes · destructive no · idempotent yes · open-world yes
problee_get_feesread-onlyCanonical two-lane fee schedule read from live factory defaults: LMSR (buy 0% / sell+claim exit) and ORDERBOOK (place 0% / taker fee charged to the economic taker on BOTH wallet-router market orders and operator-matched signed limit fills / claim exit). Rates are DEFAULTS — always confirm the per-market value via tradingRules on market detail or fee on problee_get_quote before executing.
Hints: read-only yes · destructive no · idempotent yes · open-world yes
problee_get_rulesread-onlyCanonical public protocol facts: resolution timing, final review, bonds, fund flows and actor conditions. Publicly available actions are listed in the capability catalogue and each market’s action flags.
Hints: read-only yes · destructive no · idempotent yes · open-world yes
problee_list_leaderboardread-onlyRanked public leaderboard, the same data people see. sort=PNL/VOLUME returns traders using canonical displayed-price performance. Legacy sort=RETURN aliases PNL; return percentage fields are null. Amounts may be unavailable; settledMarkets counts confirmed non-void traded markets. RISK_ADJ_PNL is a legacy adapter; sort=CREATOR_QUALITY returns creators (track record and tier). Every row carries its participant identity and reputation tier.
Parameters:
sort— PNL, VOLUME (traders). Legacy RETURN aliases PNL. RISK_ADJ_PNL is legacy. CREATOR_QUALITY (creators).limit— integeroffset— integerperiod— 7d (this calendar week from Monday 00:00 UTC), 30d (this calendar month), 3m, 6m or 1y (trailing from 00:00 UTC of today minus 91, 182 or 365 days), or all (the life score). Deprecated: season, season7d and season30d answer with the all, 7d and 30d boards.category— string — Market category for PNL and VOLUME.collateral— Collateral symbol whose board to read. Defaults to the play-money collateral; a collateral this venue does not offer answers with an empty board.generation— string — Pin the generation from the preceding leaderboard response.
Hints: read-only yes · destructive no · idempotent yes · open-world yes
problee_get_market_stateread-onlyGet marketState, lifecycleStage, stageDeadline, tradingEndsAt and outcome.
Parameters:
marketAddress(required) — stringchainId— number
Hints: read-only yes · destructive no · idempotent yes · open-world yes
problee_discover_renderersread-onlyList the built-in market surface renderer types with data schemas and examples. Beginner agents should use `problee_publish_market_surface`; `problee_push_content` remains the advanced raw envelope path.
Hints: read-only yes · destructive no · idempotent yes · open-world yes
problee_list_marketsread-onlyList prediction markets on Kellian. Each row carries the canonical `marketState` and, beside it, the derived `lifecycleStage` plus the `stageDeadline` that stage runs to — prefer `lifecycleStage` for display and for deciding what is possible right now. Examples: List live CRYPTO markets on Base
Parameters:
sort— string — Sort order. new = newest first (default); volume_24h = highest traded value first; closing_soon = soonest resolution time; resolved_newest = most recently resolved. The keyset `cursor` only applies to `new`.cursor— string — Keyset cursor from a prior response nextCursor.search— string — Free-text search over the market question.chainId— numbercreator— Filter to markets whose on-chain creator wallet matches this address.category— stringpageSize— integermarketState— Exact canonical market-state filter.pricingModel— string — Filter by pricing engine: 'ORDERBOOK' = central limit order book markets; 'automated' = automated-market-maker markets.sourceTokenId— string — Source outcome token ID, in decimal as the source market's orders name it: lists the market that follows it, each row carrying `sourceToken.side`, the order side that is that outcome.sourceConditionId— string — Source market condition ID: lists the markets whose `resolutionSource` is `{type: 'polymarket', conditionId}` with this ID.
Hints: read-only yes · destructive no · idempotent yes · open-world yes
problee_get_marketread-onlyGet detailed information about a specific prediction market
Parameters:
address(required) — stringchainId— number
Hints: read-only yes · destructive no · idempotent yes · open-world yes
problee_list_market_commentsread-onlyRead human comments on a market (newest first, read-only): comment body + timestamps, the commenter wallet, their black-box reputation tier, and the position they held plus the market prices frozen when they wrote it (shares per outcome, avg entry, prices at write) — position- and reputation-tagged sentiment for trade decisions.
Parameters:
address(required) — Market contract address.limit— integercursor— string — nextCursor from a prior call.
Hints: read-only yes · destructive no · idempotent yes · open-world yes
problee_get_market_depthread-only5-level market depth for a market: a simulated LMSR buy ladder (kind: 'amm') or a live aggregated order-book snapshot (kind: 'orderbook'), discriminated by `kind`. This is the discovery-sized view; problee_get_orderbook serves full order-book depth.
Parameters:
address(required) — Market contract address.chainId— integer — Chain id; probes enabled chains if omitted.
Hints: read-only yes · destructive no · idempotent yes · open-world yes
problee_get_market_chartread-onlyGet price history + latest for a market. Window defaults to ALL; supports 1H, 1D, 1W. Examples: Read the 1D price history for a market
Parameters:
address(required) — stringwindow— stringchainId— number
Hints: read-only yes · destructive no · idempotent yes · open-world yes
problee_get_market_tradesread-onlyRecent trades for a market (newest first): buy/sell side, size (wei), post-trade price (0..1), and the trader wallet.
Parameters:
address(required) — Market contract address.limit— integerchainId— integer — Chain id; probes enabled chains if omitted.
Hints: read-only yes · destructive no · idempotent yes · open-world yes
problee_get_market_holdersread-onlyHolder distribution + open interest for a market: distinct holders, verified-human count, whale count, and total shares held per outcome (open interest).
Parameters:
address(required) — Market contract address.chainId— integer — Chain id; probes enabled chains if omitted.
Hints: read-only yes · destructive no · idempotent yes · open-world yes
problee_discover_resolution_sourcesread-onlyDescribe the opaque `resolutionSource` envelope shape and the conventions agents use. No closed enum — agents invent their own `type` values.
Hints: read-only yes · destructive no · idempotent yes · open-world yes
problee_get_market_resolution_stateread-onlyPer-market public resolution state: stage, reason, deadlines, available action flags and final outcome. Action details appear only when their public surface is available.
Parameters:
address(required) — Market contract address.chainId— integer — Chain id; probes enabled chains if omitted.
Hints: read-only yes · destructive no · idempotent yes · open-world yes
problee_list_pending_resolution_marketsread-onlyList markets in the canonical resolution pipeline. Optional category, marketState, cursor, and limit.
Parameters:
limit— integer — Page size (1–100). Defaults to 50.cursor— Opaque pagination cursor from a prior response.category— string — Optional market category filter.marketState— Optional canonical market-state filter.
Hints: read-only yes · destructive no · idempotent yes · open-world yes
problee_list_related_marketsread-onlyList related markets in the same category and chain (canonical discovery set). Useful for context around a market before trading or creating.
Parameters:
address(required) — Anchor market contract address.chainId(required) — Chain id for the market address.limit— integer — Max related markets (1–20, default 4).
Hints: read-only yes · destructive no · idempotent yes · open-world yes
problee_discover_market_dataread-onlyDescribe the canonical market-data lanes for agents: the public WebSocket (subscribe via query params, channel catalog, client/server message shapes), REST snapshot/quote/orderbook lanes, the consumer SSE stream, and the agent lifecycle-and-negotiation control-plane WebSocket. Quote and order-book tool calls remain the execution-authoritative path; this describes the realtime/display lanes alongside them.
Hints: read-only yes · destructive no · idempotent yes · open-world yes
problee_get_trade_statusread-onlyLook up a submitted trade by transaction hash — the by-tx path for crash recovery. TWO TIERS: `provisional` carries fills decoded from the transaction's own mined receipt (seconds after inclusion), `indexed` carries the canonical finalized fills (finality-fenced, ~20-24 min behind head on Base). Every fill and the envelope itself carry `finality`. `status: "not_found"` is never returned for a transaction the venue has already seen inside that window, so a poll never regresses from evidence back to nothing. Act on provisional; settle on finalized.
Parameters:
txHash(required) — string — Transaction hash to look up (0x + 64 hex).chainId(required) — integer — Active chain the transaction was broadcast on. Discover IDs via GET /discover/chains.
Hints: read-only yes · destructive no · idempotent yes · open-world yes
problee_list_trade_fillsread-onlyList a wallet's fills for history and P&L. Newest first; keyset cursor on (timestamp,id); one row per match. TWO TIERS, read `finality` on every fill: `provisional` fills are decoded from a mined receipt seconds after inclusion and lead the first page; `finalized` fills are the canonical finality-fenced projection and are the only P&L truth. Provisional fills never appear on a cursor page — they are always newer than any cursor — so a paging walk stays canonical. Replay private order lifecycle gaps through problee_list_order_events / POST /orderbook/events. ORDERBOOK MatchSettled ingest freshness (prod 2026-07-10): webhook_first ≈1.52s from block time. A committed fill appears here as soon as it executes, with txHash null and publicationState pending; the same row id gets its txHash when its batch is published on Base.
Parameters:
walletAddress(required) — string — Wallet to list fills for (0x + 40 hex).chainId(required) — integer — Active chain to query. Discover IDs via GET /discover/chains.limit— integer — Page size (1–100, default 50).cursor— string — Opaque cursor from a previous response.
Hints: read-only yes · destructive no · idempotent yes · open-world yes
problee_get_positionsread-onlyGet token positions for a wallet address: share balances + cost-basis ledger (totalSpent/totalReceived in collateral smallest units, per-outcome cost basis, sell-realized P&L). Pass include="valuation" to add per-position currentPrices (0-1 scale) and markValue (collateral smallest units) marked at the canonical indexer price — may lag the chain. TWO TIERS, read `finality` on every row: `provisional` folds trades decoded from a mined receipt seconds after inclusion, so a trade you just made is here immediately; `finalized` is the finality-fenced ledger (~20-24 min behind head on Base) and is the only settlement truth. Provisional rows move share balances only — their cost-basis columns and the response `aggregates` stay finalized-tier.
Parameters:
walletAddress(required) — stringlimit— integercursor— stringchainId— integerinclude— string — Set to "valuation" to add currentPrices (0-1) and markValue per position.marketAddress— string
Hints: read-only yes · destructive no · idempotent yes · open-world yes
problee_get_balanceread-onlyGet collateral balances for a wallet (PM by default; include="all" returns every active supported collateral on the chain). Each balance is read from the lane that collateral settles on: a committed collateral is a ledger balance the venue holds and publishes to Base in batches, an onchain collateral is the ERC-20 balanceOf. Balances are raw integer strings in each collateral's native decimals — divide by 10^decimals for the human-readable amount.
Parameters:
walletAddress(required) — string — Wallet to check (0x + 40 hex).chainId— integer — Active chain to query. Discover IDs via GET /discover/chains; optional only when exactly one chain is active.include— string — default returns the PM balance only. all returns every active supported collateral on the chain.
Hints: read-only yes · destructive no · idempotent yes · open-world yes
problee_list_event_typesread-onlyList every protocol WebSocket event type, its description, and its webhook equivalent (if bridged). Full connection details live in problee_discover_events.
Hints: read-only yes · destructive no · idempotent yes · open-world yes
problee_discover_eventsread-onlyDescribe the Agent WebSocket transport (URL, auth schemes, message shapes, reconnect/replay protocol), the WS↔webhook taxonomy bridge, wallet-scoped auto-delivered channels (execution.report), and webhooks as the async fallback.
Hints: read-only yes · destructive no · idempotent yes · open-world yes
problee_list_webhook_event_typesread-onlyList the event types agents can subscribe a webhook to, with payload shape hints, the walletFilters matching field, and the source realtime/WebSocket event each is bridged from.
Hints: read-only yes · destructive no · idempotent yes · open-world yes
problee_discover_webhooksread-onlyDescribe the Standard Webhooks signing scheme (headers, HMAC-SHA256 algorithm, envelope shape, replay tolerance) and the url_verification handshake, so a receiver can verify deliveries without reading source.
Hints: read-only yes · destructive no · idempotent yes · open-world yes
Measured by MCPYP probing. Untested fields are omitted, never estimated. Listing is always free; MCPYP never proxies calls or stores user tokens.