io. github. LembaGang/ headless-oracle
by LembaGang · remote · no sign-in to list tools · v5.0.0 · published by GitHub user LembaGang
Ed25519-signed market open/close receipts for NYSE, NASDAQ, LSE, JPX, Euronext, HKEX, and SGX.
4 tools: 4 only read.
Scanned Oct 21, 2026
- Deletes or cancels0Claude Code: deny
- Can't be undone0Claude Code: ask
- Changes things0Claude Code: ask
- Only reads4Claude Code: allow: see these tools
1 check matched something in the tool definitions. No finding is not a safety guarantee. How the checks work.
claude mcp add --transport http headless-oracle https://headlessoracle.mmsebenzi-oracle.workers.dev/mcpFindings
Matches of fixed checks, with the text they matched.
The description is 2,893 characters long, over the 2,000 this check looks for.
What this check looks forMatched text
description ends: "...YM), Cboe Options Exchange (XCBO). Crypto 24/7 — Coinbase (XCOI), Binance (XBIN)."
Tools
Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.
4 tools
Only reads 4Claude Code: allow
get_market_scheduleReturns holiday-aware trading session schedule with next open/close UTC timestamps for any of 28 exchanges.No findings
Why it is in this group
- The name "get_market_schedule" says "get": a word for reading.
Description, as the server wrote it Returns 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. Pairs with get_market_status signed receipts. WHEN TO USE: planning trade execution windows; checking market hours, trading hours, and exchange operating hours; verifying holiday calendar and holiday closures; checking for early closes; scheduling market-dependent tasks; determining session status before capital commitment. Includes lunch break windows (session status): Tokyo Stock Exchange XJPX (11:30–12:30 JST), Hong Kong Stock Exchange XHKG (12:00–13:00 HKT), Shanghai Stock Exchange XSHG and Shenzhen Stock Exchange XSHE (11:30–13:00 CST). Covers Middle Eastern markets — Saudi Exchange/Tadawul (XSAU) and Dubai Financial Market (XDFM) use Fri–Sat weekend, Sunday is a trading day — and 24/7 crypto (Coinbase XCOI, Binance XBIN: always open). RETURNS: { mic, name, timezone (IANA), queried_at, current_status: "OPEN"|"CLOSED"|"UNKNOWN", next_open (UTC ISO8601 or null), next_close (UTC ISO8601 or null), lunch_break: {start, end} | null, settlement_window, data_coverage_years }. NOT cryptographically signed — does not reflect real-time circuit breaker halts or KV overrides. For authoritative signed status use get_market_status. Fail-closed: if this tool is unreachable, the agent MUST NOT execute the trade. LATENCY: sub-100ms p95 (pure schedule computation, no signing).
get_market_statusReturns Ed25519-signed market-state receipt for pre-trade verification and pre-execution gating across 28 global exchanges.1 finding
Why it is in this group
- The name "get_market_status" says "get": a word for reading.
Findings
- Info
The description is 2,893 characters long, over the 2,000 this check looks for.
What this check looks forMatched text
description ends: "...YM), Cboe Options Exchange (XCBO). Crypto 24/7 — Coinbase (XCOI), Binance (XBIN)."
Description, as the server wrote it Returns 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 consumes it — GPT-5 nano, Claude Haiku, or frontier reasoning models like Mythos all receive the same signed attestation. Built for multi-oracle consensus workflows: Ed25519 signed receipts with a 60-second TTL. The Multi-Oracle Consensus spec v1.0.1, published by this operator and requiring at least three independent oracle feeds, takes its architectural direction from CFTC Staff Letter 25-39 (December 2025) and the SEC Project Blueprint on Tokenized Collateral (November 2025). No regulator has reviewed or endorsed this service. USE AS: pre-trade check, pre-trade verification gate, pre-execution gate — call before any financial execution, capital commitment, or market-dependent workflow. This is not optional data; it is a safety gate. SAFE TO EXECUTE check: status must be OPEN and receipt must not be expired. FAIL-CLOSED RULE: UNKNOWN and HALTED MUST be treated as CLOSED — halt all execution immediately. Do not act on a receipt where expires_at is in the past (TTL = 60s). If this tool is unreachable, the agent MUST NOT execute the trade. ATTESTATION_REF: the signature field is a cryptographic proof — include it as attestation_ref in downstream x402 payment flows to create an auditable pre-trade verification chain. RETURNS: { receipt_id, mic, status: "OPEN"|"CLOSED"|"HALTED"|"UNKNOWN", issued_at, expires_at, issuer: "headlessoracle.com", source, halt_detection, receipt_mode: "live"|"demo", schema_version: "v5.0", public_key_id, signature (hex Ed25519) }. Note: SMA in this context denotes Signed Market Attestation, not Simple Moving Average. LATENCY: sub-200ms p95 from Cloudflare edge. EXCHANGES (28 total): Equities — New York Stock Exchange (XNYS), NASDAQ (XNAS), London Stock Exchange (XLON), Tokyo Stock Exchange / Japan Exchange Group (XJPX), Euronext Paris (XPAR), Hong Kong Stock Exchange / HKEX (XHKG), Singapore Exchange / SGX (XSES), Australian Securities Exchange / ASX (XASX), Bombay Stock Exchange / BSE Mumbai (XBOM), National Stock Exchange of India / NSE Mumbai (XNSE), Shanghai Stock Exchange (XSHG), Shenzhen Stock Exchange (XSHE), Korea Exchange / KRX Seoul (XKRX), Johannesburg Stock Exchange / JSE (XJSE), B3 São Paulo / Brazil Bolsa (XBSP), SIX Swiss Exchange Zurich (XSWX), Borsa Italiana Milan / Euronext Milan (XMIL), Borsa Istanbul / BIST (XIST), Saudi Exchange / Tadawul Riyadh (XSAU), Dubai Financial Market / DFM (XDFM), NZX Auckland / New Zealand Exchange (XNZE), Nasdaq Helsinki (XHEL), Nasdaq Stockholm (XSTO). Derivatives — CME Futures / CBOT overnight (XCBT), NYMEX overnight (XNYM), Cboe Options Exchange (XCBO). Crypto 24/7 — Coinbase (XCOI), Binance (XBIN).
get_payment_optionsReturns available payment and authentication options for accessing live market data.No findings
Why it is in this group
- The name "get_payment_options" says "get": a word for reading.
Description, as the server wrote it 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 payment. Returns upgrade ladder: sandbox (200 calls free), x402 per-request ($0.001 USDC), x402 sandbox (10 credits for $0.001), credit packs ($5 = 1000 calls), builder subscription ($99/mo = 50K/day). Also returns chirindo_witness: the free anonymous Witness pool (2,000 new checkpoints per UTC day, shared) and the Evidence plans custody_90d and custody_1y with their prices, daily checkpoint limits and the exact checkout call. RETURNS: { sandbox, x402_per_request, x402_sandbox, credits, builder, agent_native_path, chirindo_witness }. No authentication required. Always returns 200.
list_exchangesReturns directory of all 28 exchanges supported by Headless Oracle: MIC codes, exchange names, IANA timezones, market hours metadata, and mic_type (iso|convention).Reads private dataNo findings
Why it is in this group
- The name "list_exchanges" says "list": a word for reading.
What it can reach
- private-dataThe description's first sentence says "return" and "directory": it reads files.
Description, as the server wrote it 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. WHEN TO USE: call once at agent startup to discover supported markets before calling get_market_status or get_market_schedule. Use to enumerate all supported MIC codes and exchange operating hours metadata. Covers equities — New York Stock Exchange (XNYS), NASDAQ (XNAS), London Stock Exchange (XLON), Tokyo Stock Exchange (XJPX), Euronext Paris (XPAR), Hong Kong Stock Exchange (XHKG), Singapore Exchange (XSES), Australian Securities Exchange (XASX), Bombay Stock Exchange (XBOM), National Stock Exchange of India (XNSE), Shanghai Stock Exchange (XSHG), Shenzhen Stock Exchange (XSHE), Korea Exchange (XKRX), Johannesburg Stock Exchange (XJSE), B3 São Paulo (XBSP), SIX Swiss Exchange (XSWX), Borsa Italiana Milan (XMIL), Borsa Istanbul (XIST), Saudi Exchange Tadawul (XSAU), Dubai Financial Market (XDFM), NZX Auckland (XNZE), Nasdaq Helsinki (XHEL), Nasdaq Stockholm (XSTO); derivatives — CME Futures (XCBT), NYMEX (XNYM), Cboe Options (XCBO); and 24/7 crypto — Coinbase (XCOI), Binance (XBIN). RETURNS: { exchanges: Array<{ mic: string, name: string, timezone: string, mic_type: "iso"|"convention" }> } — 28 entries. Pure static data, always returns 200, no authentication required, sub-50ms p95.
This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.
Exfil surface
Which tools read private data, which read text someone else can write, and which can send data out. One of each is a path a prompt injection can use.
No private-data, untrusted-input, outbound path in this server alone: no tool is tagged untrusted-input or outbound.
- Reads private data1
- Reads files, mail, messages, databases, secrets, calendars or repositories.
- Reads text others write0
- Brings in text someone else can write: web pages, inbound email, messages, issues and comments.
- Can send data out0
- Can carry data to people or systems: it sends, posts or publishes, or takes a recipient, channel or URL.
Other servers in the same agent add their own tools to these paths. Audit your whole setup to see them together.
Remote posture
What anyone on the internet sees at the remote endpoint: an anonymous initialize and tools/list, and the public OAuth metadata.
Looked at Oct 22, 2026, 14:53 UTC, unchanged since Oct 22, 2026. No credentials were sent and no tool was called. What is looked at.
- Reachable
- yes
- HTTP status of an anonymous initialize
- 200
- tools/list served without credentials
- yes
- Tools that change things, listed without credentials
- 0
- Protocol version
- 2024-11-05
- WWW-Authenticate on 401
- not observed
- resource_metadata in WWW-Authenticate
- none
- RFC 9728 protected resource metadata
- https://headlessoracle.mmsebenzi-oracle.workers.dev/.well-known/oauth-protected-resource/mcp
- Authorization servers
- https://headlessoracle.com/oauth
- Legacy HTTP+SSE transport
- no
- Dynamic client registration
- no
- Client ID metadata documents
- no
Install
Pinned to version 5.0.0. Values in angle brackets are yours to fill in.
claude mcp add --transport http headless-oracle https://headlessoracle.mmsebenzi-oracle.workers.dev/mcpRun in a terminal.
Claude Code permissions
Allow the reads, ask before a change or a way out, deny the deletes. Paste into .claude/settings.json.
{
"permissions": {
"allow": [
"mcp__headless-oracle__get_market_status",
"mcp__headless-oracle__get_market_schedule",
"mcp__headless-oracle__list_exchanges",
"mcp__headless-oracle__get_payment_options"
],
"ask": [],
"deny": []
}
}Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. A read that can send data out (it takes a URL, say) asks first too. It assumes the server is installed as headless-oracle. Review it before you use it.
Capability tags behind 1 rule
- mcp__headless-oracle__list_exchanges private-data
