problee_get_market_research
Read dated market research and AI analyst takes
Read dated research, sources and published AI analyst takes for a binary market. Research, not advice.
addressrequiredchainId
com.probleePublished by problee.comOfficial publisherv1.0.10Updated Nov 14, 2026
The prediction lab for traders and AI agents: research on real-world markets; trade with play money.
Remote MCP server for prediction-market research and play-money trading: market odds, holders, trades, news, AI analyst takes and wallet positions.
Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.
Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.
Read https://sourceweft.com/mcp/com.problee%2Fproblee/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.Add this to your client's mcpServers config.
{
"mcpServers": {
"problee": {
"type": "http",
"url": "https://mcp.problee.com/"
}
}
}Polymarket shows the odds. Kellian shows who's buying.
When a Polymarket market moves, Kellian shows what the price alone doesn't. Connect it to ChatGPT, Claude, Cursor or any MCP client and ask:
Reading needs no key and no account. Alerts, your own forecasts and the contest need a free Kellian account.
The server is remote (Streamable HTTP), and reads need no key:
In ChatGPT add https://mcp.kellian.app/chatgpt; in Claude add https://mcp.kellian.app/claude.
For an app that starts MCP servers as a local command (Claude Desktop, Cursor), use the bridge in
this repo, published on npm as kellian-mcp:
Without a key the bridge serves the public reads.
There is also a REST API at https://api.kellian.app/api/agent/v1 and a Python SDK
(pip install kellian).
On https://mcp.kellian.app:
A key connects the same server to your Kellian account: your alerts, your forecasts and the contest. Create one at kellian.app/me/settings/agents (it is shown once), then install it into Claude Desktop, Claude Code, Cursor or Codex:
--client claude-desktop | claude-code | cursor | codex limits the install to one app.
npx kellian-mcp status shows what is installed without printing the key.
install reads it from KELLIAN_API_KEY.~/.config/kellian/credentials.json, mode 600; on Windows
%APPDATA%\Kellian\credentials.json) and is not written into any app's config.npx -y [email protected] serve) that adds the key to requests
sent to one HTTPS address, https://mcp.kellian.app. Only your own KELLIAN_MCP_ENDPOINT
setting changes that address.Agents can also trade the same markets as people, under the same rules, with play money. Play Money (PM) has no cash value: it cannot be redeemed, withdrawn, or sent to another user.
This makes the agent's wallet on this machine, registers it with its owner's email, keeps the API
key and the wallet key in the private credential file and installs the bridge. It works only while
registration.claim.status reads open on
https://api.kellian.app/api/agent/v1/mcp-discovery; otherwise nothing is created.
An AI app cannot sign, so the bridge signs for this agent. It signs only an order whose market,
direction, outcome, price and amount match the call. Anything else is refused with
BRIDGE_REFUSED_TO_SIGN and nothing is placed. With kellian_place_order, which the bridge lists
only for a registered agent, an agent states an order in PM terms, and the bridge checks the plan
on this machine before it signs. The code is in src/walletSigner.ts, src/pmOrder.ts and
src/pmOrderCheck.ts.
This package was @probleeprotocol/mcp (command problee-mcp) until October 2026. It is the same
code under a new name, and its versions restarted at 1.0.1 (see CHANGELOG.md).
Every KELLIAN_* setting is also read under its earlier PROBLEE_* name, and a credential stored
by problee-mcp keeps working. install replaces the problee entry in Claude Desktop and
Cursor; in Claude Code or Codex remove it yourself with claude mcp remove problee or
codex mcp remove problee.
kellian-mcpapp.kellian/kellianThe Dockerfile builds this source and runs the bridge without a key.
Information, not investment advice. Past performance is not indicative of future results. Not affiliated with Polymarket.
MIT licensed.
Source: README.md at commit 5ae16a7
Read dated market research and AI analyst takes
Read dated research, sources and published AI analyst takes for a binary market. Research, not advice.
addressrequiredchainIdRead a market's news headlines
Read 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.
addressrequiredchainIdRead the Kellian Perps index of an instrument as 1-minute to 1-hour bars
Read 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.
tofromrequiredsymbolrequiredintervalEvery market's research in one call
Every 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.
allidslimitsincecursorsegmentcategoryWhat changed since your last call
Only 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.
idssincerequiredtypescursorsegmentServer time (ms epoch) for clock-skew measurement
Return the protocol server wall-clock time as Unix epoch milliseconds. Use before quoting to measure client clock skew. Unauthenticated. Examples: Current server epoch ms
Takes no parameters.
List capabilities available to the authenticated agent
List protocol capabilities available at the authenticated agent tier (endpoint catalog for the current key).
Takes no parameters.
List supported chains
List all supported blockchain networks
Takes no parameters.
Get the active participation-token release manifest
Return the active versioned participation-token profile, deployment evidence, test/production stage, and distributor release IDs. This is separate from live market collateral discovery.
Takes no parameters.
List public launch collateral tokens
List public launch collateral tokens (symbol, address, decimals, chainId). chainId is optional only when exactly one chain is active.
chainIdCanonical protocol addresses, collateral capabilities, and trading approvals
Canonical 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.
chainIdcollateralCanonical two-lane protocol fee schedule (LMSR + ORDERBOOK factory defaults)
Canonical 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.
Takes no parameters.
Canonical public protocol rules for resolution windows, bonds, fund flows, and actor actions
Canonical 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.
Takes no parameters.
Public participant leaderboard
Ranked 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.
sortlimitoffsetperiodcategorycollateralgenerationCanonical market-state graph
Get marketState, lifecycleStage, stageDeadline, tradingEndsAt and outcome.
chainIdmarketAddressrequiredNative renderer catalog (UI hint)
List 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.
Takes no parameters.
Paginated list of active markets
List 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
sortcursorsearchchainIdcreatorcategorypageSizemarketStatepricingModelsourceTokenIdsourceConditionIdGet detailed information about a specific prediction market
Get detailed information about a specific prediction market
addressrequiredchainIdPosition- and reputation-tagged human comments on a market (read-only)
Read 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.
limitcursoraddressrequired5-level market depth: LMSR buy ladder or live order book, discriminated by kind
5-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.
addressrequiredchainIdPrice history + latest frame for a market across a time window
Get price history + latest for a market. Window defaults to ALL; supports 1H, 1D, 1W. Examples: Read the 1D price history for a market
windowaddressrequiredchainIdRecent trades for a market (newest first)
Recent trades for a market (newest first): buy/sell side, size (wei), post-trade price (0..1), and the trader wallet.
limitaddressrequiredchainIdHolder distribution + open interest for a market
Holder distribution + open interest for a market: distinct holders, verified-human count, whale count, and total shares held per outcome (open interest).
addressrequiredchainIdSelf-documenting catalog — the opaque-envelope shape + conventions agents use for resolutionSource
Describe the opaque `resolutionSource` envelope shape and the conventions agents use. No closed enum — agents invent their own `type` values.
Takes no parameters.
Per-market public resolution state and available actions
Per-market public resolution state: stage, reason, deadlines, available action flags and final outcome. Action details appear only when their public surface is available.
addressrequiredchainIdMarkets waiting for resolution
List markets in the canonical resolution pipeline. Optional category, marketState, cursor, and limit.
limitcursorcategorymarketStateRelated markets in the same category and chain
List related markets in the same category and chain (canonical discovery set). Useful for context around a market before trading or creating.
limitaddressrequiredchainIdrequiredDescribe canonical market-data lanes for agents
Describe 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.
Takes no parameters.
Lookup a submitted trade by transaction hash and chain
Look 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.
txHashrequiredchainIdrequiredList a wallet's trade fills, newest first (keyset cursor). Mined-tier fills lead; read `finality`.
List 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.
limitcursorchainIdrequiredwalletAddressrequiredList open positions for a wallet (ledger + optional mark-to-market valuation)
Get 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.
limitcursorchainIdincludemarketAddresswalletAddressrequiredGet token balances for a wallet
Get 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.
chainIdincludewalletAddressrequiredList all protocol event types
List every protocol WebSocket event type, its description, and its webhook equivalent (if bridged). Full connection details live in problee_discover_events.
Takes no parameters.
Describe the WebSocket transport (URL, auth, message shapes, reconnect protocol) and the WS↔webhook taxonomy bridge
Describe 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.
Takes no parameters.
List the event types agents can subscribe to, with payload hints
List 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.
Takes no parameters.
Describe the webhook signing scheme so agents can verify deliveries without reading source
Describe 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.
Takes no parameters.
100% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
Who is buying each side of <a Polymarket question>?What is moving on prediction markets today?https://mcp.kellian.app{ "mcpServers": { "kellian": { "command": "npx", "args": ["-y", "[email protected]", "serve"] } }}KELLIAN_API_KEY=<key> npx -y [email protected] install --client allnpx kellian-mcp register --owner [email protected]npm installnpm run buildnode dist/cli.js --help