
Eclipse Book MCP
Market data + venue access layer — not an exchange: one book, one fee truth, one ledger of record.
status: in-developmentclass: mcpMarkets / Exchange & Prediction-Market Infrastructure
Vendor: Cyan Eclipse Technologies
What it does
- Descriptor: market data + venue access layer — not an exchange. One canonical Instrument / Book / Quote / Order / Position / Resolution model across exchanges and prediction markets; venue adapters translate and never improvise
- Resolution criteria stored verbatim and hash-pinned: a venue criteria edit is a CRITERIA_CHANGED event, and positions keep the criteria as of entry
- Fee truth: quotes carry all-in buy/sell cost for a stated size from versioned, provenance-stamped fee schedules; a stale or missing schedule degrades all-in fields to FEE_UNVERIFIED rather than quoting a wrong number
- Resolution lifecycle REPORTED -> VERIFIED only against the criteria's own named source; DISPUTED is first-class and blocks verification until cleared
- The probability law enforced in code: no output ever carries a probability field — a runtime guard refuses probability-shaped keys in any carrier; outputs carry price + liquidity flag + depth + criteria reference; unmapped native statuses surface as UNMAPPED with the native string preserved
- M0 is data only: no accounts, no keys, no order submission at any tier; order_draft is an unsubmitted record whose mandate pre-evaluation is honestly NOT_EVALUATED
Tools
instrument_ingest · instrument_get · instrument_search · book_ingest · quote_get · fee_schedule_register · fee_schedule_get · position_open · position_list · position_get · resolution_report · resolution_verify · resolution_get · order_draft · order_get · venue_status · receipt_list
Platforms
- MCP over stdio (HTTP transport on roadmap)
Certification
Bench verdict: CERTIFIED(local)
Certified scope: CERTIFIED(local) — Eclipse Bazaar Test Bench 2026-10-25, 16 pass, 1 na of 17 checks (U1 auth: stdio process boundary). Run by W-003 (Verity), suites/book.py. Non-failing bench observation: the probability-field guard runs post-commit (a poisoned instrument persists in state; every read of it fails closed) — pre-commit move queued for M1 hardening.
Not tested:
- Live venue reads of any kind — M0 contains no network code path; adapters run against fixtures shaped like the real public API responses behind a transport seam. Live public-read verification is a later M0-exit step.
- Order placement, account reads, and the Wallet mandate gate — M2/M1 scope, owner-gated (spec 18, decision D3). M0 order_draft records an unsubmitted DRAFT with mandate_pre_eval NOT_EVALUATED; no submission path exists.
- Fee schedules as live data — shipped schedules are fixture-shaped records with provenance labels saying so; the live fetch + account-specific tier provenance lands with the adapters' live step.
- Kalshi / Polymarket US / Kraken / Binance.US / Alpaca chapters — specced (suite spec 10-12), not built in M0.
Bench scorecard (evidence): https://eclipsebazaar.com/cards/eclipse-book-mcp-2026-10-25.json
Pricing
Free local v0.1; family pricing TBD per spec
Install / verify
docker run -i ghcr.io/cyan-eclipse-technologies-llc/eclipse-book-mcp:latest
Verify any MCP server in your client configs against this catalog with bazaar check (Eclipse Bazaar MCP / CLI — see llms.txt).