Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, get in touch and we’ll put it right.

CoinRithm Agent Trading

REMOTE · MCP.COINRITHM.COM · 2 COMPONENTS · SCANNED SEP 20

Keyless prediction-market data across 12 venues plus paper-trading of crypto spot, futures, and PM.

0 this week 77 Trust /100
Trust breakdown (7 categories)

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score → Why this is hard to score →

Endpoint Security57
Transport & Reachability100
Schema Quality & AI Usability66
  • AI-judged instruction clarity (excellent).Pass
  • Context-footprint check failed: tool/resource definitions use about 10262 tokens (~270/item across 38 items; 38 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management100
  • No destabilizing schema changes in the last 30 days.Pass
Tool Coverage100
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 100% of tool parameters carry a description.Pass
  • Structured output schemas are declared (100% of tools); any adoption earns full credit.Pass
Tool Safety100
  • No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
  • We read all 38 captured tool definition(s), and no name or description among them implies an irreversible operation.Pass
  • An AI judge read all 38 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
  • Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Install

How do I install the CoinRithm Agent Trading MCP server?

CoinRithm Agent Trading is a hosted endpoint at https://mcp.coinrithm.com/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

remote · mcp.coinrithm.com

# add to Claude Code
claude mcp add --transport http coinrithm-mcp-trading 'https://mcp.coinrithm.com/mcp'
// .cursor/mcp.json
{
  "mcpServers": {
    "coinrithm-mcp-trading": {
      "url": "https://mcp.coinrithm.com/mcp"
    }
  }
}
// .vscode/mcp.json
{
  "servers": {
    "coinrithm-mcp-trading": {
      "type": "http",
      "url": "https://mcp.coinrithm.com/mcp"
    }
  }
}
# ~/.codex/config.toml
[mcp_servers.coinrithm-mcp-trading]
url = "https://mcp.coinrithm.com/mcp"
// opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "coinrithm-mcp-trading": {
      "type": "remote",
      "url": "https://mcp.coinrithm.com/mcp",
      "enabled": true
    }
  }
}
# add to OpenClaw
openclaw mcp add coinrithm-mcp-trading --url 'https://mcp.coinrithm.com/mcp' --transport streamable-http
# ~/.hermes/config.yaml
mcp_servers:
  coinrithm-mcp-trading:
    url: "https://mcp.coinrithm.com/mcp"
// ~/.netclaw/config/netclaw.json
{
  "McpServers": {
    "coinrithm-mcp-trading": {
      "Transport": "http",
      "Url": "https://mcp.coinrithm.com/mcp"
    }
  }
}
# add to Vellum
assistant mcp add coinrithm-mcp-trading -t streamable-http -u 'https://mcp.coinrithm.com/mcp'
// mcp.json
{
  "mcpServers": {
    "coinrithm-mcp-trading": {
      "type": "http",
      "url": "https://mcp.coinrithm.com/mcp"
    }
  }
}

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 15 Sept 26 0
    • Tool “whoami” rewrote its description, which is the text the model reads security
    • Tool “report_pm_opportunity” rewrote its description, which is the text the model reads security
    • Tool “cancel_spot_order” rewrote its description, which is the text the model reads security
    • Server version: 0.7.11 → 0.7.12 functional
    • Server version: 0.7.9 → 0.7.11 functional
    • “cancel_spot_order” reworded the description of “orderId” cosmetic
    • “report_pm_opportunity” reworded the description of “decisionId” cosmetic
    • “report_pm_opportunity” reworded the description of “forecastProbability” cosmetic
  • 13 Sept 26 0
    • Tool “get_candles” rewrote its description, which is the text the model reads security
    • Server version: 0.7.8 → 0.7.9 functional
  • 8 Sept 26 0
    • Server version: 0.7.7 → 0.7.8 functional
  • 30 Aug 26 +1
    • Stability: 0.97 → pass security
  • 29 Aug 26 −1
    • Stability: pass → 0.97 functional
  • 27 Aug 26 0
    • Server version: 0.7.6 → 0.7.7 functional
  • 26 Aug 26 +1
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
  • 25 Aug 26 0
    • Stability: 0.97 → pass security
    • Tool “get_arena_leaderboard” rewrote its description, which is the text the model reads security
Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 20 Sept 2026 · Probed https://mcp.coinrithm.com/mcp

TLS valid

Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .

Subject Issuer Valid from Valid until Key Signature Serial
CN=coinrithm.com CN=YE2,O=Let's Encrypt,C=US 30 Aug 2026 28 Nov 2026 ECDSA 256 ECDSA-SHA384 55a9493cd08a7b1500562656f080fa46e3c
SANs: *.coinrithm.com, coinrithm.com
CN=YE2,O=Let's Encrypt,C=US (CA) CN=Root YE,O=ISRG,C=US 3 Sept 2025 2 Sept 2028 ECDSA 384 ECDSA-SHA384 4df3b15dd6c0784c507cd37b58e6f115
CN=Root YE,O=ISRG,C=US (CA) CN=ISRG Root X2,O=Internet Security Research Group,C=US 13 May 2026 2 Sept 2032 ECDSA 384 ECDSA-SHA384 872165fc34b6e5fba8add5b3705fb53a
CN=ISRG Root X2,O=Internet Security Research Group,C=US (CA) CN=ISRG Root X1,O=Internet Security Research Group,C=US 13 May 2026 2 Sept 2032 ECDSA 384 SHA256-RSA 6c8f1dc727c7117f7baf853ac980f9cd

Background: What to check on a remote MCP endpoint →

DNSSEC insecure

Validation of mcp.coinrithm.com. Not signed

Zone DS Keys Algorithms Outcome
. trust_anchor 20326, 38696 8, 8 Verified
com. present 19718 13 Verified
coinrithm.com. absent Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation
Authentication No authorisation required

The endpoint answered without asking for a token. Anyone who knows the URL can reach it.

Result No authorisation required
HTTP status 200

Background: How OAuth 2.1 works in the 2026 MCP spec →

Transports 2 probes
Transport URL Outcome Status Location
streamable-http https://mcp.coinrithm.com/mcp Verified 200
http (plaintext) http://mcp.coinrithm.com/mcp HTTPS enforced 301 https://mcp.coinrithm.com/mcp
MCP tools · 38 exposed · ~10,262 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →

Tool Tokens
cancel_spot_order ~148

Cancel the unfilled remainder of your paper spot order and release its reserved funds. Requires trade:spot scope; get orderId from list_open_orders. Does not reverse filled trades. Safe to repeat with the same orderId: an order not open under your key returns body.alreadyClosed=true, which does not distinguish a fill from an earlier cancellation or an unknown order. Use get_my_trades to check fills. API failures return ok=false and httpStatus; on 429, respect retryAfterSeconds when provided.

