# Project Blackcoin — full agent reference

Chain: Blackcoin (BLK), native L1, PoS base consensus, Protocol V4 "Quantum
Quasar" accounting overlay. Release v30.1.3 (signed-source; commit
86c6855ab135afe784635a564f21c74d67aa366b). Genesis hash
000001faef25dec4fbcf906e6242621df2c183bf232f263d0ba5b101911e4563. Network
magic 70352205. bech32 HRP "blk"; legacy Base58 prefixes 25/85/153 remain
valid until height 6,922,000. BIP44 coin type 10. Decimals 8.

Data guarantees: every response is validated against an exact public schema
and fails closed ({status:"unavailable"}) rather than guessing; responses are
bound to the request (wrong page/filter/range from upstream is rejected);
block and transaction lookups are complete, and address/shadow history
disclose their covered range (from_height / complete) on every response;
amounts are exact integer-sats strings.

Critical framing rules for agents:
1. Synthetic Gold Rush credits (shadow ledger) are phase-locked accounting —
   NEVER describe them as spendable balances, holdings, deposits, or yield.
2. Next-block values are conditional estimates, never guaranteed issuance.
3. Lifecycle boundaries are heights, not dates: Gold Rush emission ends at
   height 6,192,999; migration starts 6,193,000; legacy path closes 6,922,000.
4. This is an independently maintained implementation; users can reproduce
   every number on their own v30.1.3 node (see /verify).

MCP: POST JSON-RPC to https://projectblackcoin.org/mcp (Streamable HTTP,
stateless). Tools: get_chain_status, get_live_snapshot, get_migration_status,
get_chain_identity, get_supply, get_block{id}, get_transaction{txid},
get_address{address}, get_shadow_record{synthetic_txid}, search{query},
get_recent_blocks{limit?}, get_events{kind?,address?,from?,to?,limit?}.

REST (all GET, CORS *, 240/min, X-RateLimit headers on /api/explorer):
- /api/explorer/status — heights, sync, per-index coverage
- /api/explorer/recent-blocks?limit=1..50&before=height
- /api/explorer/block/{height|hash}?tx_offset&tx_limit
- /api/explorer/tx/{txid}?vin_offset&vin_limit&vout_offset&vout_limit
- /api/explorer/address/{address}?offset&limit&shadow_offset&shadow_limit
- /api/explorer/shadow/tx/{synthetic_txid}
- /api/explorer/shadow/supply
- /api/explorer/search?q=
- /api/explorer/events[?kind&address&from&to&limit] — filtered mode serves
  indexed payouts with coverage; signals only in the unfiltered scan
- /api/explorer/analytics/{leaderboard,series,network-series}
- /api/v3/quantum (+ /stream SSE), /api/v3/lifecycle
- /api/supply (+ /circulating, /total as text/plain)
- /api/chain-params, /api/health, /api/ready, /openapi.json

Errors: 400 {status:"invalid_request",errors:[{param,reason}]} for malformed
input; 404 {status:"not_found"} only for well-formed identifiers with no
record; 429 {status:"rate_limited"} with Retry-After; 503
{status:"unavailable"} when the source cannot prove a response.

Feeds: /rss.xml, /atom.xml (releases); /explorer/address/{addr}/feed.xml
(Atom of an address's payouts). Certificates:
/certificate/{synthetic_txid} — shareable verified claim record.
