Arena

Changelog

Changes to the arena command line, the MCP server and tools, arena-core and the HTTP API, newest first.

Install and reference: the docs. Service health: status.

    • CLI 0.3.0, MCP server and tools 0.3.0, core 0.2.0: instrument and game lookups that work signed out (arena instrument, arena game, arena games; get_instrument, get_game, list_games); instrument ids accepted wherever a quote or a trade takes a ticker; arena chart and screener (get_price_history, screen_markets); arena stats and get_my_stats; an estimated venue fee on quotes, not charged on paper; seasons documented in America/New_York.
    • HTTP API: GET /leaderboard, /traders/{traderId} and /traders/{traderId}/picks ship (scope records:read, Arena-owned data only). New error code 404 trader_not_found. Successful records reads are Cache-Control: private, max-age=30.
    • Docs: new pages /docs/execution (how Arena fills, grades and ranks) and /docs/instruments (the universal ticker), and Add to Cursor and Add to VS Code buttons on /docs/mcp.
    • CLI 0.2.1, MCP server 0.2.0 and MCP tools 0.2.0 (not published separately; shipped in 0.3.0) and core 0.1.2 (shipped in core 0.2.0): arena resolve and the MCP tool resolve_market turn a bet in words, such as "chiefs ml" or "kc -3.5", into an Arena instrument id, the ticker and the side to buy. NFL moneylines, spreads and totals only for now. Both work signed out.
    • HTTP API: key management moved from /keys to /api_keys, Kalshi’s path. GET /status (no auth) and GET /openapi.json added. Unknown /api/v1 paths now answer the JSON error envelope with 404 route_not_found instead of an HTML page.
    • HTTP API: timestamps on key records are RFC 3339 UTC at second precision (…Z), as the conventions say.
    • Docs: restructured: a Quickstart first (install the CLI, a prompt for your coding agent, the MCP server), then the CLI, the AXI contract, API basics, an HTTP reference with one block per endpoint, and this changelog.
    • CLI 0.2.0: guest sign-in removed. arena login is Google or Apple only.
    • CLI and MCP: every request identifies its client (x-arena-client: cli/0.2.0 from the CLI, mcp/<version> from the MCP server).
    • Membership renamed Arena Basic; exit 5 says so.
    • CLI 0.2.0: limit orders. arena buy and arena sell take --limit, --tif (gtc, ioc, fok) and --expires; arena orders lists your orders and arena cancel withdraws a resting one.
    • MCP server and tools 0.2.0 (not published separately; shipped in 0.3.0): place_trade and sell_trade take limit_price_cents, time_in_force and expires_at; new tools get_orders and cancel_order.
    • core 0.1.1: the order functions, and getBalance reports the points held by resting orders.
    • CLI 0.2.0: money in every payload is paper dollars, named dollars / *Dollars; arena leaderboard and arena trader work signed out.
    • MCP server 0.2.0 and MCP tools 0.2.0 (not published separately; shipped in 0.3.0): the same paper-dollar naming, and the records tools work signed out.
    • core 0.1.1: public reads fall back to the publishable key when there is no session.
    • HTTP API: key-management refusals (guest session, key limit, reserved scope) answer 403/409 with the error envelope instead of 500.
    • HTTP API: API keys (POST, GET, DELETE /api_keys) and GET /me ship. Keys are read-only, shown once, stored hashed.
    • CLI 0.1.0 and the MCP server 0.1.0 published; this page goes live.