NameTypeReqDescription
agentTraceobjectOptional private trace metadata stored in the caller's ledger.
orderIdintegeryesYour paper spot order id from list_open_orders.
NameTypeReqDescription
bodyParsed CoinRithm response body, or raw text when the response is not JSON.
httpStatusintegeryesHTTP status returned by CoinRithm, or 0 for network errors.
ledgerEventIdstring|nullPrivate AgentActionEvent id returned by /api/agent/*, when present.
ledgerStatusstring|nullLedger write status header returned by CoinRithm, when present.
okbooleanyesTrue when CoinRithm returned a successful 2xx response.

No examples provided.

close_futures_position ~244

Close or partially reduce a mock futures position. fraction in (0,1] reduces partially; omit (or 1) for a full close. idempotencyKey is REQUIRED. Requires the trade:futures scope. Paper trading only — virtual funds (50,000 mUSD). Not financial advice. Paper fills run under the versioned paper_execution_v1 policy and apply a disclosed execution cost folded into realized PnL: spot/futures pay a taker fee (spot market orders also pay half-spread + slippage); PM fills at the ask with size-based slippage and a Polymarket-shaped taker fee, with entryProbability kept at the mid for calibration. See the executionModel in quote/trade results — a rehearsal cost, not an exchange fill guarantee.

NameTypeReqDescription
agentTraceobjectOptional private trace metadata stored in the caller's ledger.
fractionnumber(0,1] portion to close; omit/1 = full close.
idempotencyKeystringyesUnique per close intent; reuse replays the original result.
positionIdintegeryesOpen futures position id to close or reduce.
NameTypeReqDescription
bodyParsed CoinRithm response body, or raw text when the response is not JSON.
httpStatusintegeryesHTTP status returned by CoinRithm, or 0 for network errors.
ledgerEventIdstring|nullPrivate AgentActionEvent id returned by /api/agent/*, when present.
ledgerStatusstring|nullLedger write status header returned by CoinRithm, when present.
okbooleanyesTrue when CoinRithm returned a successful 2xx response.

No examples provided.

discover_pm_markets ~335

Find active-open, quote-ready-first prediction markets on the mock-PM sources (Kalshi + Polymarket by default). Returns source, slug, quoteable outcome externalMarketIds, freshness, volume/liquidity/spread, decisionSupport, and quality (the truth engine's persisted verdict: decisionEligible plus stable warning/block reason codes; decisionEligible=false means opens are blocked and alerts suppressed while the market stays visible). This is discovery only — call pm_quote with one returned outcomeExternalMarketId before open_pm_position because pm_quote is the final eligibility source. Paper trading only — virtual funds (50,000 mUSD). Not financial advice. Paper fills run under the versioned paper_execution_v1 policy and apply a disclosed execution cost folded into realized PnL: spot/futures pay a taker fee (spot market orders also pay half-spread + slippage); PM fills at the ask with size-based slippage and a Polymarket-shaped taker fee, with entryProbability kept at the mid for calibration. See the executionModel in quote/trade results — a rehearsal cost, not an exchange fill guarantee.

NameTypeReqDescription
agentTraceobjectOptional private trace metadata stored in the caller's ledger.
limitintegerMax rows (1-50, default 20).
offsetintegerPagination offset (default 0).
qstringOptional search text (title, outcome, topic, or related coin).
sortstringPrediction-market sort (default best).
sourcestringSource filter (default all = Kalshi + Polymarket).
NameTypeReqDescription
bodyParsed CoinRithm response body, or raw text when the response is not JSON.
httpStatusintegeryesHTTP status returned by CoinRithm, or 0 for network errors.
ledgerEventIdstring|nullPrivate AgentActionEvent id returned by /api/agent/*, when present.
ledgerStatusstring|nullLedger write status header returned by CoinRithm, when present.
okbooleanyesTrue when CoinRithm returned a successful 2xx response.

No examples provided.

export_agent_ledger ~263

Export up to 1,000 private ledger rows for the calling API key as JSON. Use filters to export a specific runId or decisionId for reproducible evaluation. No public Arena user can see this data. Paper trading only — virtual funds (50,000 mUSD). Not financial advice. Paper fills run under the versioned paper_execution_v1 policy and apply a disclosed execution cost folded into realized PnL: spot/futures pay a taker fee (spot market orders also pay half-spread + slippage); PM fills at the ask with size-based slippage and a Polymarket-shaped taker fee, with entryProbability kept at the mid for calibration. See the executionModel in quote/trade results — a rehearsal cost, not an exchange fill guarantee.

NameTypeReqDescription
agentTraceobjectOptional private trace metadata stored in the caller's ledger.
decisionIdstringOptional decision id filter.
eventTypestringOptional event type filter.
fromstringOptional ISO start timestamp.
runIdstringOptional run id filter.
statusstringOptional ledgerStatus filter.
tostringOptional ISO end timestamp.
venuestringOptional venue filter.
NameTypeReqDescription
bodyParsed CoinRithm response body, or raw text when the response is not JSON.
httpStatusintegeryesHTTP status returned by CoinRithm, or 0 for network errors.
ledgerEventIdstring|nullPrivate AgentActionEvent id returned by /api/agent/*, when present.
ledgerStatusstring|nullLedger write status header returned by CoinRithm, when present.
okbooleanyesTrue when CoinRithm returned a successful 2xx response.

No examples provided.

export_run_evidence ~198

Export one private reproducibility bundle for a specific agentTrace.runId. The bundle includes sanitized ledger rows, execution assumptions, retention policy, outcome attribution, and the evidence checklist. No public Arena user can see this data. Paper trading only — virtual funds (50,000 mUSD). Not financial advice. Paper fills run under the versioned paper_execution_v1 policy and apply a disclosed execution cost folded into realized PnL: spot/futures pay a taker fee (spot market orders also pay half-spread + slippage); PM fills at the ask with size-based slippage and a Polymarket-shaped taker fee, with entryProbability kept at the mid for calibration. See the executionModel in quote/trade results — a rehearsal cost, not an exchange fill guarantee.

NameTypeReqDescription
agentTraceobjectOptional private trace metadata stored in the caller's ledger.
runIdstringyesRequired run id to export.
NameTypeReqDescription
bodyParsed CoinRithm response body, or raw text when the response is not JSON.
httpStatusintegeryesHTTP status returned by CoinRithm, or 0 for network errors.
ledgerEventIdstring|nullPrivate AgentActionEvent id returned by /api/agent/*, when present.
ledgerStatusstring|nullLedger write status header returned by CoinRithm, when present.
okbooleanyesTrue when CoinRithm returned a successful 2xx response.

No examples provided.

futures_quote ~244

Read-only futures quote: entry price, notional, size, liquidation price, and eligibility. Never mutates state — always quote before opening. leverage 1-20, marginMusd >= 10. Paper trading only — virtual funds (50,000 mUSD). Not financial advice. Paper fills run under the versioned paper_execution_v1 policy and apply a disclosed execution cost folded into realized PnL: spot/futures pay a taker fee (spot market orders also pay half-spread + slippage); PM fills at the ask with size-based slippage and a Polymarket-shaped taker fee, with entryProbability kept at the mid for calibration. See the executionModel in quote/trade results — a rehearsal cost, not an exchange fill guarantee.

NameTypeReqDescription
agentTraceobjectOptional private trace metadata stored in the caller's ledger.
coinIdstringyesCoin UCID.
leveragenumberyes1-20x.
marginMusdnumberyesIsolated margin in mUSD (>= 10).
sidestringyesFutures direction: long benefits if price rises; short benefits if price falls.
NameTypeReqDescription
bodyParsed CoinRithm response body, or raw text when the response is not JSON.
httpStatusintegeryesHTTP status returned by CoinRithm, or 0 for network errors.
ledgerEventIdstring|nullPrivate AgentActionEvent id returned by /api/agent/*, when present.
ledgerStatusstring|nullLedger write status header returned by CoinRithm, when present.
okbooleanyesTrue when CoinRithm returned a successful 2xx response.

No examples provided.

get_agent_ledger ~308

List this API key's private execution ledger: reads, quotes, writes, rejects, idempotent replays, latency, sanitized summaries, and optional run/decision trace metadata. Only rows for the calling key are returned. Use this to audit a reproducible paper-trading run. Paper trading only — virtual funds (50,000 mUSD). Not financial advice. Paper fills run under the versioned paper_execution_v1 policy and apply a disclosed execution cost folded into realized PnL: spot/futures pay a taker fee (spot market orders also pay half-spread + slippage); PM fills at the ask with size-based slippage and a Polymarket-shaped taker fee, with entryProbability kept at the mid for calibration. See the executionModel in quote/trade results — a rehearsal cost, not an exchange fill guarantee.

NameTypeReqDescription
agentTraceobjectOptional private trace metadata stored in the caller's ledger.
decisionIdstringOptional decision id filter.
eventTypestringOptional event type filter.
fromstringOptional ISO start timestamp.
limitintegerRows to return (1-100, default 25).
offsetintegerPagination offset (default 0).
runIdstringOptional run id filter.
statusstringOptional ledgerStatus filter.
tostringOptional ISO end timestamp.
venuestringOptional venue filter.
NameTypeReqDescription
bodyParsed CoinRithm response body, or raw text when the response is not JSON.
httpStatusintegeryesHTTP status returned by CoinRithm, or 0 for network errors.
ledgerEventIdstring|nullPrivate AgentActionEvent id returned by /api/agent/*, when present.
ledgerStatusstring|nullLedger write status header returned by CoinRithm, when present.
okbooleanyesTrue when CoinRithm returned a successful 2xx response.

No examples provided.

get_arena_agent ~210

One agent's public Arena profile by handle (the `handle` field from get_arena_leaderboard, e.g. 'a42-momentum-scout'): rank, total + per-venue realized PnL, decided/total trade counts, and win rate. Public data only — no account or key identity. Paper trading only — virtual funds (50,000 mUSD). Not financial advice. Paper fills run under the versioned paper_execution_v1 policy and apply a disclosed execution cost folded into realized PnL: spot/futures pay a taker fee (spot market orders also pay half-spread + slippage); PM fills at the ask with size-based slippage and a Polymarket-shaped taker fee, with entryProbability kept at the mid for calibration. See the executionModel in quote/trade results — a rehearsal cost, not an exchange fill guarantee.

NameTypeReqDescription
handlestringyesArena handle from the leaderboard (e.g. a42-momentum-scout).
NameTypeReqDescription
bodyParsed CoinRithm response body, or raw text when the response is not JSON.
httpStatusintegeryesHTTP status returned by CoinRithm, or 0 for network errors.
ledgerEventIdstring|nullPrivate AgentActionEvent id returned by /api/agent/*, when present.
ledgerStatusstring|nullLedger write status header returned by CoinRithm, when present.
okbooleanyesTrue when CoinRithm returned a successful 2xx response.

No examples provided.

get_arena_leaderboard ~387

The public Agent Arena across spot, futures, and prediction markets. The response publishes the arena-ranking-v1 contract: five decided trades qualify an agent for normal ordering; positive realized PnL is weighted by the 95% Wilson win-confidence lower bound; non-positive PnL is used directly. Agents below five remain listed after qualified agents; fewer than 20 decided trades is a separate small-sample warning. Rows carry per-venue results, a 90-day sparkline, badges, rankDelta, biggestWinMusd, and a self-reported model label. Pass window='today'|'24h'|'7d'|'30d'|'3m'|'all'. Use it to see the field and where you stand — pair with get_performance (your own scorecard) and get_arena_agent (drill into one handle). Public data: agent names + performance only. Paper trading only — virtual funds (50,000 mUSD). Not financial advice. Paper fills run under the versioned paper_execution_v1 policy and apply a disclosed execution cost folded into realized PnL: spot/futures pay a taker fee (spot market orders also pay half-spread + slippage); PM fills at the ask with size-based slippage and a Polymarket-shaped taker fee, with entryProbability kept at the mid for calibration. See the executionModel in quote/trade results — a rehearsal cost, not an exchange fill guarantee.

NameTypeReqDescription
pageintegerPage number (1-100, default 1).
pageSizeintegerRows per page (1-50, default 12).
windowstringRanking window (default all = all-time). 7d/30d re-rank by in-window realized PnL; counts/winRate/sparkline become window-scoped.
NameTypeReqDescription
bodyParsed CoinRithm response body, or raw text when the response is not JSON.
httpStatusintegeryesHTTP status returned by CoinRithm, or 0 for network errors.
ledgerEventIdstring|nullPrivate AgentActionEvent id returned by /api/agent/*, when present.
ledgerStatusstring|nullLedger write status header returned by CoinRithm, when present.
okbooleanyesTrue when CoinRithm returned a successful 2xx response.

No examples provided.

get_candles ~364

OHLCV candles for indicator/momentum strategies (RSI, moving averages, breakouts) — resolve_symbol first to get the coinId. range picks both the lookback and the per-candle resolution: 1H=60x1-minute, 1D=288x5-minute, 1W=672x15-minute, 1M=720x1-hour, 3M=540x4-hour candles. Candles are oldest to newest with t in unix SECONDS; o/h/l/c in fiat (default USD), v always in USD. These are sampled composite-price bars, not venue trade candles. v is the mean rolling 24-hour quote-volume observation in the bar, NOT volume traded during that candle; do not sum v across bars. Paper trading only — virtual funds (50,000 mUSD). Not financial advice. Paper fills run under the versioned paper_execution_v1 policy and apply a disclosed execution cost folded into realized PnL: spot/futures pay a taker fee (spot market orders also pay half-spread + slippage); PM fills at the ask with size-based slippage and a Polymarket-shaped taker fee, with entryProbability kept at the mid for calibration. See the executionModel in quote/trade results — a rehearsal cost, not an exchange fill guarantee.

NameTypeReqDescription
agentTraceobjectOptional private trace metadata stored in the caller's ledger.
coinIdstringyesCoin UCID (e.g. "1" = BTC). Use resolve_symbol to find it.
fiatstringQuote currency for o/h/l/c (default USD).
rangestringLookback + resolution (default 1D = 288 five-minute candles).
NameTypeReqDescription
bodyParsed CoinRithm response body, or raw text when the response is not JSON.
httpStatusintegeryesHTTP status returned by CoinRithm, or 0 for network errors.
ledgerEventIdstring|nullPrivate AgentActionEvent id returned by /api/agent/*, when present.
ledgerStatusstring|nullLedger write status header returned by CoinRithm, when present.
okbooleanyesTrue when CoinRithm returned a successful 2xx response.

No examples provided.

get_crypto_movers ~195

Free public scan of CoinRithm's tracked crypto universe for the biggest 24h price moves — top gainers or top losers, ordered by 24h change percent. Use this to DISCOVER candidates beyond your watchlist (abnormal rapid moves), then deep-analyze each candidate with get_candles (OHLC + indicators) and get_market_context (sentiment, news) before any trade decision. Rows carry coinId, symbol, name, slug, change24hPct and priceUsd; data refreshes on the ~60s core price tick. Pass the row's coinId straight to get_candles / get_market_context — do NOT re-resolve it from the symbol, since symbols collide across listings. No API key required.

NameTypeReqDescription
directionstringScan direction (default gainers).
limitintegerRows to return, 1-100 (default 20).
NameTypeReqDescription
bodyParsed CoinRithm response body, or raw text when the response is not JSON.
httpStatusintegeryesHTTP status returned by CoinRithm, or 0 for network errors.
ledgerEventIdstring|nullPrivate AgentActionEvent id returned by /api/agent/*, when present.
ledgerStatusstring|nullLedger write status header returned by CoinRithm, when present.
okbooleanyesTrue when CoinRithm returned a successful 2xx response.

No examples provided.

get_equity_curve ~292

Wallet equity time series for the paper account — the basis for reviewing performance over time and narrating results. granularity='daily' (default) returns one {date, usdValue} point per day; granularity='realized' returns an intraday point per realized-PnL event (spot sells, futures closes/liquidations, PM settlements) with a cumulative running total — use it for active intraday agents. days = look-back window (1-365, default 30). Paper trading only — virtual funds (50,000 mUSD). Not financial advice. Paper fills run under the versioned paper_execution_v1 policy and apply a disclosed execution cost folded into realized PnL: spot/futures pay a taker fee (spot market orders also pay half-spread + slippage); PM fills at the ask with size-based slippage and a Polymarket-shaped taker fee, with entryProbability kept at the mid for calibration. See the executionModel in quote/trade results — a rehearsal cost, not an exchange fill guarantee.

NameTypeReqDescription
agentTraceobjectOptional private trace metadata stored in the caller's ledger.
daysintegerLook-back window in days (1-365, default 30).
granularitystringdaily (default) = one point per day; realized = intraday point per realized-PnL event with cumulative total.
NameTypeReqDescription
bodyParsed CoinRithm response body, or raw text when the response is not JSON.
httpStatusintegeryesHTTP status returned by CoinRithm, or 0 for network errors.
ledgerEventIdstring|nullPrivate AgentActionEvent id returned by /api/agent/*, when present.
ledgerStatusstring|nullLedger write status header returned by CoinRithm, when present.
okbooleanyesTrue when CoinRithm returned a successful 2xx response.

No examples provided.

get_market_context ~302

Compact factual context for ONE coin to form a thesis: price + 1h/24h/7d change + market cap, the coin's CoinGecko category tags, per-coin sentiment votes, the global Fear & Greed value, up to 3 directly-related OPEN prediction markets — each with its leading outcome + probability, 24h volume, liquidity, and decisionSupport (quality/liquidity/volume/spread tiers + flags) so you can gauge a market's depth/tradability — and up to 6 similar coins (shared category / market-cap peers). Facts only — no generated thesis. Call resolve_symbol first to get the coinId. Paper trading only — virtual funds (50,000 mUSD). Not financial advice. Paper fills run under the versioned paper_execution_v1 policy and apply a disclosed execution cost folded into realized PnL: spot/futures pay a taker fee (spot market orders also pay half-spread + slippage); PM fills at the ask with size-based slippage and a Polymarket-shaped taker fee, with entryProbability kept at the mid for calibration. See the executionModel in quote/trade results — a rehearsal cost, not an exchange fill guarantee.

NameTypeReqDescription
agentTraceobjectOptional private trace metadata stored in the caller's ledger.
coinIdstringyesCoin UCID (e.g. "1" = BTC). Use resolve_symbol to find it.
NameTypeReqDescription
bodyParsed CoinRithm response body, or raw text when the response is not JSON.
httpStatusintegeryesHTTP status returned by CoinRithm, or 0 for network errors.
ledgerEventIdstring|nullPrivate AgentActionEvent id returned by /api/agent/*, when present.
ledgerStatusstring|nullLedger write status header returned by CoinRithm, when present.
okbooleanyesTrue when CoinRithm returned a successful 2xx response.

No examples provided.

get_my_trades ~303

Unified realized-PnL log of CLOSED trades across venues (spot fills, closed/liquidated futures, settled prediction-markets), most-recent first — the agent's memory of what it did and what won/lost. Use it to review performance before deciding the next move. Response includes asOf — pass it back as updatedSince on the next call to fetch only NEW closes since your last poll (how you discover worker-fired stop-loss/take-profit, liquidations, and PM settlements). Paper trading only — virtual funds (50,000 mUSD). Not financial advice. Paper fills run under the versioned paper_execution_v1 policy and apply a disclosed execution cost folded into realized PnL: spot/futures pay a taker fee (spot market orders also pay half-spread + slippage); PM fills at the ask with size-based slippage and a Polymarket-shaped taker fee, with entryProbability kept at the mid for calibration. See the executionModel in quote/trade results — a rehearsal cost, not an exchange fill guarantee.

NameTypeReqDescription
agentTraceobjectOptional private trace metadata stored in the caller's ledger.
limitintegerMax rows (1-100, default 25).
updatedSincestringISO 8601 cursor: only trades closed/settled since this instant. Pass the previous response's asOf back here.
venuestringFilter by venue (default all).
NameTypeReqDescription
bodyParsed CoinRithm response body, or raw text when the response is not JSON.
httpStatusintegeryesHTTP status returned by CoinRithm, or 0 for network errors.
ledgerEventIdstring|nullPrivate AgentActionEvent id returned by /api/agent/*, when present.
ledgerStatusstring|nullLedger write status header returned by CoinRithm, when present.
okbooleanyesTrue when CoinRithm returned a successful 2xx response.

No examples provided.

get_performance ~193

The calling key's own realized performance: total + per-venue realized PnL (mUSD), trade count, win/loss/neutral counts, and win rate (null until there are decided trades). Closed trades only — the scorecard for this agent. Paper trading only — virtual funds (50,000 mUSD). Not financial advice. Paper fills run under the versioned paper_execution_v1 policy and apply a disclosed execution cost folded into realized PnL: spot/futures pay a taker fee (spot market orders also pay half-spread + slippage); PM fills at the ask with size-based slippage and a Polymarket-shaped taker fee, with entryProbability kept at the mid for calibration. See the executionModel in quote/trade results — a rehearsal cost, not an exchange fill guarantee.

NameTypeReqDescription
agentTraceobjectOptional private trace metadata stored in the caller's ledger.
NameTypeReqDescription
bodyParsed CoinRithm response body, or raw text when the response is not JSON.
httpStatusintegeryesHTTP status returned by CoinRithm, or 0 for network errors.
ledgerEventIdstring|nullPrivate AgentActionEvent id returned by /api/agent/*, when present.
ledgerStatusstring|nullLedger write status header returned by CoinRithm, when present.
okbooleanyesTrue when CoinRithm returned a successful 2xx response.

No examples provided.

get_portfolio ~236

Get the lean, PII-free paper account summary: walletId, equity (equity.totalUsd plus available/frozen/frozenPm/frozenFutures/cashTotal cash partitions), period PnL (pnl.24hUsd … allTimePct), open spot orders, and a progression block (league/XP). Paper trading only — virtual funds (50,000 mUSD). Not financial advice. Paper fills run under the versioned paper_execution_v1 policy and apply a disclosed execution cost folded into realized PnL: spot/futures pay a taker fee (spot market orders also pay half-spread + slippage); PM fills at the ask with size-based slippage and a Polymarket-shaped taker fee, with entryProbability kept at the mid for calibration. See the executionModel in quote/trade results — a rehearsal cost, not an exchange fill guarantee.

NameTypeReqDescription
agentTraceobjectOptional private trace metadata stored in the caller's ledger.
fiatstringDisplay fiat code (default USD). Equity stays USD-denominated.
localestringLocale (default en).
NameTypeReqDescription
bodyParsed CoinRithm response body, or raw text when the response is not JSON.
httpStatusintegeryesHTTP status returned by CoinRithm, or 0 for network errors.
ledgerEventIdstring|nullPrivate AgentActionEvent id returned by /api/agent/*, when present.
ledgerStatusstring|nullLedger write status header returned by CoinRithm, when present.
okbooleanyesTrue when CoinRithm returned a successful 2xx response.

No examples provided.

get_positions ~270

List open + historical positions for a venue. venue='futures' returns mock futures positions (with unrealized PnL + liquidation distance on open ones); venue='pm' returns mock prediction-market positions (with unrealized mark on open ones). Response includes asOf — pass it back as updatedSince on the next call to poll only positions that changed (catches worker-fired SL/TP, liquidations, and settlements). Paper trading only — virtual funds (50,000 mUSD). Not financial advice. Paper fills run under the versioned paper_execution_v1 policy and apply a disclosed execution cost folded into realized PnL: spot/futures pay a taker fee (spot market orders also pay half-spread + slippage); PM fills at the ask with size-based slippage and a Polymarket-shaped taker fee, with entryProbability kept at the mid for calibration. See the executionModel in quote/trade results — a rehearsal cost, not an exchange fill guarantee.

NameTypeReqDescription
agentTraceobjectOptional private trace metadata stored in the caller's ledger.
updatedSincestringISO 8601 cursor: only positions whose row changed since this instant. Pass the previous response's asOf back here.
venuestringyesWhich venue's positions to list.
NameTypeReqDescription
bodyParsed CoinRithm response body, or raw text when the response is not JSON.
httpStatusintegeryesHTTP status returned by CoinRithm, or 0 for network errors.
ledgerEventIdstring|nullPrivate AgentActionEvent id returned by /api/agent/*, when present.
ledgerStatusstring|nullLedger write status header returned by CoinRithm, when present.
okbooleanyesTrue when CoinRithm returned a successful 2xx response.

No examples provided.

get_wallet ~204

Get raw cash balances: USDT available plus the three frozen partitions (frozen = spot orders, frozenPm = PM, frozenFutures = futures margin). Optionally include one coin asset. Paper trading only — virtual funds (50,000 mUSD). Not financial advice. Paper fills run under the versioned paper_execution_v1 policy and apply a disclosed execution cost folded into realized PnL: spot/futures pay a taker fee (spot market orders also pay half-spread + slippage); PM fills at the ask with size-based slippage and a Polymarket-shaped taker fee, with entryProbability kept at the mid for calibration. See the executionModel in quote/trade results — a rehearsal cost, not an exchange fill guarantee.

NameTypeReqDescription
agentTraceobjectOptional private trace metadata stored in the caller's ledger.
coinIdstringCoin UCID (e.g. "1" = BTC) to also return that asset.
NameTypeReqDescription
bodyParsed CoinRithm response body, or raw text when the response is not JSON.
httpStatusintegeryesHTTP status returned by CoinRithm, or 0 for network errors.
ledgerEventIdstring|nullPrivate AgentActionEvent id returned by /api/agent/*, when present.
ledgerStatusstring|nullLedger write status header returned by CoinRithm, when present.
okbooleanyesTrue when CoinRithm returned a successful 2xx response.

No examples provided.

list_open_orders ~260

List open (resting) spot orders. Omit coinId for ALL open orders across coins, or pass one to filter. Response includes asOf — pass it back as updatedSince on the next call to poll only rows that changed (delta polling). Paper trading only — virtual funds (50,000 mUSD). Not financial advice. Paper fills run under the versioned paper_execution_v1 policy and apply a disclosed execution cost folded into realized PnL: spot/futures pay a taker fee (spot market orders also pay half-spread + slippage); PM fills at the ask with size-based slippage and a Polymarket-shaped taker fee, with entryProbability kept at the mid for calibration. See the executionModel in quote/trade results — a rehearsal cost, not an exchange fill guarantee.

NameTypeReqDescription
agentTraceobjectOptional private trace metadata stored in the caller's ledger.
coinIdstringCoin UCID filter. Omit to list ALL open orders.
limitintegerMax rows (1-200, default 100).
updatedSincestringISO 8601 cursor: only orders whose row changed since this instant. Pass the previous response's asOf back here.
NameTypeReqDescription
bodyParsed CoinRithm response body, or raw text when the response is not JSON.
httpStatusintegeryesHTTP status returned by CoinRithm, or 0 for network errors.
ledgerEventIdstring|nullPrivate AgentActionEvent id returned by /api/agent/*, when present.
ledgerStatusstring|nullLedger write status header returned by CoinRithm, when present.
okbooleanyesTrue when CoinRithm returned a successful 2xx response.

No examples provided.

open_futures_position ~411

Open (or add to) a mock futures position. Requires the trade:futures scope. Enabled now (server-flag gated — returns 403 'not enabled' only if CoinRithm later disables it). idempotencyKey is REQUIRED and must be unique per intent. leverage 1-20, marginMusd >= 10. Optionally set stopLossPrice/takeProfitPrice atomically at open (side-aware corridor: long needs liq < SL < mark < TP; short inverted) — protecting every position is good practice. Quote first and CONFIRM with the user. Paper trading only — virtual funds (50,000 mUSD). Not financial advice. Paper fills run under the versioned paper_execution_v1 policy and apply a disclosed execution cost folded into realized PnL: spot/futures pay a taker fee (spot market orders also pay half-spread + slippage); PM fills at the ask with size-based slippage and a Polymarket-shaped taker fee, with entryProbability kept at the mid for calibration. See the executionModel in quote/trade results — a rehearsal cost, not an exchange fill guarantee.

NameTypeReqDescription
agentTraceobjectOptional private trace metadata stored in the caller's ledger.
coinIdstringyesCoin UCID to open futures for. Use resolve_symbol first.
idempotencyKeystringyesUnique per intent; reuse replays the original result.
leveragenumberyesLeverage multiplier (1-20x).
marginMusdnumberyesIsolated margin in mUSD (>= 10).
sidestringyesFutures direction: long benefits if price rises; short benefits if price falls.
stopLossPricenumberOptional resting stop-loss set atomically at open (USD trigger; fired by the per-minute worker).
takeProfitPricenumberOptional resting take-profit set atomically at open (USD trigger; fired by the per-minute worker).
NameTypeReqDescription
bodyParsed CoinRithm response body, or raw text when the response is not JSON.
httpStatusintegeryesHTTP status returned by CoinRithm, or 0 for network errors.
ledgerEventIdstring|nullPrivate AgentActionEvent id returned by /api/agent/*, when present.
ledgerStatusstring|nullLedger write status header returned by CoinRithm, when present.
okbooleanyesTrue when CoinRithm returned a successful 2xx response.

No examples provided.

open_pm_position ~498

Open a mock prediction-market position (binary outcomes only). Requires the trade:pm scope. Enabled now (server-flag gated — returns 403 'not enabled' only if CoinRithm later disables it). idempotencyKey is REQUIRED. stakeMusd >= 10. Pass side: 'no' to back the NO side (omitted = yes); a NO entry fills at 100 minus the outcome probability and pays out if the outcome resolves false. Quote first and CONFIRM with the user. Paper trading only — virtual funds (50,000 mUSD). Not financial advice. Paper fills run under the versioned paper_execution_v1 policy and apply a disclosed execution cost folded into realized PnL: spot/futures pay a taker fee (spot market orders also pay half-spread + slippage); PM fills at the ask with size-based slippage and a Polymarket-shaped taker fee, with entryProbability kept at the mid for calibration. See the executionModel in quote/trade results — a rehearsal cost, not an exchange fill guarantee.

NameTypeReqDescription
agentTraceobjectOptional private trace metadata stored in the caller's ledger.
forecastProbabilitynumberOPTIONAL. Report your OWN estimated probability (0-100, exclusive) that the chosen side wins, decided BEFORE you look at sizing/fill. It is stored SEPARATELY from the market price you pay and feeds y…
idempotencyKeystringyesUnique per PM-open intent; reuse replays the original result.
outcomeExternalMarketIdstringyesCase-sensitive outcome or market id returned by discovery.
provenanceobjectOptional self-reported provenance (WHAT RAN). No trust: the server stamps policy versions + providerVerified itself. Any block (even {}) makes the artifact schemaVersion 2.
sidestringWhich side of the binary outcome to back. NO pays out if it resolves false; fills at 100 minus the outcome probability. Omitted = yes.
slugstringyesPrediction-market event slug.
sourcestringyesPrediction-market source slug, e.g. kalshi or polymarket.
stakeMusdnumberyesmUSD stake (>= 10).
NameTypeReqDescription
bodyParsed CoinRithm response body, or raw text when the response is not JSON.
httpStatusintegeryesHTTP status returned by CoinRithm, or 0 for network errors.
ledgerEventIdstring|nullPrivate AgentActionEvent id returned by /api/agent/*, when present.
ledgerStatusstring|nullLedger write status header returned by CoinRithm, when present.
okbooleanyesTrue when CoinRithm returned a successful 2xx response.

No examples provided.

place_spot_order ~354

Place a paper spot order. coinId is a coin UCID, NOT a ticker. orderType market/limit/stop. limitPrice required for limit & stop; stopPrice required for stop. idempotencyKey is REQUIRED and unique per intent (reuse replays the original result — retry a timed-out call with the SAME key; it will never double-execute). Requires the trade:spot scope. CONFIRM with the user before calling. Paper trading only — virtual funds (50,000 mUSD). Not financial advice. Paper fills run under the versioned paper_execution_v1 policy and apply a disclosed execution cost folded into realized PnL: spot/futures pay a taker fee (spot market orders also pay half-spread + slippage); PM fills at the ask with size-based slippage and a Polymarket-shaped taker fee, with entryProbability kept at the mid for calibration. See the executionModel in quote/trade results — a rehearsal cost, not an exchange fill guarantee.

NameTypeReqDescription
agentTraceobjectOptional private trace metadata stored in the caller's ledger.
coinIdstringyesCoin UCID (e.g. "1" = BTC).
idempotencyKeystringyesUnique per intent; reuse replays the original result.
limitPricenumberUSD/coin — required for limit & stop.
orderTypestringyesOrder execution type: market, limit, or stop.
quantitynumberyesBase-coin amount (> 0).
sidestringyesSpot side: buy spends USDT; sell spends the base coin.
stopPricenumberUSD trigger — required for stop.
NameTypeReqDescription
bodyParsed CoinRithm response body, or raw text when the response is not JSON.
httpStatusintegeryesHTTP status returned by CoinRithm, or 0 for network errors.
ledgerEventIdstring|nullPrivate AgentActionEvent id returned by /api/agent/*, when present.
ledgerStatusstring|nullLedger write status header returned by CoinRithm, when present.
okbooleanyesTrue when CoinRithm returned a successful 2xx response.

No examples provided.

pm_data_calibration ~171

Free public per-venue forecast-accuracy scorecard: for each venue, calibrationError (Expected Calibration Error, 0-1, lower is better — the fair cross-venue headline), sampleSize, meanWinnerConfidence, and a 10-bucket reliability curve (predictedMean vs realizedRate per probability bucket) computed from that venue's OWN probability ~24h before resolution against the outcome that actually happened, over resolved markets with >=24h of pre-resolution history. Venues below minSample (currently 30 scored events) appear in `pending` instead of a curve — too few resolutions to publish a reliable number yet. Use this to answer 'which venue forecasts best' with evidence, not vibes; cite CoinRithm's methodology field when quoting a number. No API key required.

Input schema present but exposes no named parameters.

NameTypeReqDescription
bodyParsed CoinRithm response body, or raw text when the response is not JSON.
httpStatusintegeryesHTTP status returned by CoinRithm, or 0 for network errors.
ledgerEventIdstring|nullPrivate AgentActionEvent id returned by /api/agent/*, when present.
ledgerStatusstring|nullLedger write status header returned by CoinRithm, when present.
okbooleanyesTrue when CoinRithm returned a successful 2xx response.

No examples provided.

pm_data_canonical ~243

Free public canonical-event identity: CoinRithm's stable cross-venue identity for one real-world question, independent of any single venue's slug. Omit `key` to page the directory of active canonicals (uuid, slug, title, memberCount). Pass `key` (a canonical's uuid OR slug) for one canonical's full record: its venue members (each with orientation — same/inverted/unknown, NEVER price-inferred — plus confidence and provenance basis) and an append-only judgment lineage (created/member_added/member_removed/merged, newest first). A MERGED canonical still resolves (status='merged' + a mergedInto pointer) so a stable key never 404s. Use this to track one question across venues by a durable identity instead of re-matching venue slugs yourself. No API key required.

NameTypeReqDescription
cursorintegerList mode only: pagination cursor — pass the previous response's pagination.nextCursor.
keystringUUID or slug of one canonical event. Omit to list active canonicals.
limitintegerList mode only: max rows (1-200, default 50).
NameTypeReqDescription
bodyParsed CoinRithm response body, or raw text when the response is not JSON.
httpStatusintegeryesHTTP status returned by CoinRithm, or 0 for network errors.
ledgerEventIdstring|nullPrivate AgentActionEvent id returned by /api/agent/*, when present.
ledgerStatusstring|nullLedger write status header returned by CoinRithm, when present.
okbooleanyesTrue when CoinRithm returned a successful 2xx response.

No examples provided.

pm_data_disagreements ~514

Free public cross-venue disagreement clusters: prediction-market events CoinRithm has matched as the SAME real-world question across 2+ venues (approved cross-source matches), graph-clustered so one row covers every venue tracking that question. Each pairwise comparison carries per-shared-outcome eventAProbability/eventBProbability/deltaPoints (points, 0-100 scale) plus a summary (matchedOutcomeCount, overallDeltaPoints, maxSharedOutcomeDeltaPoints); maxOverallGap/maxOutcomeGap/maxConfidence are the cluster's headline numbers, and referenceProbability (when present) is CoinRithm's own liquidity-weighted median across matched venues. Orientation between matched markets is human/aggregator-reviewed — NEVER price-inferred — so every delta is orientation-proven disagreement, not noise. requirePriced (default true) drops any pair where a side is an unpriced/untraded placeholder or fails a quote-dead liveness check — the same quality floor CoinRithm's own /today disagreement page uses; pass false only for research/debug. This is the same methodology powering CoinRithm's public divergence rankings — cite CoinRithm when quoting a gap. Research/data only: for tradability of one specific outcome use pm_quote. No API key required.

NameTypeReqDescription
fiatstringFiat currency code for monetary figures (default usd).
limitintegerMax clusters (1-25, default 10).
maxSnapshotAgeMinutesnumberRequire both matched events' probability come from a price snapshot captured within this many minutes.
minDivergencenumberFloor (points, 0-100) on whichever metric the active sort ranks by.
offsetintegerPagination offset (default 0).
requirePricedbooleanDefault true: drops any pair where a side is an unpriced/untraded placeholder or fails a quote-dead liveness check. Set false only for research/debug.
sortstringRanking: confidence_desc (default) = strongest match first; divergence_desc = total cross-outcome gap; max_outcome_delta_desc = single largest shared-outcome gap (avoids multi-leg basket noise).
sourceKindstringPass 'market' to restrict both sides of every pair to real-money market venues (excludes forecast/play-money venues like Metaculus/Manifold).
statusstringPass 'open' to require BOTH matched events be currently open.
NameTypeReqDescription
bodyParsed CoinRithm response body, or raw text when the response is not JSON.
httpStatusintegeryesHTTP status returned by CoinRithm, or 0 for network errors.
ledgerEventIdstring|nullPrivate AgentActionEvent id returned by /api/agent/*, when present.
ledgerStatusstring|nullLedger write status header returned by CoinRithm, when present.
okbooleanyesTrue when CoinRithm returned a successful 2xx response.

No examples provided.

pm_data_event ~298

Free public detail for one prediction-market event by venue + slug: outcomes with probabilities, price snapshots, resolution evidence, crossSourceMatches (the SAME real-world question priced on other venues — read probability divergence directly from it), referenceProbability when present (CoinRithm's canonical cross-venue number: the liquidity-weighted median Yes probability across matched real-money venues, with venueCount and spreadPoints — quote all three together, venues disagree and the spread says by how much), recent whale trades on the event, related events, related news, and volumeHistory when present (daily volume points captured since 2026-07-02 — read the event's volume trend directly from it). The default summary bounds outcomes, related events, matches and tape for agent context windows while preserving counts and core evidence. Set detail=full only when the untouched provider-rich record is needed. This is the cross-venue research view; for tradability use pm_quote. No API key required.

NameTypeReqDescription
detailstringResponse detail: bounded summary (default) or untouched full record.
fiatstringFiat currency code for monetary figures (default usd).
slugstringyesEvent slug on that venue.
sourcestringyesVenue slug: polymarket, kalshi, rothera, limitless, smarkets, manifold, metaculus, predictit, futuur, myriad, forecastex, or gemini.
NameTypeReqDescription
bodyParsed CoinRithm response body, or raw text when the response is not JSON.
httpStatusintegeryesHTTP status returned by CoinRithm, or 0 for network errors.
ledgerEventIdstring|nullPrivate AgentActionEvent id returned by /api/agent/*, when present.
ledgerStatusstring|nullLedger write status header returned by CoinRithm, when present.
okbooleanyesTrue when CoinRithm returned a successful 2xx response.

No examples provided.

pm_data_events ~355

Free public search over prediction-market events across ALL 12 venues (Polymarket, Kalshi, Rothera, Limitless, Smarkets, Manifold, Metaculus, PredictIt, Futuur, Myriad, ForecastEx, Gemini) — broader than discover_pm_markets, which is scoped to the paper-tradeable venues. Returns titles, probabilities, volume/liquidity, status, and source per event, plus the five highest-probability outcomes and the full outcome count. Use pm_data_event for all outcomes and full evidence. Also returns referenceProbability when present (CoinRithm's canonical cross-venue number for open events matched across venues — probability, venueCount, spreadPoints, and outcomeName for multi-outcome leaders), quality (persisted truth-engine verdict: decisionEligible + warning/block reason codes — blocked markets stay visible but cannot drive paper opens or alerts), and crossPlatform (sibling venues pricing the same question). Research/data only: to trade, use discover_pm_markets + pm_quote instead. No API key required.

NameTypeReqDescription
fiatstringFiat currency code for monetary figures (default usd).
limitintegerMax rows (1-50, default 20).
offsetintegerPagination offset (default 0).
qstringOptional search text.
sortstringOptional sort key.
sourcestringOptional venue filter: polymarket, kalshi, rothera, limitless, smarkets, manifold, metaculus, predictit, futuur, myriad, forecastex, or gemini.
statusstringOptional status filter (e.g. open or closed).
NameTypeReqDescription
bodyParsed CoinRithm response body, or raw text when the response is not JSON.
httpStatusintegeryesHTTP status returned by CoinRithm, or 0 for network errors.
ledgerEventIdstring|nullPrivate AgentActionEvent id returned by /api/agent/*, when present.
ledgerStatusstring|nullLedger write status header returned by CoinRithm, when present.
okbooleanyesTrue when CoinRithm returned a successful 2xx response.

No examples provided.

pm_data_overview ~217

Free public cross-venue prediction-market statistics: total/open/closed market counts, total volume, 24h volume, and liquidity aggregated across all 12 venues (Polymarket, Kalshi, Rothera, Limitless, Smarkets, Manifold, Metaculus, PredictIt, Futuur, Myriad, ForecastEx, Gemini), plus market highlights in a compact discovery shape. Use pm_data_event for full event evidence. Freshness is SOURCE-AWARE — each venue ingests independently; per-venue health (freshness tier, lag, stale reason) is at /api/prediction-markets/sources/health. Volume is reported on each venue's own basis (see the methodology at https://coinrithm.com/en/prediction-markets/stats) and monetary totals cover real-money venues only — these are self-computed aggregates, so cite CoinRithm when quoting them. No API key required.

NameTypeReqDescription
fiatstringFiat currency code for monetary figures (default usd).
NameTypeReqDescription
bodyParsed CoinRithm response body, or raw text when the response is not JSON.
httpStatusintegeryesHTTP status returned by CoinRithm, or 0 for network errors.
ledgerEventIdstring|nullPrivate AgentActionEvent id returned by /api/agent/*, when present.
ledgerStatusstring|nullLedger write status header returned by CoinRithm, when present.
okbooleanyesTrue when CoinRithm returned a successful 2xx response.

No examples provided.

pm_data_sources ~104

Free public methodology and comparable coverage for every CoinRithm prediction-market venue: source kind, supported metrics, market counts, explicit 24h/cumulative volume bases, currency basis, comparability, and as-of timestamps. Use this before comparing venue totals so a completed-day figure is never described as rolling 24h and play-money points are never described as USD. No API key required.

NameTypeReqDescription
fiatstringFiat currency code for monetary figures (default usd).
NameTypeReqDescription
bodyParsed CoinRithm response body, or raw text when the response is not JSON.
httpStatusintegeryesHTTP status returned by CoinRithm, or 0 for network errors.
ledgerEventIdstring|nullPrivate AgentActionEvent id returned by /api/agent/*, when present.
ledgerStatusstring|nullLedger write status header returned by CoinRithm, when present.
okbooleanyesTrue when CoinRithm returned a successful 2xx response.

No examples provided.

pm_data_sources_health ~82

Free public per-venue ingest health across all CoinRithm sources: freshness tier, observed lag, stale/degraded reason, coverage counts, and current health timestamps. Check this before using a quote or claiming cross-venue coverage; a venue being in the catalogue does not by itself prove its hot prices meet the live freshness target. No API key required.

Input schema present but exposes no named parameters.

NameTypeReqDescription
bodyParsed CoinRithm response body, or raw text when the response is not JSON.
httpStatusintegeryesHTTP status returned by CoinRithm, or 0 for network errors.
ledgerEventIdstring|nullPrivate AgentActionEvent id returned by /api/agent/*, when present.
ledgerStatusstring|nullLedger write status header returned by CoinRithm, when present.
okbooleanyesTrue when CoinRithm returned a successful 2xx response.

No examples provided.

pm_data_volume_history ~145

Free public global daily prediction-market volume trend: one point per UTC calendar day (day-over-day delta of each event's cumulative volume, summed across REAL-MONEY venues only — play-money/forecast venues like Manifold and Metaculus are excluded), with a per-venue breakdown (bySource) each day. Captured forward since 2026-07-02, bounded to a rolling ~90-day window; a day or venue with no known value is a gap (null), never a zero bar — do not read a gap as zero activity. Use this to see whether cross-venue prediction-market activity is growing or shrinking over time. No API key required.

Input schema present but exposes no named parameters.

NameTypeReqDescription
bodyParsed CoinRithm response body, or raw text when the response is not JSON.
httpStatusintegeryesHTTP status returned by CoinRithm, or 0 for network errors.
ledgerEventIdstring|nullPrivate AgentActionEvent id returned by /api/agent/*, when present.
ledgerStatusstring|nullLedger write status header returned by CoinRithm, when present.
okbooleanyesTrue when CoinRithm returned a successful 2xx response.

No examples provided.

pm_data_whales ~105

Free public tape of the latest large prediction-market trades (roughly $1k+ notional) across venues, newest first: side, outcome, USD value, price, market question, and the event it printed on. Polymarket rows are wallet-attributed; Kalshi rows are anonymized exchange prints. A large print is information, not a recommendation. No API key required.

NameTypeReqDescription
limitintegerMax rows (1-50, default 10).
NameTypeReqDescription
bodyParsed CoinRithm response body, or raw text when the response is not JSON.
httpStatusintegeryesHTTP status returned by CoinRithm, or 0 for network errors.
ledgerEventIdstring|nullPrivate AgentActionEvent id returned by /api/agent/*, when present.
ledgerStatusstring|nullLedger write status header returned by CoinRithm, when present.
okbooleanyesTrue when CoinRithm returned a successful 2xx response.

No examples provided.

pm_quote ~395

Read-only PM quote for a binary outcome: entry probability, share estimate, max payout, eligibility, freshness, decisionSupport (market quality/liquidity/volume/spread tiers + flags), quality (the persisted truth-engine verdict), and openBlocked/openBlockReasons — a preview of the open-time quality gate: when openBlocked is true, open_pm_position would be rejected 422 with those stored reason codes (quality_state_missing, quality_state_stale, quote_dead, stale_freshness, ...). Never mutates state. stakeMusd must be > 0 (min to open is 10). Pass side: 'no' to quote backing the NO side (omitted = yes); a NO entry fills at 100 minus the outcome probability and pays out if the outcome resolves false. Paper trading only — virtual funds (50,000 mUSD). Not financial advice. Paper fills run under the versioned paper_execution_v1 policy and apply a disclosed execution cost folded into realized PnL: spot/futures pay a taker fee (spot market orders also pay half-spread + slippage); PM fills at the ask with size-based slippage and a Polymarket-shaped taker fee, with entryProbability kept at the mid for calibration. See the executionModel in quote/trade results — a rehearsal cost, not an exchange fill guarantee.

NameTypeReqDescription
agentTraceobjectOptional private trace metadata stored in the caller's ledger.
outcomeExternalMarketIdstringyesCase-sensitive outcome / market id.
sidestringWhich side of the binary outcome to back. NO pays out if it resolves false; fills at 100 minus the outcome probability. Omitted = yes.
slugstringyesEvent slug.
sourcestringyesSource slug (e.g. kalshi, polymarket).
stakeMusdnumberyesmUSD to stake (> 0).
NameTypeReqDescription
bodyParsed CoinRithm response body, or raw text when the response is not JSON.
httpStatusintegeryesHTTP status returned by CoinRithm, or 0 for network errors.
ledgerEventIdstring|nullPrivate AgentActionEvent id returned by /api/agent/*, when present.
ledgerStatusstring|nullLedger write status header returned by CoinRithm, when present.
okbooleanyesTrue when CoinRithm returned a successful 2xx response.

No examples provided.

report_pm_opportunity ~483

Save a durable SELF-REPORT of a prediction-market evaluation for a decision that did not open a position. This WRITES an evidence record but never moves paper funds; authorization requires the read scope. It does not independently verify your evaluation. Choose abstained, forecast_only (requires your own forecastProbability, 1-99), or quote_expired. Report once per decision cycle; cohort.universeSize records its breadth. Supply a non-empty decisionId and reuse it with the same API key on retries: the first stored record wins. agentTrace.decisionId is a fallback; omitting both creates separate records. Success returns body.decisionUuid and, on replay, body.idempotentReplay=true. Check ok/httpStatus before treating delivery as confirmed; a network error does not prove rejection. Use open_pm_position to place a paper trade.

NameTypeReqDescription
agentTraceobjectOptional private trace metadata stored in the caller's ledger.
cohortobjectOpportunity-cohort breadth (frozen into the artifact).
decisionIdstringNon-empty id for this decision, unique within your API key. Reuse for retries. Falls back to agentTrace.decisionId; omitting both creates a new record on each call.
forecastProbabilitynumberYour OWN forecast probability (1-99). REQUIRED for forecast_only; optional for other kinds. Never echo the market price.
kindstringyesabstained = evaluated but did not bet; forecast_only = formed your own probability without trading (forecastProbability required); quote_expired = a validated open the server rejected at act time.
marketProbabilitynumberThe market price (0-100) you observed at the time.
outcomeExternalMarketIdstringOptional case-sensitive outcome/market id of the subject.
provenanceobjectOptional self-reported provenance (WHAT RAN). No trust: the server stamps policy versions + providerVerified itself. Any block (even {}) makes the artifact schemaVersion 2.
reasonCodestringShort structured reason (e.g. 'no_edge', 'stale_data').
runIdstringYour own run id for grouping.
slugstringOptional subject event slug.
sourcestringOptional subject market source slug (e.g. kalshi).
NameTypeReqDescription
bodyParsed CoinRithm response body, or raw text when the response is not JSON.
httpStatusintegeryesHTTP status returned by CoinRithm, or 0 for network errors.
ledgerEventIdstring|nullPrivate AgentActionEvent id returned by /api/agent/*, when present.
ledgerStatusstring|nullLedger write status header returned by CoinRithm, when present.
okbooleanyesTrue when CoinRithm returned a successful 2xx response.

No examples provided.

resolve_symbol ~234

Resolve a human symbol / slug / name (e.g. 'BTC', 'ethereum') to a CoinRithm coinId (UCID) plus disambiguating alternatives, each with its CoinGecko category tags. Use this FIRST to get the coinId that the wallet / quote / order tools need — don't guess UCIDs (symbols are not unique). Paper trading only — virtual funds (50,000 mUSD). Not financial advice. Paper fills run under the versioned paper_execution_v1 policy and apply a disclosed execution cost folded into realized PnL: spot/futures pay a taker fee (spot market orders also pay half-spread + slippage); PM fills at the ask with size-based slippage and a Polymarket-shaped taker fee, with entryProbability kept at the mid for calibration. See the executionModel in quote/trade results — a rehearsal cost, not an exchange fill guarantee.

NameTypeReqDescription
agentTraceobjectOptional private trace metadata stored in the caller's ledger.
qstringyesSymbol, slug, or name (e.g. BTC, bitcoin, Ethereum).
NameTypeReqDescription
bodyParsed CoinRithm response body, or raw text when the response is not JSON.
httpStatusintegeryesHTTP status returned by CoinRithm, or 0 for network errors.
ledgerEventIdstring|nullPrivate AgentActionEvent id returned by /api/agent/*, when present.
ledgerStatusstring|nullLedger write status header returned by CoinRithm, when present.
okbooleanyesTrue when CoinRithm returned a successful 2xx response.

No examples provided.

set_futures_sl_tp ~292

Set or clear resting stop-loss / take-profit triggers on an OPEN mock futures position. A positive number SETS that trigger (side-aware: long needs liq < SL < mark < TP; short inverted), null CLEARS it, an omitted field is unchanged. Fired by the per-minute worker off the live mark (liquidation always takes precedence); a fire closes the FULL position at mark with realized PnL. Discover fills between polls via my_trades with updatedSince. Requires the trade:futures scope. Paper trading only — virtual funds (50,000 mUSD). Not financial advice. Paper fills run under the versioned paper_execution_v1 policy and apply a disclosed execution cost folded into realized PnL: spot/futures pay a taker fee (spot market orders also pay half-spread + slippage); PM fills at the ask with size-based slippage and a Polymarket-shaped taker fee, with entryProbability kept at the mid for calibration. See the executionModel in quote/trade results — a rehearsal cost, not an exchange fill guarantee.

NameTypeReqDescription
agentTraceobjectOptional private trace metadata stored in the caller's ledger.
positionIdintegeryesOpen futures position id.
stopLossPricePositive number sets; null clears; omit = unchanged.
takeProfitPricePositive number sets; null clears; omit = unchanged.
NameTypeReqDescription
bodyParsed CoinRithm response body, or raw text when the response is not JSON.
httpStatusintegeryesHTTP status returned by CoinRithm, or 0 for network errors.
ledgerEventIdstring|nullPrivate AgentActionEvent id returned by /api/agent/*, when present.
ledgerStatusstring|nullLedger write status header returned by CoinRithm, when present.
okbooleanyesTrue when CoinRithm returned a successful 2xx response.

No examples provided.

spot_quote ~274

Read-only spot MARKET quote: live execution price, estimated cost (price x quantity), your available balance for the side, and whether the fill is eligible (with blockReasons). Never mutates state — quote before place_spot_order instead of buying/selling blind. Price age is informational only (a market order fills regardless). coinId is a UCID, NOT a ticker — use resolve_symbol first. Paper trading only — virtual funds (50,000 mUSD). Not financial advice. Paper fills run under the versioned paper_execution_v1 policy and apply a disclosed execution cost folded into realized PnL: spot/futures pay a taker fee (spot market orders also pay half-spread + slippage); PM fills at the ask with size-based slippage and a Polymarket-shaped taker fee, with entryProbability kept at the mid for calibration. See the executionModel in quote/trade results — a rehearsal cost, not an exchange fill guarantee.

NameTypeReqDescription
agentTraceobjectOptional private trace metadata stored in the caller's ledger.
coinIdstringyesCoin UCID (e.g. '1' = BTC).
quantitynumberyesAmount of the base coin (> 0).
sidestringyesSpot side: buy increases the coin balance; sell reduces it.
NameTypeReqDescription
bodyParsed CoinRithm response body, or raw text when the response is not JSON.
httpStatusintegeryesHTTP status returned by CoinRithm, or 0 for network errors.
ledgerEventIdstring|nullPrivate AgentActionEvent id returned by /api/agent/*, when present.
ledgerStatusstring|nullLedger write status header returned by CoinRithm, when present.
okbooleanyesTrue when CoinRithm returned a successful 2xx response.

No examples provided.

whoami ~131

Check the caller's CoinRithm API-key identity and permissions before using account or trading tools. Returns userId, keyId, scopes, usage, and nullable agentName/agentModel labels; agentModel is self-reported, not verified runtime identity. Any valid configured or per-request key works; no additional scope is required. Missing or invalid keys return 401. Omit agentTrace for a simple check. Does not change permissions or paper balances; requests update usage/last-used metadata and may be privately logged.

NameTypeReqDescription
agentTraceobjectOptional private trace metadata stored in the caller's ledger.
NameTypeReqDescription
bodyParsed CoinRithm response body, or raw text when the response is not JSON.
httpStatusintegeryesHTTP status returned by CoinRithm, or 0 for network errors.
ledgerEventIdstring|nullPrivate AgentActionEvent id returned by /api/agent/*, when present.
ledgerStatusstring|nullLedger write status header returned by CoinRithm, when present.
okbooleanyesTrue when CoinRithm returned a successful 2xx response.

No examples provided.

Common questions

What is the CoinRithm Agent Trading MCP server?

CoinRithm Agent Trading is an MCP server listed in the public MCP registry as io.github.CoinRithm/mcp-trading. Keyless prediction-market data across 12 venues plus paper-trading of crypto spot, futures, and PM. This page covers its hosted endpoint (https://mcp.coinrithm.com/mcp).

Is the CoinRithm Agent Trading MCP server safe to use?

CoinRithm Agent Trading scores 77 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

What tools does the CoinRithm Agent Trading MCP server expose?

CoinRithm Agent Trading exposes 38 tools: whoami, get_portfolio, get_wallet, list_open_orders, get_positions, and 33 more. Their descriptions and schemas cost roughly 10,262 tokens of context every time the server is loaded.

Does the CoinRithm Agent Trading MCP server require authentication?

No. We connected to CoinRithm Agent Trading without credentials and it answered, so anything it exposes is reachable by anyone who knows the address.

Is the CoinRithm Agent Trading MCP server still maintained?

CoinRithm Agent Trading is still listed as active in the MCP registry. We last reached this channel on 20 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.