Gives Claude cryptographically signed receipts confirming whether 28 global exchanges are currently open for trading. You get five MCP tools that query market state with Ed25519 signatures on every response, so autonomous agents can verify authenticity without trusting the operator. It's fail-closed by design: if the state is unknown, it returns CLOSED. The underlying service runs as a Cloudflare Worker across 300+ edge locations and handles DST transitions, lunch breaks, half-days, and holidays through 2027 for everything from XNYS and XNAS to XHKG and XKRX. Reach for this when you're building trading agents that need to gate pre-trade decisions on verified exchange status rather than guessing or timeout-failing on closed markets.
Public tool metadata for what this MCP can expose to an agent.
get_market_statusReturns Ed25519-signed market-state receipt for pre-trade verification and pre-execution gating across 28 global exchanges. Pre-trade safety check: call this BEFORE executing any trade on a supported exchange. Model-agnostic: works identically regardless of which AI model cons...1 paramsReturns Ed25519-signed market-state receipt for pre-trade verification and pre-execution gating across 28 global exchanges. Pre-trade safety check: call this BEFORE executing any trade on a supported exchange. Model-agnostic: works identically regardless of which AI model cons...
micstringXNYS · XNAS · XLON · XJPX · XPAR · XHKGget_market_scheduleReturns holiday-aware trading session schedule with next open/close UTC timestamps for any of 28 exchanges. Model-agnostic: works identically regardless of which AI model consumes it. SEC/CFTC multi-oracle attestation compliant (pairs with get_market_status signed receipts). W...1 paramsReturns holiday-aware trading session schedule with next open/close UTC timestamps for any of 28 exchanges. Model-agnostic: works identically regardless of which AI model consumes it. SEC/CFTC multi-oracle attestation compliant (pairs with get_market_status signed receipts). W...
micstringXNYS · XNAS · XLON · XJPX · XPAR · XHKGlist_exchangesReturns directory of all 28 exchanges supported by Headless Oracle: MIC codes, exchange names, IANA timezones, market hours metadata, and mic_type (iso|convention). Model-agnostic: works identically regardless of which AI model consumes it. SEC/CFTC multi-oracle attestation co...Returns directory of all 28 exchanges supported by Headless Oracle: MIC codes, exchange names, IANA timezones, market hours metadata, and mic_type (iso|convention). Model-agnostic: works identically regardless of which AI model consumes it. SEC/CFTC multi-oracle attestation co...
No parameter schema in public metadata yet.
verify_receiptVerifies the Ed25519 cryptographic signature on a Headless Oracle Signed Market Attestation receipt — confirms it is a genuine pre-trade verification attestation and has not been tampered with. Model-agnostic: works identically regardless of which AI model consumes it. SEC/CFT...1 paramsVerifies the Ed25519 cryptographic signature on a Headless Oracle Signed Market Attestation receipt — confirms it is a genuine pre-trade verification attestation and has not been tampered with. Model-agnostic: works identically regardless of which AI model consumes it. SEC/CFT...
receiptobjectget_payment_optionsReturns available payment and authentication options for accessing live market data. Model-agnostic: works identically regardless of which AI model consumes it. WHEN TO USE: when you need to understand how to authenticate or pay before making a request that requires a key or p...Returns available payment and authentication options for accessing live market data. Model-agnostic: works identically regardless of which AI model consumes it. WHEN TO USE: when you need to understand how to authenticate or pay before making a request that requires a key or p...
No parameter schema in public metadata yet.
Ed25519-signed market-state attestations for 28 global exchanges.
Autonomous trading agents need to know if an exchange is open before executing trades. Headless Oracle answers that question with a cryptographically signed receipt that any agent can verify independently — no trust in the operator required. UNKNOWN states are always treated as CLOSED (fail-closed).
# MCP (Claude Desktop, Cursor, any MCP client)
npx headless-oracle-mcp
# REST API — demo receipt (no auth required)
curl https://headlessoracle.com/v5/demo?mic=XNYS
# Instant sandbox key (200 calls, 7 days, no signup)
curl https://headlessoracle.com/v5/sandbox
Single TypeScript Cloudflare Worker (~14,000 lines). Ed25519 signing via @noble/ed25519. Three KV namespaces (overrides, API keys, telemetry). Two Durable Objects (webhooks, SSE streams). Deployed to 300+ edge locations globally.
4-tier fail-closed: KV override check -> schedule engine -> UNKNOWN fallback -> unsigned critical failure.
See docs/architecture/overview.md for the full architecture.
5 MCP tools and 25+ REST endpoints. Full references:
23 traditional markets (XNYS, XNAS, XLON, XJPX, XPAR, XHKG, XSES, XASX, XBOM, XNSE, XSHG, XSHE, XKRX, XJSE, XBSP, XSWX, XMIL, XIST, XSAU, XDFM, XNZE, XHEL, XSTO) plus 5 extended (XCBT, XNYM, XCBO, XCOI, XBIN). DST handled automatically via IANA timezone names. Lunch breaks, half-days, and holidays for 2026-2027.
npm test # 725+ unit/integration tests
npm run test:smoke # 11 live production smoke tests
Ed25519 signatures on every response. 60-second receipt TTL. Fail-closed architecture (UNKNOWN = CLOSED). Security headers on all responses (HSTS, CSP, X-Content-Type-Options, X-Frame-Options).
See SECURITY.md for the responsible disclosure policy.
Full documentation organized by audience:
See docs/README.md for the full index.
MIT — see LICENSE
therealtimex/browser-use
jae-jae/fetcher-mcp
merajmehrabi/puppeteer-mcp-server
com.thenextgennexus/playwright-mcp-server
saik0s/mcp-browser-use