Kellian
app.kellian/kelliankellian.appstreamable-httpv1.0.0Scanned
Smart money on every Polymarket market: top traders' positions and fresh moves, research, news.
37 tools: 37 only read.
- Reads private data · 2
- Reads text others write · 37
- Can send data out · 0
- No findings
Anlyon alternative
Run the operations that matter as governed actions.
Declare what an action changes, and Anlyon puts it under a shared limit, binds every approval to the exact request, and grades the outcome. It works on any HTTPS API you can describe as an action.
Anlyon does not run, proxy or govern this MCP server. A tool your own code calls directly is not routed through Anlyon and is not governed by it.
Import an OpenAPI spec →Tools
Grouped by what each tool does, most consequential first. Open one for its reasons and full description; descriptions are the publisher's own words.
37 tools
Only reads 37Show 37 read-only tools
kellian_discover_eventsDescribe the Agent WebSocket transport (URL, auth schemes, message shapes, reconnect/replay protocol), the WS↔webhook taxonomy bridge, wallet-scoped auto-delivered channels (execut…Reads private dataReads text others writeNo findings
Why it is in this group
- The description's first verb is "describe": a word for reading.
What it can reach
- private-dataThe description's first sentence says "describe" and "message": it reads messages.
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
- untrusted-inputThe description's first sentence says "describe" and "web": it reads web pages, which anyone can write.
Description, as the server wrote it 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.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
- permission: none
kellian_discover_market_dataDescribe the canonical market-data lanes for agents: the public WebSocket (subscribe via query params, channel catalog, client/server message shapes), REST snapshot/quote/orderbook…Reads private dataReads text others writeNo findings
Why it is in this group
- The description's first verb is "describe": a word for reading.
What it can reach
- private-dataThe description's first sentence says "describe" and "message": it reads messages.
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
- untrusted-inputThe description's first sentence says "describe" and "web": it reads web pages, which anyone can write.
Description, as the server wrote it 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.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
- permission: none
kellian_discover_renderersList the built-in market surface renderer types with data schemas and examples.Reads text others writeNo findings
Why it is in this group
- The description's first verb is "list": a word for reading.
What it can reach
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
Description, as the server wrote it List the built-in market surface renderer types with data schemas and examples. Beginner agents should use `kellian_publish_market_surface`; `kellian_push_content` remains the advanced raw envelope path.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
- permission: none
kellian_discover_resolution_sourcesDescribe the opaque `resolutionSource` envelope shape and the conventions agents use.Reads text others writeNo findings
Why it is in this group
- The description's first verb is "describe": a word for reading.
What it can reach
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
Description, as the server wrote it Describe the opaque `resolutionSource` envelope shape and the conventions agents use. No closed enum — agents invent their own `type` values.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
- permission: none
kellian_discover_webhooksDescribe the Standard Webhooks signing scheme (headers, HMAC-SHA256 algorithm, envelope shape, replay tolerance) and the url_verification handshake, so a receiver can verify delive…Reads text others writeNo findings
Why it is in this group
- The description's first verb is "describe": a word for reading.
What it can reach
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
- untrusted-inputThe description's first sentence says "describe" and "url": it reads web pages, which anyone can write.
Description, as the server wrote it 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.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
- permission: none
kellian_get_balanceGet collateral balances for a wallet (PM by default; include="all" returns every active supported collateral on the chain).Reads text others writeNo findings
Why it is in this group
- The name "kellian_get_balance" says "get": a word for reading.
What it can reach
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
Description, as the server wrote it 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.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
- permission: none
kellian_get_contextEvery 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' a…Reads text others writeNo findings
Why it is in this group
- The name "kellian_get_context" says "get": a word for reading.
What it can reach
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
Description, as the server wrote it 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.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
- permission: none
kellian_get_context_changesOnly 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 thei…Reads text others writeNo findings
Why it is in this group
- The name "kellian_get_context_changes" says "get": a word for reading.
What it can reach
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
Description, as the server wrote it 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.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
- permission: none
kellian_get_contractsCanonical per-chain collateral capabilities and addresses (per-collateral MarketRouter proxies, the shared OutcomeToken1155, and factories) plus the exact one-time approvals for co…Reads text others writeNo findings
Why it is in this group
- The name "kellian_get_contracts" says "get": a word for reading.
What it can reach
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
Description, as the server wrote it 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.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
- permission: none
kellian_get_feesCanonical 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-ro…Reads text others writeNo findings
Why it is in this group
- The name "kellian_get_fees" says "get": a word for reading.
What it can reach
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
Description, as the server wrote it 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 kellian_get_quote before executing.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
- permission: none
kellian_get_forecaster_recordRead a forecaster's public record: its score against the price, open and settled forecasts.Reads text others writeNo findings
Why it is in this group
- The name "kellian_get_forecaster_record" says "get": a word for reading.
What it can reach
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
Description, as the server wrote it Read a forecaster's public record: its score against the price, open and settled forecasts. Any AI agent's, yours included: pass a wallet address, or an agent id for an agent with no wallet. The verdict waits for 12 settled markets.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
- permission: none
kellian_get_marketGet detailed information about a specific prediction marketReads text others writeNo findings
Why it is in this group
- The name "kellian_get_market" says "get": a word for reading.
What it can reach
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
Description, as the server wrote it Get detailed information about a specific prediction market
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
- permission: api-key-read
kellian_get_market_chartGet price history + latest for a market.Reads text others writeNo findings
Why it is in this group
- The name "kellian_get_market_chart" says "get": a word for reading.
What it can reach
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
Description, as the server wrote it Get price history + latest for a market. Window defaults to ALL; supports 1H, 1D, 1W. Examples: Read the 1D price history for a market
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
- permission: none
kellian_get_market_depth5-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`.Reads text others writeNo findings
Why it is in this group
- The name "kellian_get_market_depth" says "get": a word for reading.
What it can reach
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
Description, as the server wrote it 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; kellian_get_orderbook serves full order-book depth.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
- permission: none
kellian_get_market_holdersHolder distribution + open interest for a market: distinct holders, verified-human count, whale count, and total shares held per outcome (open interest).Reads text others writeNo findings
Why it is in this group
- The name "kellian_get_market_holders" says "get": a word for reading.
What it can reach
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
Description, as the server wrote it Holder distribution + open interest for a market: distinct holders, verified-human count, whale count, and total shares held per outcome (open interest).
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
- permission: none
kellian_get_market_newsRead 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.Reads text others writeNo findings
Why it is in this group
- The name "kellian_get_market_news" says "get": a word for reading.
What it can reach
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
Description, as the server wrote it 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.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
- permission: none
kellian_get_market_researchRead dated research, sources and published AI analyst takes for a binary market.Reads text others writeNo findings
Why it is in this group
- The name "kellian_get_market_research" says "get": a word for reading.
What it can reach
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
Description, as the server wrote it Read dated research, sources and published AI analyst takes for a binary market. Research, not advice.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
- permission: none
kellian_get_market_resolution_statePer-market public resolution state: stage, reason, deadlines, available action flags and final outcome.Reads text others writeNo findings
Why it is in this group
- The name "kellian_get_market_resolution_state" says "get": a word for reading.
What it can reach
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
Description, as the server wrote it Per-market public resolution state: stage, reason, deadlines, available action flags and final outcome. Action details appear only when their public surface is available.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
- permission: none
kellian_get_market_stateGet marketState, lifecycleStage, stageDeadline, tradingEndsAt and outcome.Reads text others writeNo findings
Why it is in this group
- The name "kellian_get_market_state" says "get": a word for reading.
What it can reach
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
Description, as the server wrote it Get marketState, lifecycleStage, stageDeadline, tradingEndsAt and outcome.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
- permission: none
kellian_get_market_tradesRecent trades for a market (newest first): buy/sell side, size (wei), post-trade price (0..1), and the trader wallet.Reads text others writeNo findings
Why it is in this group
- The name "kellian_get_market_trades" says "get": a word for reading.
What it can reach
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
- untrusted-inputThe description's first sentence says "post": it reads posts, which other people can write.
Description, as the server wrote it Recent trades for a market (newest first): buy/sell side, size (wei), post-trade price (0..1), and the trader wallet.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
- permission: none
kellian_get_perp_index_barsRead 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 ma…Reads text others writeNo findings
Why it is in this group
- The name "kellian_get_perp_index_bars" says "get": a word for reading.
What it can reach
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
Description, as the server wrote it 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.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
- permission: none
kellian_get_positionsGet 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).Reads text others writeNo findings
Why it is in this group
- The name "kellian_get_positions" says "get": a word for reading.
What it can reach
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
Description, as the server wrote it 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.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
- permission: none
kellian_get_rulesCanonical public protocol facts: resolution timing, final review, bonds, fund flows and actor conditions.Reads text others writeNo findings
Why it is in this group
- The name "kellian_get_rules" says "get": a word for reading.
What it can reach
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
- untrusted-inputThe description's first sentence says "review": it reads comments, which other people can write.
Description, as the server wrote it 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.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
- permission: none
kellian_get_server_timeReturn the protocol server wall-clock time as Unix epoch milliseconds.Reads text others writeNo findings
Why it is in this group
- The name "kellian_get_server_time" says "get": a word for reading.
What it can reach
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
Description, as the server wrote it 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
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
- permission: none
kellian_get_token_releaseReturn the active versioned participation-token profile, deployment evidence, test/production stage, and distributor release IDs.Reads text others writeNo findings
Why it is in this group
- The name "kellian_get_token_release" says "get": a word for reading.
What it can reach
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
Description, as the server wrote it Return the active versioned participation-token profile, deployment evidence, test/production stage, and distributor release IDs. This is separate from live market collateral discovery.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
- permission: none
kellian_get_trade_statusLook up a submitted trade by transaction hash — the by-tx path for crash recovery.Reads text others writeNo findings
Why it is in this group
- The name "kellian_get_trade_status" says "get": a word for reading.
What it can reach
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
Description, as the server wrote it 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.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
- permission: none
kellian_list_capabilitiesList protocol capabilities available at the authenticated agent tier (endpoint catalog for the current key).Reads text others writeNo findings
Why it is in this group
- The name "kellian_list_capabilities" says "list": a word for reading.
What it can reach
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
Description, as the server wrote it List protocol capabilities available at the authenticated agent tier (endpoint catalog for the current key).
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
- permission: api-key-read
kellian_list_chainsList all supported blockchain networksReads text others writeNo findings
Why it is in this group
- The name "kellian_list_chains" says "list": a word for reading.
What it can reach
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
Description, as the server wrote it List all supported blockchain networks
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
- permission: none
kellian_list_collateralList public launch collateral tokens (symbol, address, decimals, chainId).Reads text others writeNo findings
Why it is in this group
- The name "kellian_list_collateral" says "list": a word for reading.
What it can reach
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
Description, as the server wrote it List public launch collateral tokens (symbol, address, decimals, chainId). chainId is optional only when exactly one chain is active.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
- permission: none
kellian_list_event_typesList every protocol WebSocket event type, its description, and its webhook equivalent (if bridged).Reads text others writeNo findings
Why it is in this group
- The name "kellian_list_event_types" says "list": a word for reading.
What it can reach
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
- untrusted-inputThe description's first sentence says "list" and "web": it reads web pages, which anyone can write.
Description, as the server wrote it List every protocol WebSocket event type, its description, and its webhook equivalent (if bridged). Full connection details live in kellian_discover_events.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
- permission: none
kellian_list_leaderboardRanked public leaderboard, the same data people see.Reads text others writeNo findings
Why it is in this group
- The name "kellian_list_leaderboard" says "list": a word for reading.
What it can reach
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
Description, as the server wrote it 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.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
- permission: none
kellian_list_market_commentsRead 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 mar…Reads text others writeNo findings
Why it is in this group
- The name "kellian_list_market_comments" says "list": a word for reading.
What it can reach
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
- untrusted-inputThe name "kellian_list_market_comments" says "list" and "comment": it reads comments, which other people can write.
- untrusted-inputThe description's first sentence says "read" and "comment": it reads comments, which other people can write.
Description, as the server wrote it 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.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
- permission: none
kellian_list_marketsList prediction markets on Kellian.Reads text others writeNo findings
Why it is in this group
- The name "kellian_list_markets" says "list": a word for reading.
What it can reach
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
Description, as the server wrote it 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
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
- permission: none
kellian_list_pending_resolution_marketsList markets in the canonical resolution pipeline.Reads text others writeNo findings
Why it is in this group
- The name "kellian_list_pending_resolution_markets" says "list": a word for reading.
What it can reach
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
Description, as the server wrote it List markets in the canonical resolution pipeline. Optional category, marketState, cursor, and limit.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
- permission: none
kellian_list_trade_fillsList a wallet's fills for history and P&L.Reads text others writeNo findings
Why it is in this group
- The name "kellian_list_trade_fills" says "list": a word for reading.
What it can reach
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
Description, as the server wrote it 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 kellian_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.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
- permission: none
kellian_list_webhook_event_typesList 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.Reads text others writeNo findings
Why it is in this group
- The name "kellian_list_webhook_event_types" says "list": a word for reading.
What it can reach
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
- untrusted-inputThe description's first sentence says "list" and "web": it reads web pages, which anyone can write.
Description, as the server wrote it 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.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
- permission: none
This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.
Exfil surface
Which tools read private data, which read text someone else can write, and which can send data out. One of each is a path a prompt injection can use.
No private-data, untrusted-input, outbound path in this server alone: no tool is tagged outbound.
- Reads private data2
- Reads files, mail, messages, databases, secrets, calendars or repositories.
- Reads text others write37
- Brings in text someone else can write: web pages, inbound email, messages, issues and comments.
- Can send data out0
- Can carry data to people or systems: it sends, posts or publishes, or takes a recipient, channel or URL.
Other servers in the same agent add their own tools to these paths. Audit your whole setup to see them together.
Findings
Matches of fixed checks, with the text they matched.
No check matched anything in these tool definitions. That is not a safety guarantee.
History
Changes to its tool definitions and to its remote endpoint, newest first.
No change seen yet. Its tools are rescanned every day, and a remote endpoint is looked at once a week.
Install
Pinned to version 1.0.0. Values in angle brackets are yours to fill in.
claude mcp add --transport http kellian https://mcp.kellian.appclaude mcp add --transport http kellian https://mcp.kellian.appRun in a terminal.
Claude Code permissions
Allow the reads, ask before a change or a way out, deny the deletes. Paste into .claude/settings.json.
{
"permissions": {
"allow": [
"mcp__kellian__kellian_get_market_research",
"mcp__kellian__kellian_get_forecaster_record",
"mcp__kellian__kellian_get_market_news",
"mcp__kellian__kellian_get_perp_index_bars",
"mcp__kellian__kellian_get_context",
"mcp__kellian__kellian_get_context_changes",
"mcp__kellian__kellian_get_server_time",
"mcp__kellian__kellian_list_capabilities",
"mcp__kellian__kellian_list_chains",
"mcp__kellian__kellian_get_token_release",
"mcp__kellian__kellian_list_collateral",
"mcp__kellian__kellian_get_contracts",
"mcp__kellian__kellian_get_fees",
"mcp__kellian__kellian_get_rules",
"mcp__kellian__kellian_list_leaderboard",
"mcp__kellian__kellian_get_market_state",
"mcp__kellian__kellian_discover_renderers",
"mcp__kellian__kellian_list_markets",
"mcp__kellian__kellian_get_market",
"mcp__kellian__kellian_list_market_comments",
"mcp__kellian__kellian_get_market_depth",
"mcp__kellian__kellian_get_market_chart",
"mcp__kellian__kellian_get_market_trades",
"mcp__kellian__kellian_get_market_holders",
"mcp__kellian__kellian_discover_resolution_sources",
"mcp__kellian__kellian_get_market_resolution_state",
"mcp__kellian__kellian_list_pending_resolution_markets",
"mcp__kellian__kellian_list_related_markets",
"mcp__kellian__kellian_discover_market_data",
"mcp__kellian__kellian_get_trade_status",
"mcp__kellian__kellian_list_trade_fills",
"mcp__kellian__kellian_get_positions",
"mcp__kellian__kellian_get_balance",
"mcp__kellian__kellian_list_event_types",
"mcp__kellian__kellian_discover_events",
"mcp__kellian__kellian_list_webhook_event_types",
"mcp__kellian__kellian_discover_webhooks"
],
"ask": [],
"deny": []
}
}Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. A read that can send data out (it takes a URL, say) asks first too. It assumes the server is installed as kellian. Review it before you use it.
Capability tags behind 37 rules
- mcp__kellian__kellian_get_market_research untrusted-input
- mcp__kellian__kellian_get_forecaster_record untrusted-input
- mcp__kellian__kellian_get_market_news untrusted-input
- mcp__kellian__kellian_get_perp_index_bars untrusted-input
- mcp__kellian__kellian_get_context untrusted-input
- mcp__kellian__kellian_get_context_changes untrusted-input
- mcp__kellian__kellian_get_server_time untrusted-input
- mcp__kellian__kellian_list_capabilities untrusted-input
- mcp__kellian__kellian_list_chains untrusted-input
- mcp__kellian__kellian_get_token_release untrusted-input
- mcp__kellian__kellian_list_collateral untrusted-input
- mcp__kellian__kellian_get_contracts untrusted-input
- mcp__kellian__kellian_get_fees untrusted-input
- mcp__kellian__kellian_get_rules untrusted-input
- mcp__kellian__kellian_list_leaderboard untrusted-input
- mcp__kellian__kellian_get_market_state untrusted-input
- mcp__kellian__kellian_discover_renderers untrusted-input
- mcp__kellian__kellian_list_markets untrusted-input
- mcp__kellian__kellian_get_market untrusted-input
- mcp__kellian__kellian_list_market_comments untrusted-input
- mcp__kellian__kellian_get_market_depth untrusted-input
- mcp__kellian__kellian_get_market_chart untrusted-input
- mcp__kellian__kellian_get_market_trades untrusted-input
- mcp__kellian__kellian_get_market_holders untrusted-input
- mcp__kellian__kellian_discover_resolution_sources untrusted-input
- mcp__kellian__kellian_get_market_resolution_state untrusted-input
- mcp__kellian__kellian_list_pending_resolution_markets untrusted-input
- mcp__kellian__kellian_list_related_markets untrusted-input
- mcp__kellian__kellian_discover_market_data private-data, untrusted-input
- mcp__kellian__kellian_get_trade_status untrusted-input
- mcp__kellian__kellian_list_trade_fills untrusted-input
- mcp__kellian__kellian_get_positions untrusted-input
- mcp__kellian__kellian_get_balance untrusted-input
- mcp__kellian__kellian_list_event_types untrusted-input
- mcp__kellian__kellian_discover_events private-data, untrusted-input
- mcp__kellian__kellian_list_webhook_event_types untrusted-input
- mcp__kellian__kellian_discover_webhooks untrusted-input
Pin
Keep the decision: fail CI when the tools change, follow every change, or show a badge.
Pin in CI
Fail a build when the tools you reviewed are not the tools the server serves today.
curl -s "https://anlyon.dev/api/v1/servers/app.kellian/kellian/verify?hash=274847f2cf62d3a291dcf812abce6cd28bd08d5549e233d50de574d16529366d" | jq -e '.changed == false'Pinned hash 274847f2cf62, from Oct 31, 2026, 12:18 UTC.
Watch
Get told when its tools change: a new tool, a new description, a new class.
https://anlyon.dev/servers/app.kellian/kellian/changes.xmlAn Atom feed. Works in any feed reader or Slack's RSS app.
Badge
[](https://anlyon.dev/servers/app.kellian/kellian)Source: MCP Registry. Synced Oct 31, 2026, 12:17 UTC.