rivomarkets

Ask your AI to find a strategy.

Connect Rivo to Claude or ChatGPT and ask in plain English. It tests hundreds of rules against every big trade on Polymarket and Kalshi, checks which ones held up on data they were never tuned on, and tells you the answer. A minute to set up, no code required.

Works with Claude, ChatGPT, Cursor and anything else that uses MCP.

What a session looks like

You type one sentence. The agent does the rest.

claude rivo mcp

> Find me a rule that beat the market on longshots.

describe_universe({})

57,412 trades · 90 days · 53,208 settled · 5 categories · 2 platforms

sweep({ field: "priceMax", values: [0.10, 0.15, 0.20, 0.30] })

0.10: -44% 0.15: +45% 0.20: +60% 0.30: +28%

backtest({ criteria: { priceMax: 0.2, minAmountUsd: 10000 }, holdout: true })

in-sample +58% · out-of-sample +58% · holds: true

save_strategy({ name: "Longshot Hunters", backfill: true })

saved · 449 trades claimed · daily digest on

Longshots under 20¢ with over $10K behind them returned +58% across 449 settled trades, and held on data they were never tuned on. Saved as "Longshot Hunters". New matches will appear in the daily digest.

Real numbers from a real run. Paper results at $100 a trade.

Connect in a minute

Create a key in Settings → Developer, then add the server to your MCP client. Nothing to install.

mcp config
{
  "mcpServers": {
    "rivo": {
      "url": "https://api.rivo.markets/mcp",
      "headers": { "Authorization": "Bearer rivo_live_..." }
    }
  }
}

Or call the REST API directly:

curl -X POST https://api.rivo.markets/v1/backtest \
  -H "Authorization: Bearer rivo_live_..." \
  -H "Content-Type: application/json" \
  -d '{
    "criteria": {
      "priceMax": 0.2,
      "minAmountUsd": 10000,
      "eventTypes": [
        "open",
        "add",
        "flip"
      ]
    },
    "stake": 100
  }'
response
{
  "success": true,
  "data": {
    "matched": 489,
    "settled": 449,
    "wins": 105,
    "losses": 344,
    "open": 40,
    "winRate": 0.234,
    "stakeUsd": 100,
    "stakedUsd": 44900,
    "pnlUsd": 25910,
    "returnPct": 57.7,
    "window": { "sinceDays": 90, "stake": 100 }
  }
}

Full setup per client, authentication and limits live in the documentation.

Frequently asked questions

What do I need to get started?+

A Rivo subscription and an API key, which you create in Settings under Developer. The key is shown once and stored only as a hash.

Is the MCP server local or remote?+

Remote. There is nothing to install: point your MCP client at the endpoint and pass your key as a bearer token. The server runs alongside the main API.

How is the return calculated?+

The way prediction market contracts settle. A winning contract pays 1 and a losing one pays 0, so a $100 stake at 20 cents returns $400 profit on a win and loses $100 on a loss. Stake defaults to a flat $100 per trade, which keeps two rules comparable rather than dominated by whichever caught the largest position.

Are the results real money results?+

No. They are paper results assuming a fill at the price the observed trade printed at, with no fees or slippage. Not investment advice.

The full reference is a page away.

Every endpoint with parameters, samples in three languages, and the exact response shapes. Built the way you would expect an API to be documented.