bitcoin-stratigraphy
Server Details
Quantitative Bitcoin stratigraphy dataset featuring thermodynamic signals, Groth16 zk-SNARK verification, and P2P mesh consensus accessible via L402 micropayments.
- Status
- Healthy
- Uptime
- 99.7% over 21 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
TDQS
Scored across 15 tools
The four major groups (mesh, payment, proof, stratigraphy) are largely distinct, and descriptions include explicit cross-references, e.g., 'use proof.verify instead of proof.submit.' However, within the stratigraphy read family, get/get_range/get_digest/get_diff share the same retrieval domain, so an agent may still need the cross-references to pick the right one.
All 15 tools follow a consistent namespace.verb pattern: mesh.broadcast, payment.get_info, proof.attenuate, stratigraphy.get_range, etc. The `stratigraphy.get_*` variants are a predictable extension of the same scheme.
15 tools is a reasonable size for a domain spanning mesh networking, L402 payments, proof anchoring, and stratigraphy retrieval. The count is slightly heavy but each tool covers a distinct operation, with minimal redundancy.
The surface covers the main lifecycles: proof submit/retrieve/list/ground/verify/attenuate/notarize, stratigraphy list/get/get_range/get_digest/get_diff, plus mesh and payment discovery. Mesh administration and peer mutation are intentionally omitted, but that is a scoped boundary rather than a stated gap.
Available Tools
15 toolsmesh.broadcastBroadcast Telemetry Snapshot to MeshInspect
PURPOSE & BOUNDARIES: Sign a stored daily telemetry snapshot selected by date and distribute it to pinned mesh peers for cross-validation; arbitrary payloads or inbound peer sync publication are not supported. USAGE GUIDELINES: Use this instead of mesh.get_status only when sending a snapshot for peer acknowledgment. BEHAVIOR & CONSEQUENCES: Side-effecting and costs 250 sats via HTTP L402 without valid credentials; missing records, invalid agent events, unavailable peers, or failed quorum return errors. Live L402 Satoshi settlement: a configured NWC wallet issues the exact-priced Lightning invoice; paid execution requires confirmed incoming settlement and an invoice-bound payment proof. Handle HTTP 402, pay explicitly, then retry the identical request with Authorization: L402 :. Invoice creation alone is not payment; unavailable verification does not authorize execution.
| Name | Required | Description | Default |
|---|---|---|---|
| payload | Yes | UTC date selector for an existing telemetry record submitted for peer attestation, not a caller-supplied record object; for example, {"date":"2026-09-09"}. | |
| agentEvent | No | Optional NIP-01 kind 20079 signature over JSON.stringify({networkId,date}) for this exact date selector. The signer must have a trusted mesh attestation. Example: a complete signed event with a matching date. | |
| signalType | Yes | Enforces the broadcast event schema; must be telemetry_snapshot to trigger peer validation, not an arbitrary signal. Constraints: allowed values: telemetry_snapshot. Example: "telemetry_snapshot". |
Output Schema
| Name | Required | Description |
|---|---|---|
| date | Yes | UTC date of the distributed telemetry record. Constraints: format: date. Example: "2026-09-09". |
| networkId | Yes | Mesh network identifier committed in peer attestations. Example: "bitcoin-stratigraphy-mainnet-v1". |
| merkleRoot | Yes | Merkle root of local and peer attestation event identifiers. Constraints: pattern: ^[0-9a-f]{64}$. Example: "cdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcd". |
| signalType | Yes | Signal distributed to configured peers. Constraints: allowed values: telemetry_snapshot. Example: "telemetry_snapshot". |
| agentPubkey | No | Present only when an agent-signed session was verified and accepted by the peer mesh. Constraints: pattern: ^[0-9a-f]{64}$. Example: "cdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcd". |
| snapshotDigest | Yes | SHA-256 digest of the canonical mesh-encoded signed snapshot. Constraints: pattern: ^[0-9a-f]{64}$. Example: "abababababababababababababababababababababababababababababababab". |
| quorumThreshold | Yes | Required total attestation count, including this node. Constraints: minimum: 1. Example: 2. |
| peerAttestations | Yes | Number of remote pinned peers whose signatures were verified; excludes this node. Constraints: minimum: 1. Example: 1. |
mesh.get_statusGet Mesh StatusRead-onlyIdempotentInspect
Inspect P2P peer counts, topology health, cross-validation rate, propagation latency, and quorum. Requires L402 authorization; use mesh.broadcast to distribute a snapshot. This tool does not administer peers or edit topology. Live L402 Satoshi settlement: a configured NWC wallet issues the exact-priced Lightning invoice; paid execution requires confirmed incoming settlement and an invoice-bound payment proof. Handle HTTP 402, pay explicitly, then retry the identical request with Authorization: L402 :. Invoice creation alone is not payment; unavailable verification does not authorize execution.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| nodePubkey | Yes | Lowercase hexadecimal Nostr public key identifying this mesh node. Example: "f72cc555ec2948fdc4b5b2c2778821499ea8ce2b8569b68675899e296d3ff253". |
| topologyHealth | Yes | Current consensus topology health classification. Constraints: allowed values: healthy, degraded, isolated. Example: "healthy". |
| activePeerCount | Yes | Number of recently validated nodes, including the local node. Constraints: minimum: 1. Example: 3. |
| quorumThreshold | Yes | Minimum unique node attestations required for consensus. Constraints: minimum: 1. Example: 2. |
| configuredPeerCount | Yes | Number of remotely configured trusted peers. Constraints: minimum: 0. Example: 2. |
| crossValidationSuccessRate | Yes | Lifetime ratio of successful peer cross-validation attempts. Constraints: minimum: 0; maximum: 1. Example: 0.98. |
| averagePropagationLatencyMs | Yes | Mean round-trip propagation latency for successful attestations. Constraints: minimum: 0. Example: 42.7. |
payment.get_infoQuery MCP Prices or Verify Payment SettlementInspect
Query MCP pricing parameters (action='query', the default) or verify authenticated settlement (action='settle' with a payment hash and either an L402 preimage or Base transaction hash). Use query for price discovery before calling paid tools; use settle to check payment status, not to issue an invoice. Macaroons and Lightning invoices are issued dynamically via HTTP 402 challenges with bounded expiration; operator-only admin operations are intentionally omitted. Live L402 Satoshi settlement: a configured NWC wallet issues the exact-priced Lightning invoice; paid execution requires confirmed incoming settlement and an invoice-bound payment proof. Handle HTTP 402, pay explicitly, then retry the identical request with Authorization: L402 :. Invoice creation alone is not payment; unavailable verification does not authorize execution.
| Name | Required | Description | Default |
|---|---|---|---|
| action | No | query (default) discovers prices; settle verifies authenticated payment. Constraints: allowed values: query, settle. Example: "query". | query |
| txHash | No | Base mainnet transaction hash, accepted only after facilitator settlement of PAYMENT-SIGNATURE. Constraints: pattern: ^0x[0-9a-fA-F]{64}$. Example: "0xabababababababababababababababababababababababababababababababab". | |
| preimage | No | Optional L402 preimage, NWC_LOOKUP, or UUID hint; the issued macaroon and exact merchant settlement remain required. Constraints: pattern: ^([0-9a-fA-F]{64}|[0-9a-fA-F]{8}(-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}|NWC_LOOKUP|nwc_lookup)$. Example: "cdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcd". | |
| toolName | No | Optional case-sensitive canonical MCP tool identifier (e.g., 'stratigraphy.get_digest' or 'proof.verify'); supported legacy aliases are also accepted and resolve to canonical names. When provided, filters output to return pricing specifically for that single tool. When omitted, returns the full pricing map across all registered catalog tools. Must match an exact registered tool name or supported legacy alias. Constraints: minLength: 1. Example: "stratigraphy.get_digest". | |
| paymentHash | No | L402 SHA-256 invoice hash, or Base tx hash when using x402. Constraints: pattern: ^(0x)?[0-9a-fA-F]{64}$. Example: "abababababababababababababababababababababababababababababababab". | |
| paymentMacaroon | No | Original invoice macaroon, separate from this tool's paid access credential. Constraints: minLength: 1; maxLength: 8192. Example: "eyJtYWNhcm9vbiI6ImV4YW1wbGUifQ". |
Output Schema
| Name | Required | Description |
|---|---|---|
| x402 | No | Base mainnet USDC x402 exact terms; present only when authenticated CDP settlement is configured. |
| verified | No | Whether the signed, server-bound payment was verified or settled. Example: true. |
| challenge | No | HTTP payment challenge and response fields. |
| perToolSats | No | Current advertised canonical tool prices in sats; optional toolName narrows this map. |
| settlementToken | No | Verified payment claims, not a bearer token or a grant of tool access. |
| activeAuthSchemes | No | Authentication schemes for paid MCP calls. Only stratigraphy.list and proof.list execute free. Example: ["L402"]. |
| standardInvoiceSats | No | Standard paid MCP execution price. Catalog and status lookups may cost less; free tools cost zero. Example: 250. |
| invoiceExpirySeconds | No | Default expiry for both the issued Lightning invoice and its path-bound macaroon. Constraints: minimum: 1. Example: 3600. |
| macaroonRequirements | No | A valid payment proof must match the bound invoice, provider, amount, path, expiry and request quota. proof.attenuate requires payment and a valid parent token. |
| acceptedPaymentMethods | No | Supported MCP payment method. Example: ["Lightning L402"]. |
proof.attenuateAttenuate a MacaroonRead-onlyIdempotentInspect
Attenuate an authentic, unexpired L402 parent macaroon by appending restrictive caveats and optionally ttlSeconds. At least one restriction is required. Requires its own L402 authorization; the parent's payment proof remains required for child redemption. Delegation cannot widen authority or reset an inherited quota. Live L402 Satoshi settlement: a configured NWC wallet issues the exact-priced Lightning invoice; paid execution requires confirmed incoming settlement and an invoice-bound payment proof. Handle HTTP 402, pay explicitly, then retry the identical request with Authorization: L402 :. Invoice creation alone is not payment; unavailable verification does not authorize execution.
| Name | Required | Description | Default |
|---|---|---|---|
| caveats | Yes | List of restriction caveats to append (e.g. ['time_before = 2026-12-31', 'max_target = 870000', 'allowed_tools = stratigraphy.get,stratigraphy.get_digest']). Existing allowed_path and max_requests restrictions are also supported. Constraints: maxItems: 16. Example: ["time_before = 2026-12-31","max_target = 870000","allowed_tools = stratigraphy.get,stratigraphy.get_digest"]. | |
| macaroon | Yes | Required authentic, unexpired parent L402 macaroon (1-8192 characters); caveats and ttlSeconds can only narrow its scope. Constraints: minLength: 1; maxLength: 8192. Example: "base64url-parent-macaroon". | |
| ttlSeconds | No | Optional positive integer TTL of 1-2592000 seconds (e.g. 3600); appends an expiration caveat without extending the parent's expiry. Constraints: minimum: 1; maximum: 2592000. Example: 3600. |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | Successful attenuation status. Example: "attenuated". |
| issuedAt | Yes | UTC issuance timestamp. Constraints: format: date-time. Example: "2026-09-27T21:00:00.000Z". |
| appliedCaveats | Yes | New canonical caveats appended to the parent; inherited caveats are preserved inside the token. Example: ["max_target=870000"]. |
| attenuatedMacaroon | Yes | Encoded child subscription macaroon. Treat as a bearer credential. Example: "base64url-child-macaroon". |
proof.get_by_hashGet Proof or Receipt by HashRead-onlyIdempotentInspect
Retrieve one retained proof payload, signed receipt, or lifecycle-only status using exactly one known hash (proof or receipt hash, CID, snapshot digest, or submission UUID) or jobId (submission UUID). Looks up bounded process-local records without re-running Groth16 proof verification; receipt provenance may be checked against the current dataset, and missing payloads cannot be reconstructed. Use proof.list to discover indexed proof hashes and proof.verify to cryptographically verify supplied proof inputs. Live L402 Satoshi settlement: a configured NWC wallet issues the exact-priced Lightning invoice; paid execution requires confirmed incoming settlement and an invoice-bound payment proof. Handle HTTP 402, pay explicitly, then retry the identical request with Authorization: L402 :. Invoice creation alone is not payment; unavailable verification does not authorize execution.
| Name | Required | Description | Default |
|---|---|---|---|
| hash | No | Required when jobId is absent: proof/receipt 64-hex hash (optional 0x), decimal snapshot digest, IPFS CID, or UUID submission job ID; unknown identifiers return 404. Constraints: pattern: ^(?:(?:0x)?[0-9a-fA-F]{64}|Qm[1-9A-HJ-NP-Za-km-z]{44}|b[a-z2-7]{20,}|\d{1,77}|[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$. Example: "0xabababababababababababababababababababababababababababababababab". | |
| jobId | No | UUID returned by proof.submit (e.g. '123e4567-e89b-42d3-a456-426614174000'); use instead of hash, never together. Constraints: format: uuid. Example: "123e4567-e89b-42d3-a456-426614174000". |
Output Schema
| Name | Required | Description |
|---|---|---|
| hash | Yes | Canonical proof or receipt hash. CID lookups return the matching receipt hash. Example: "0xabababababababababababababababababababababababababababababababab". |
| kind | Yes | Distinguishes ZK proofs, signed receipts, and lifecycle-only status. Constraints: allowed values: zk-proof, dataset-receipt, context-receipt, zk-proof-status. Example: "zk-proof". |
| jobId | No | Submission job identifier when an exact submitted proof payload is retained. Constraints: format: uuid. Example: "123e4567-e89b-42d3-a456-426614174000". |
| status | Yes | Current indexed lifecycle status. Constraints: allowed values: verified, cached, pending, invalid. Example: "verified". |
| otsProof | No | Base64 serialized .ots proof for the bound dataset root bytes when a calendar receipt is available. Constraints: format: byte. Example: "AQID". |
| otsStatus | No | Calendar-only or independently Bitcoin-verified status of the bound OTS receipt. Constraints: allowed values: pending_calendar, bitcoin_block_attested. Example: "pending_calendar". |
| timestamp | Yes | Original submission, verification, or receipt creation time. Constraints: format: date-time. Example: "2026-09-27T21:00:00.000Z". |
| meshQuorum | No | Whether current mesh quorum is met for lifecycle-only lookups. Example: false. |
| proofPayload | No | Exact retained proof input or signed receipt; do not infer missing snapshot data from a submitted proof. |
| attestationCount | No | NIP-78 attestation count for lifecycle-only lookups. Constraints: minimum: 0. Example: 0. |
| provenanceVerified | Yes | Whether this exact signed receipt binds the currently validated dataset strata chain; does not imply Bitcoin OTS confirmation. Example: false. |
| provenanceMerkleRoot | No | Merkle root bound in the signed receipt when the current dataset chain matches. Constraints: pattern: ^[0-9a-f]{64}$. Example: "abababababababababababababababababababababababababababababababab". |
proof.groundGround Agent Context in Bitcoin StateInspect
PURPOSE & BOUNDARIES: Issue a signed Bitcoin-tip receipt for either agent context (contextHash plus agentId) or a dataset CID; this is an anchor, not a ZK or Bitcoin-confirmed OTS proof. USAGE GUIDELINES: Use proof.verify for proof verification without anchoring or proof.get_by_hash for existing receipts. BEHAVIOR & CONSEQUENCES: Creates a receipt and costs 250 sats via HTTP L402 without valid credentials; the two input modes are exclusive, invalid inputs fail, and tip/provider availability is required. Live L402 Satoshi settlement: a configured NWC wallet issues the exact-priced Lightning invoice; paid execution requires confirmed incoming settlement and an invoice-bound payment proof. Handle HTTP 402, pay explicitly, then retry the identical request with Authorization: L402 :. Invoice creation alone is not payment; unavailable verification does not authorize execution.
| Name | Required | Description | Default |
|---|---|---|---|
| cid | No | Target IPFS CID or 32-byte hex dataset hash anchored directly to the live Bitcoin block height. Example: a 64-character lowercase hex digest. | |
| agentId | No | Unique agent instance identifier named in the signed attestation receipt; trimmed to 1-256 characters. Constraints: minLength: 1; maxLength: 256. Example: "research-agent-7". | |
| context | No | Optional JSON metadata object bound into the signed receipt tuple for additional execution context. Example: {"source":"dataset"}. | |
| metadata | No | Optional non-secret JSON key-value metadata bound to the signed receipt; serialized size must not exceed 16 KiB. Example: {"topic":"difficulty-adjustment"}. | |
| contextHash | No | 64-character hexadecimal SHA-256 digest binding the agent's prompt or execution state to the current block tip; normalized to lowercase. Constraints: minLength: 64; maxLength: 64; pattern: ^[0-9a-fA-F]{64}$. Example: "4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f". | |
| nostrEventId | No | Optional Nostr event ID linked into the signed receipt payload to bind off-chain publications to the block tip. Example: a 64-character lowercase hex event ID. |
Output Schema
| Name | Required | Description |
|---|---|---|
| receipt | Yes | Full signed context receipt or signed dataset receipt wrapper. Example: a signed Bitcoin-tip anchor. |
| otsProof | No | Base64 serialized .ots proof of the dataset root bytes, when a calendar receipt is available. Constraints: format: byte. Example: "AQID". |
| otsStatus | No | Calendar-only or independently Bitcoin-verified status of the OTS receipt. Constraints: allowed values: pending_calendar, bitcoin_block_attested. Example: "pending_calendar". |
| provenanceVerified | Yes | Whether this signed receipt binds the current verified dataset chain, not whether Bitcoin has attested its OTS proof. Example: true. |
| provenanceMerkleRoot | No | Dataset chain root signed in the receipt, when the referenced dataset still matches. Constraints: pattern: ^[0-9a-f]{64}$. Example: "abababababababababababababababababababababababababababababababab". |
proof.listList Proof AttestationsRead-onlyIdempotentInspect
Freely discover, filter, and paginate recent zk-proof attestation lifecycle summaries. Use limit (1-100), offset (0-1000), and optional status (verified, cached, pending, invalid). Returns bounded summaries, not full proofs or receipts. Alias: proof.status. No invoice is created. Free metadata discovery: no Live L402 Satoshi settlement is required for this sandbox tool; no paid payload is released.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Pagination window size: maximum number of attestation records to return (integer, 1-100); increase offset by limit for the next page. Constraints: minimum: 1; maximum: 100. Example: 20. | |
| offset | No | Zero-based pagination skip offset (0-1000); increase by limit to page through historical attestations, but multiples of limit are not required. Constraints: minimum: 0; maximum: 1000. Example: 0. | |
| status | No | Filter the attestation index to one lifecycle stage: verified, cached, pending, or invalid. Constraints: allowed values: verified, cached, pending, invalid. Example: "verified". |
Output Schema
| Name | Required | Description |
|---|---|---|
| total | Yes | Total number of indexed attestation records matching the optional status filter before the limit is applied. Constraints: minimum: 0. Example: 1. |
| attestations | Yes | Recent indexed proof attestations ordered from newest to oldest. Example: [{"proofHash":"0x1a2b3c4d5e6f789001234567890abcdef1234567890abcdef1234567890abcd","snapshotDigest":"1534979302823651498736582947365829473658294","status":"verified","submittedAt":"2026-09-19T06:20:00.000Z","attestationCount":1,"meshQuorum":true}]. |
proof.notarizeNotarize a SHA256 Digest with OpenTimestampsInspect
PURPOSE & BOUNDARIES: Create a detached OpenTimestamps .ots receipt for an agent-supplied SHA256 digest using public calendars. Do NOT use this as evidence of immediate Bitcoin confirmation or as a replacement for proof.verify. USAGE GUIDELINES: Submit exactly one 64-character hexadecimal hash; decode otsProofHex into binary to save the .ots file. BEHAVIOR & CONSEQUENCES: Submits a randomized commitment to public calendars, returns pending_calendar, and fails explicitly if calendars are unavailable. Costs 250 sats via L402; X-L402-Batch-Size: 100 purchases 100 tool-scoped calls for 25000 sats. Live L402 Satoshi settlement: a configured NWC wallet issues the exact-priced Lightning invoice; paid execution requires confirmed incoming settlement and an invoice-bound payment proof. Handle HTTP 402, pay explicitly, then retry the identical request with Authorization: L402 :. Invoice creation alone is not payment; unavailable verification does not authorize execution.
| Name | Required | Description | Default |
|---|---|---|---|
| hash | Yes | Exactly 64 hexadecimal characters representing the agent state or data SHA256 digest; no 0x prefix. Constraints: minLength: 64; maxLength: 64; pattern: ^[0-9a-fA-F]{64}$. Example: "abababababababababababababababababababababababababababababababab". |
Output Schema
| Name | Required | Description |
|---|---|---|
| hash | Yes | The original SHA256 digest, normalized to lowercase. Constraints: pattern: ^[0-9a-f]{64}$. Example: "abababababababababababababababababababababababababababababababab". |
| otsStatus | Yes | Calendar receipt only; Bitcoin inclusion must be independently upgraded and verified later. Example: "pending_calendar". |
| otsProofHex | Yes | Hex-encoded detached .ots file. Decode as binary and upgrade or verify later with official OpenTimestamps tools. Constraints: minLength: 2; maxLength: 1048576; pattern: ^(?:[0-9a-f]{2})+$. Example: "004f70656e54696d657374616d70730000". |
proof.submitSubmit ZK ProofInspect
PURPOSE & BOUNDARIES: Submit and register a new Groth16 zk-SNARK proof with its five public signals, then attempt a Nostr NIP-78 attestation; this changes proof registry state, but does not append a proof to a Merkle tree. USAGE GUIDELINES: Use proof.submit strictly for registering new attestations, and use proof.verify instead when validating an existing proof without state mutation. Use proof.get_by_hash for retained submissions or proof.ground for a Bitcoin-tip receipt. BEHAVIOR & CONSEQUENCES: Costs 250 sats via HTTP L402 without valid credentials; malformed inputs fail validation, invalid proofs are reported, and Nostr publication status may fail separately. Live L402 Satoshi settlement: a configured NWC wallet issues the exact-priced Lightning invoice; paid execution requires confirmed incoming settlement and an invoice-bound payment proof. Handle HTTP 402, pay explicitly, then retry the identical request with Authorization: L402 :. Invoice creation alone is not payment; unavailable verification does not authorize execution.
| Name | Required | Description | Default |
|---|---|---|---|
| proof | Yes | Groth16/Poseidon BN254 proof coordinates for non-interactive validation: piA and piC are three decimal-string projective coordinates each, and piB is three pairs of decimal-string extension-field coordinates; for example, piA ['1','2','1']. | |
| publicSignals | Yes | Five ordered public inputs—blockHeight, thermodynamicHash, timestamp, valuationSat, and snapshotDigest—that must align with the submitted proof coordinates. Constraints: minItems: 5; maxItems: 5. Example: ["920000","1","1789776000000","12583","1"]. | |
| snapshotDigest | No | Decimal field digest or IPFS CID that must equal publicSignals[4] when supplied. Constraints: pattern: ^(?:\d+|Qm[1-9A-HJ-NP-Za-km-z]{44}|b[a-z2-7]{20,})$. Example: "1". |
Output Schema
| Name | Required | Description |
|---|---|---|
| jobId | Yes | Server-generated proof submission job ID for status lookup. Constraints: format: uuid. Example: "123e4567-e89b-42d3-a456-426614174000". |
| status | Yes | Immediate Groth16 verification result for the submitted proof and public signals. Constraints: allowed values: verified, invalid. Example: "verified". |
| proofHash | Yes | 0x-prefixed lowercase hexadecimal SHA-256 digest of the canonical proof. Example: "0x1a2b3c4d5e6f789001234567890abcdef1234567890abcdef1234567890abcd". |
| submittedAt | Yes | ISO 8601 UTC date string format. Constraints: format: date-time. Example: "2026-09-19T06:20:00.000Z". |
| attestationStatus | Yes | Nostr NIP-78 publication result: broadcast_confirmed, broadcast_failed, not_configured, or not_broadcast_invalid_proof. Example: "broadcast_confirmed". |
proof.verifyVerify Groth16 or OpenTimestamps ProofInspect
Execute cryptographic verification for supplied Groth16 telemetry or drift zk-SNARK proofs, or OpenTimestamps receipts. Returns proof validity; verification can update a bounded in-memory lifecycle index, and drift checks require a Bitcoin block provider. Use this tool to verify supplied proofs; use proof.submit to register new Groth16 proofs and proof.get_by_hash to retrieve retained proofs or signed receipts by a known identifier. Live L402 Satoshi settlement: a configured NWC wallet issues the exact-priced Lightning invoice; paid execution requires confirmed incoming settlement and an invoice-bound payment proof. Handle HTTP 402, pay explicitly, then retry the identical request with Authorization: L402 :. Invoice creation alone is not payment; unavailable verification does not authorize execution.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| valid | Yes | True only for a digest-matching, Bitcoin-attested OTS record with a valid chain-header lookup. Example: true. |
| status | No | Whether the OTS record is Bitcoin-attested; calendar-only receipts are unverified. Constraints: allowed values: bitcoin_block_attested, unverified. Example: "bitcoin_block_attested". |
| verifiedAt | No | ISO 8601 UTC time when this verification finished. Constraints: format: date-time. Example: "2026-09-19T01:41:36.458Z". |
| blockHeight | No | Bitcoin attestation height, or null if not verified. Example: 920000. |
| bitcoinHeaderHash | No | Canonical Bitcoin block header hash at the attested height, or null if not verified. Example: "abababababababababababababababababababababababababababababababab". |
| computationTimeMs | No | Server-side proof verification duration in milliseconds. Constraints: minimum: 0. Example: 3.284. |
stratigraphy.getGet Bitcoin StratigraphyRead-onlyIdempotentInspect
Paid, full fresh pipeline telemetry and exact selected historical Object Storage JSON/.ots receipts; records contain live or archived pipeline snapshots, never video-index data. Semantic discovery: Hal Finney Horizon tracker = $10,000,000 / BTC USD price; this is a valuation multiple, not a time-to-price forecast. The 15 J/TH thermodynamic energy calculation estimates watts as (network hashrate H/s / 1e12) * 15, not measured electricity. Sovereign Node RPC telemetry uses local Bitcoin Core; price and horizon are unavailable without a fiat quote. Live L402 Satoshi settlement: a configured NWC wallet issues the exact-priced Lightning invoice; paid execution requires confirmed incoming settlement and an invoice-bound payment proof. Handle HTTP 402, pay explicitly, then retry the identical request with Authorization: L402 :. Invoice creation alone is not payment; unavailable verification does not authorize execution.
| Name | Required | Description | Default |
|---|---|---|---|
| date | No | Select one indexed UTC day (YYYY-MM-DD, e.g. '2026-09-19'); cannot combine with days, blockHeight, or range bounds. Constraints: minLength: 1; format: date; pattern: ^\d{4}-\d{2}-\d{2}$. Example: "2026-09-19". | |
| days | No | Fetch the most recent 1-365 indexed daily records (e.g. 7), capped by limit; cannot combine with date, blockHeight, or range bounds. Constraints: minimum: 1; maximum: 365. Example: 7. | |
| limit | No | Cap records returned by the chosen selector at 1-100 (default 10); does not expand days or range bounds. Constraints: minimum: 1; maximum: 100. Example: 10. | |
| endDate | No | Inclusive upper UTC date bound (YYYY-MM-DD); pair with startDate for a bounded range or use alone for an open range, never with days, date, or blockHeight; must be >= startDate when paired. Constraints: minLength: 1; format: date; pattern: ^\d{4}-\d{2}-\d{2}$. Example: "2026-09-18". | |
| metrics | No | Deprecated legacy projection hint retained for compatibility; the live source returns complete pipeline records regardless of this hint. Inspect live_metrics for the real pipeline field names. Constraints: minItems: 1. Example: ["target_multiplier"]. | |
| endBlock | No | Inclusive upper indexed block-height bound (non-negative); pair with startBlock for a bounded range or use alone for an open range, never with days, date, or blockHeight; must be >= startBlock when paired. Constraints: minimum: 0. Example: 920000. | |
| startDate | No | Inclusive lower UTC date bound (YYYY-MM-DD); pair with endDate for a bounded range or use alone for an open range, never with days, date, or blockHeight. Constraints: minLength: 1; format: date; pattern: ^\d{4}-\d{2}-\d{2}$. Example: "2026-09-01". | |
| startBlock | No | Inclusive lower indexed block-height bound (non-negative); pair with endBlock for a bounded range or use alone for an open range, never with days, date, or blockHeight. Constraints: minimum: 0. Example: 910000. | |
| blockHeight | No | Select one actual captured non-negative Bitcoin height or the current live height; never a synthetic date-to-height index. Cannot combine with days, date, or range bounds. Constraints: minimum: 0. Example: 850000. |
Output Schema
| Name | Required | Description |
|---|---|---|
| records | Yes | Selected actual live or UTC-archived complete pipeline snapshots. |
| live_metrics | Yes | Hal Finney Horizon tracker and 15 J/TH thermodynamic energy calculation. Horizon = $10,000,000 / btc_price_usd (a price multiple, not a forecast). Estimated network power in watts = (network_hashrate_h_s / 1e12) * 15. Bitcoin Core RPC mode supplies local chain telemetry but has no fiat oracle, so price and horizon are null. |
| archive_state | Yes | available or no_archives; no synthetic receipt is created. |
| proofAvailable | Yes | True only if an archived JSON/OTS pair was returned. |
| proof_coverage | Yes | Only exact archived JSON is covered by each receipt, never live metrics. |
| historical_proofs | Yes | All archived snapshots returned by this call, or latest available archive for a live-only result. |
stratigraphy.get_diffCompare Stratigraphy StrataRead-onlyIdempotentInspect
Paid signed deltas between real-height live/archived snapshots, including 15 J/TH power change; includes live metrics and exact archived proof bytes. Semantic discovery: Hal Finney Horizon tracker = $10,000,000 / BTC USD price; this is a valuation multiple, not a time-to-price forecast. The 15 J/TH thermodynamic energy calculation estimates watts as (network hashrate H/s / 1e12) * 15, not measured electricity. Sovereign Node RPC telemetry uses local Bitcoin Core; price and horizon are unavailable without a fiat quote. Live L402 Satoshi settlement: a configured NWC wallet issues the exact-priced Lightning invoice; paid execution requires confirmed incoming settlement and an invoice-bound payment proof. Handle HTTP 402, pay explicitly, then retry the identical request with Authorization: L402 :. Invoice creation alone is not payment; unavailable verification does not authorize execution.
| Name | Required | Description | Default |
|---|---|---|---|
| toTarget | No | Optional comparison indexed height (e.g. '919856'), UTC ISO date (e.g. '2026-09-01'), or 'latest' (default); deltas are toTarget minus fromTarget. 'latest' is the latest dataset entry, not the live Bitcoin tip. Constraints: pattern: ^(?:latest|(?:0|[1-9]\d*)|\d{4}-\d{2}-\d{2})$. Example: "latest". | latest |
| fromTarget | Yes | Required baseline indexed height (e.g. '850000') or UTC ISO date (e.g. '2026-01-01'); compared with toTarget to calculate signed deltas. Either chronological order is allowed; only indexed entries resolve. Constraints: pattern: ^(?:(?:0|[1-9]\d*)|\d{4}-\d{2}-\d{2})$. Example: "919856". |
Output Schema
| Name | Required | Description |
|---|---|---|
| to | Yes | Real captured to-target values. |
| from | Yes | Real captured from-target values. |
| delta | Yes | Signed arithmetic deltas; watts derive from the assumed 15 J/TH baseline. |
| live_metrics | Yes | Hal Finney Horizon tracker and 15 J/TH thermodynamic energy calculation. Horizon = $10,000,000 / btc_price_usd (a price multiple, not a forecast). Estimated network power in watts = (network_hashrate_h_s / 1e12) * 15. Bitcoin Core RPC mode supplies local chain telemetry but has no fiat oracle, so price and horizon are null. |
| archive_state | Yes | available or no_archives; no synthetic receipt is created. |
| proofAvailable | Yes | True only if an archived JSON/OTS pair was returned. |
| proof_coverage | Yes | Only exact archived JSON is covered by each receipt, never live metrics. |
| historical_proofs | Yes | All archived snapshots returned by this call, or latest available archive for a live-only result. |
stratigraphy.get_digestGet Compressed Stratigraphy DigestRead-onlyIdempotentInspect
Paid SHA-256 fingerprints of actual cloud JSON bytes or current live pipeline JSON, with full live telemetry and associated archived receipts alongside them. Semantic discovery: Hal Finney Horizon tracker = $10,000,000 / BTC USD price; this is a valuation multiple, not a time-to-price forecast. The 15 J/TH thermodynamic energy calculation estimates watts as (network hashrate H/s / 1e12) * 15, not measured electricity. Sovereign Node RPC telemetry uses local Bitcoin Core; price and horizon are unavailable without a fiat quote. Live L402 Satoshi settlement: a configured NWC wallet issues the exact-priced Lightning invoice; paid execution requires confirmed incoming settlement and an invoice-bound payment proof. Handle HTTP 402, pay explicitly, then retry the identical request with Authorization: L402 :. Invoice creation alone is not payment; unavailable verification does not authorize execution.
| Name | Required | Description | Default |
|---|---|---|---|
| format | No | Compression format: minimal returns [height,date,target_multiplier,record_hash]; kv returns {h,ts,tm,hash}; compact returns HEIGHT:...|DATE:...|TM:...|HASH:.... Record hashes are SHA-256 of stored entry fields, not Bitcoin block hashes; no per-record proof is available. Constraints: allowed values: compact, minimal, kv. Example: "compact". | compact |
| target | No | Indexed Bitcoin height (e.g. '920000'), ISO date, or inclusive ISO date range joined with '..'. Defaults to the latest available dataset entry, not the live Bitcoin tip. Constraints: pattern: ^(?:latest|(?:0|[1-9]\d*)|\d{4}-\d{2}-\d{2}(?:\.\.\d{4}-\d{2}-\d{2})?)$. Example: "latest". | latest |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | compact text, minimal tuple, kv object, or arrays for bounded date ranges; hash is SHA-256 of exact archived JSON when available. |
| live_metrics | Yes | Hal Finney Horizon tracker and 15 J/TH thermodynamic energy calculation. Horizon = $10,000,000 / btc_price_usd (a price multiple, not a forecast). Estimated network power in watts = (network_hashrate_h_s / 1e12) * 15. Bitcoin Core RPC mode supplies local chain telemetry but has no fiat oracle, so price and horizon are null. |
| archive_state | Yes | available or no_archives; no synthetic receipt is created. |
| proofAvailable | Yes | True only if an archived JSON/OTS pair was returned. |
| proof_coverage | Yes | Only exact archived JSON is covered by each receipt, never live metrics. |
| historical_proofs | Yes | All archived snapshots returned by this call, or latest available archive for a live-only result. |
stratigraphy.get_rangeGet Stratigraphy RangeRead-onlyIdempotentInspect
Paid contiguous captured UTC snapshot fingerprints bounded by actual Bitcoin heights/dates, plus full live metrics and matching upgraded archived receipts. Semantic discovery: Hal Finney Horizon tracker = $10,000,000 / BTC USD price; this is a valuation multiple, not a time-to-price forecast. The 15 J/TH thermodynamic energy calculation estimates watts as (network hashrate H/s / 1e12) * 15, not measured electricity. Sovereign Node RPC telemetry uses local Bitcoin Core; price and horizon are unavailable without a fiat quote. Live L402 Satoshi settlement: a configured NWC wallet issues the exact-priced Lightning invoice; paid execution requires confirmed incoming settlement and an invoice-bound payment proof. Handle HTTP 402, pay explicitly, then retry the identical request with Authorization: L402 :. Invoice creation alone is not payment; unavailable verification does not authorize execution.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum compressed records returned from startTarget toward endTarget, 1-100 (default 50); smaller limits truncate the batch. Constraints: minimum: 1; maximum: 100. Example: 50. | |
| format | No | Compression of every returned record: compact (default), minimal, or kv; does not change selected bounds. Constraints: allowed values: compact, minimal, kv. Example: "compact". | compact |
| endTarget | No | Optional inclusive ending indexed height, UTC ISO date, or 'latest' (default: latest indexed entry, not live tip); must resolve no earlier than startTarget. Constraints: pattern: ^(?:latest|(?:0|[1-9]\d*)|\d{4}-\d{2}-\d{2})$. Example: "latest". | latest |
| startTarget | Yes | Required inclusive starting indexed height (e.g. '850000') or UTC ISO date (e.g. '2026-01-01'); must resolve no later than endTarget. Constraints: pattern: ^(?:(?:0|[1-9]\d*)|\d{4}-\d{2}-\d{2})$. Example: "919712". |
Output Schema
| Name | Required | Description |
|---|---|---|
| count | Yes | Number of actual records returned. |
| range | Yes | Requested inclusive real height/date bounds. |
| format | Yes | compact, minimal, or kv response format. |
| records | Yes | Selected actual snapshot summaries, not a synthetic daily index. |
| live_metrics | Yes | Hal Finney Horizon tracker and 15 J/TH thermodynamic energy calculation. Horizon = $10,000,000 / btc_price_usd (a price multiple, not a forecast). Estimated network power in watts = (network_hashrate_h_s / 1e12) * 15. Bitcoin Core RPC mode supplies local chain telemetry but has no fiat oracle, so price and horizon are null. |
| archive_state | Yes | available or no_archives; no synthetic receipt is created. |
| proofAvailable | Yes | True only if an archived JSON/OTS pair was returned. |
| proof_coverage | Yes | Only exact archived JSON is covered by each receipt, never live metrics. |
| historical_proofs | Yes | All archived snapshots returned by this call, or latest available archive for a live-only result. |
stratigraphy.listList Stratigraphy CatalogRead-onlyIdempotentInspect
Free, metadata-only discovery of real UTC archive bounds and current Bitcoin tip height; no paid snapshot or proof bytes. Historical height fields are actual captured heights. Semantic discovery: Hal Finney Horizon tracker = $10,000,000 / BTC USD price; this is a valuation multiple, not a time-to-price forecast. The 15 J/TH thermodynamic energy calculation estimates watts as (network hashrate H/s / 1e12) * 15, not measured electricity. Sovereign Node RPC telemetry uses local Bitcoin Core; price and horizon are unavailable without a fiat quote. Free metadata discovery: no Live L402 Satoshi settlement is required for this sandbox tool; no paid payload is released.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| source | Yes | Authoritative pipeline and Object Storage origins. |
| dateBounds | Yes | Actual captured archive UTC date bounds. |
| attribution | Yes | Verbatim historical attribution of the Hal Finney Horizon. |
| newestBlock | Yes | Real block height of the newest archive, or null. |
| oldestBlock | Yes | Real block height of the oldest archive, or null. |
| totalSnapshots | Yes | Number of JSON snapshots captured in Object Storage. |
| liveBlockHeight | Yes | Current live tip from the pipeline, not an indexed archive height. |
| availableMetrics | Yes | Actual fields in the live pipeline model. |
| proofArchiveCount | Yes | Number of complete JSON/OTS archive pairs. |
| efficiency_baseline_j_th | Yes | Assumed fixed hardware efficiency used by live power estimate. |
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
1 tool update
- Changed
payment.get_info3 fields changed- changed
Input schema / oneOfPrevious value: -[ - { - "additionalProperties": false, - "properties": { - "action": { - "const": "query", - "default": "query", - "description": "Pricing query (default). Example: \"query\".", - "example": "query", - "examples": [ - "query" - ], - "type": "string" - }, - "toolName": { - "description": "Optional case-sensitive canonical MCP tool identifier (e.g., 'stratigraphy.get_digest' or 'proof.verify'); supported legacy aliases are also accepted and resolve to canonical names. When provided, filters output to return pricing specifically for that single tool. When omitted, returns the full pricing map across all registered catalog tools. Must match an exact registered tool name or supported legacy alias. Constraints: minLength: 1. Example: \"stratigraphy.get_digest\".", - "example": "stratigraphy.get_digest", - "examples": [ - "stratigraphy.get_digest" - ], - "minLength": 1, - "type": "string" - } - }, - "type": "object" - }, - { - "additionalProperties": false, - "description": "Payment identifier and one payment proof; the matching signed L402 or x402 credential must be supplied in HTTP headers.", - "examples": [ - { - "paymentHash": "abababababababababababababababababababababababababababababababab", - "preimage": "cdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcd" - }, - { - "paymentHash": "0xabababababababababababababababababababababababababababababababab", - "txHash": "0xabababababababababababababababababababababababababababababababab" - } - ], - "oneOf": [ - { - "required": [ - "preimage" - ] - }, - { - "required": [ - "txHash" - ] - } - ], - "properties": { - "action": { - "const": "settle", - "description": "Verify or execute payment settlement. Example: \"settle\".", - "example": "settle", - "examples": [ - "settle" - ], - "type": "string" - }, - "paymentHash": { - "description": "L402 SHA-256 invoice hash, or Base tx hash when using x402. Constraints: pattern: ^(0x)?[0-9a-fA-F]{64}$. Example: \"abababababababababababababababababababababababababababababababab\".", - "example": "abababababababababababababababababababababababababababababababab", - "examples": [ - "abababababababababababababababababababababababababababababababab" - ], - "pattern": "^(0x)?[0-9a-fA-F]{64}$", - "type": "string" - }, - "paymentMacaroon": { - "description": "Original invoice macaroon, separate from this tool's paid access credential. Constraints: minLength: 1; maxLength: 8192. Example: \"eyJtYWNhcm9vbiI6ImV4YW1wbGUifQ\".", - "example": "eyJtYWNhcm9vbiI6ImV4YW1wbGUifQ", - "examples": [ - "eyJtYWNhcm9vbiI6ImV4YW1wbGUifQ" - ], - "maxLength": 8192, - "minLength": 1, - "type": "string" - }, - "preimage": { - "description": "L402 32-byte hex preimage; also send Authorization: L402 <server-issued macaroon>:<preimage>. Constraints: pattern: ^[0-9a-fA-F]{64}$. Example: \"cdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcd\".", - "example": "cdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcd", - "examples": [ - "cdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcd" - ], - "pattern": "^[0-9a-fA-F]{64}$", - "type": "string" - }, - "txHash": { - "description": "Base mainnet transaction hash, accepted only after facilitator settlement of PAYMENT-SIGNATURE. Constraints: pattern: ^0x[0-9a-fA-F]{64}$. Example: \"0xabababababababababababababababababababababababababababababababab\".", - "example": "0xabababababababababababababababababababababababababababababababab", - "examples": [ - "0xabababababababababababababababababababababababababababababababab" - ], - "pattern": "^0x[0-9a-fA-F]{64}$", - "type": "string" - } - }, - "required": [ - "action", - "paymentHash" - ], - "type": "object" - } -]New value: +[ + { + "additionalProperties": false, + "properties": { + "action": { + "const": "query", + "default": "query", + "description": "Pricing query (default). Example: \"query\".", + "example": "query", + "examples": [ + "query" + ], + "type": "string" + }, + "toolName": { + "description": "Optional case-sensitive canonical MCP tool identifier (e.g., 'stratigraphy.get_digest' or 'proof.verify'); supported legacy aliases are also accepted and resolve to canonical names. When provided, filters output to return pricing specifically for that single tool. When omitted, returns the full pricing map across all registered catalog tools. Must match an exact registered tool name or supported legacy alias. Constraints: minLength: 1. Example: \"stratigraphy.get_digest\".", + "example": "stratigraphy.get_digest", + "examples": [ + "stratigraphy.get_digest" + ], + "minLength": 1, + "type": "string" + } + }, + "type": "object" + }, + { + "additionalProperties": false, + "description": "Payment identifier and optional Lightning proof; retain the issued L402 macaroon for merchant verification. Base settlement requires a transaction hash and matching x402 credential.", + "examples": [ + { + "paymentHash": "abababababababababababababababababababababababababababababababab", + "preimage": "cdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcd" + }, + { + "paymentHash": "0xabababababababababababababababababababababababababababababababab", + "txHash": "0xabababababababababababababababababababababababababababababababab" + } + ], + "not": { + "required": [ + "preimage", + "txHash" + ] + }, + "properties": { + "action": { + "const": "settle", + "description": "Verify or execute payment settlement. Example: \"settle\".", + "example": "settle", + "examples": [ + "settle" + ], + "type": "string" + }, + "paymentHash": { + "description": "L402 SHA-256 invoice hash, or Base tx hash when using x402. Constraints: pattern: ^(0x)?[0-9a-fA-F]{64}$. Example: \"abababababababababababababababababababababababababababababababab\".", + "example": "abababababababababababababababababababababababababababababababab", + "examples": [ + "abababababababababababababababababababababababababababababababab" + ], + "pattern": "^(0x)?[0-9a-fA-F]{64}$", + "type": "string" + }, + "paymentMacaroon": { + "description": "Original invoice macaroon, separate from this tool's paid access credential. Constraints: minLength: 1; maxLength: 8192. Example: \"eyJtYWNhcm9vbiI6ImV4YW1wbGUifQ\".", + "example": "eyJtYWNhcm9vbiI6ImV4YW1wbGUifQ", + "examples": [ + "eyJtYWNhcm9vbiI6ImV4YW1wbGUifQ" + ], + "maxLength": 8192, + "minLength": 1, + "type": "string" + }, + "preimage": { + "description": "Optional L402 preimage, NWC_LOOKUP, or UUID hint; the issued macaroon and exact merchant settlement remain required. Constraints: pattern: ^([0-9a-fA-F]{64}|[0-9a-fA-F]{8}(-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}|NWC_LOOKUP|nwc_lookup)$. Example: \"cdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcd\".", + "example": "cdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcd", + "examples": [ + "cdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcd" + ], + "pattern": "^([0-9a-fA-F]{64}|[0-9a-fA-F]{8}(-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}|NWC_LOOKUP|nwc_lookup)$", + "type": "string" + }, + "txHash": { + "description": "Base mainnet transaction hash, accepted only after facilitator settlement of PAYMENT-SIGNATURE. Constraints: pattern: ^0x[0-9a-fA-F]{64}$. Example: \"0xabababababababababababababababababababababababababababababababab\".", + "example": "0xabababababababababababababababababababababababababababababababab", + "examples": [ + "0xabababababababababababababababababababababababababababababababab" + ], + "pattern": "^0x[0-9a-fA-F]{64}$", + "type": "string" + } + }, + "required": [ + "action", + "paymentHash" + ], + "type": "object" + } +] - changed
Input schema / properties / preimage / descriptionPrevious value: -"L402 32-byte hex preimage; also send Authorization: L402 <server-issued macaroon>:<preimage>. Constraints: pattern: ^[0-9a-fA-F]{64}$. Example: \"cdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcd\"."New value: +"Optional L402 preimage, NWC_LOOKUP, or UUID hint; the issued macaroon and exact merchant settlement remain required. Constraints: pattern: ^([0-9a-fA-F]{64}|[0-9a-fA-F]{8}(-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}|NWC_LOOKUP|nwc_lookup)$. Example: \"cdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcd\"." - changed
Input schema / properties / preimage / patternPrevious value: -"^[0-9a-fA-F]{64}$"New value: +"^([0-9a-fA-F]{64}|[0-9a-fA-F]{8}(-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}|NWC_LOOKUP|nwc_lookup)$"
5 tool updates
- Changed
stratigraphy.get34 fields changed- changed
Input schema / properties / blockHeight / descriptionPrevious value: -"Select one indexed non-negative dataset height (e.g. 850000), not an arbitrary live chain lookup; cannot combine with days, date, or range bounds. Constraints: minimum: 0. Example: 850000."New value: +"Select one actual captured non-negative Bitcoin height or the current live height; never a synthetic date-to-height index. Cannot combine with days, date, or range bounds. Constraints: minimum: 0. Example: 850000." - changed
Input schema / properties / metrics / descriptionPrevious value: -"Unique telemetry metric keys to project into each selected record's quantitative_alpha; omit for all metrics, or choose one or more allowed names. Constraints: minItems: 1. Example: [\"target_multiplier\"]."New value: +"Deprecated legacy projection hint retained for compatibility; the live source returns complete pipeline records regardless of this hint. Inspect live_metrics for the real pipeline field names. Constraints: minItems: 1. Example: [\"target_multiplier\"]." - changed
Input schema / properties / metrics / items / descriptionPrevious value: -"Allowed thermodynamic metric name to include in each returned quantitative_alpha object. Constraints: allowed values: target_multiplier, difficulty_epoch_progress, thermodynamic_signal. Example: \"target_multiplier\"."New value: +"Deprecated hint such as target_multiplier; does not project the current pipeline snapshot. Constraints: allowed values: target_multiplier, difficulty_epoch_progress, thermodynamic_signal. Example: \"target_multiplier\"." - changed
Output schema / descriptionPrevious value: -"Bitcoin Stratigraphy telemetry query result."New value: +"Paid, full fresh pipeline telemetry and exact selected historical Object Storage JSON/.ots receipts; records contain live or archived pipeline snapshots, never video-index data. Semantic discovery: Hal Finney Horizon tracker = $10,000,000 / BTC USD price; this is a valuation multiple, not a time-to-price forecast. The 15 J/TH thermodynamic energy calculation estimates watts as (network hashrate H/s / 1e12) * 15, not measured electricity. Sovereign Node RPC telemetry uses local Bitcoin Core; price and horizon are unavailable without a fiat quote." - changed
Output schema / examplesPrevious value: -[ - { - "records": [ - { - "day": 422, - "quantitative_alpha": { - "difficulty_epoch_progress": "73.42%", - "target_multiplier": 125.83, - "thermodynamic_signal": "accumulation" - }, - "title": "Bitcoin Stratigraphy Day 422", - "transcript_summary": "Mining economics and thermodynamic support strengthened.", - "video_id": "dQw4w9WgXcQ" - } - ] - } -]New value: +[ + { + "archive_state": "available", + "historical_proofs": [ + { + "bundle_download_url": "/agent-api/historical-proof/2026-10-12/download", + "date": "2026-10-12", + "ots_download_url": "/agent-api/historical-proof/2026-10-12/ots", + "ots_filename": "snapshot_2026-10-12.json.ots", + "ots_proof_base64": "AQID", + "ots_sha256": "cdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcd", + "proof_status": "bitcoin_attestation_present_unverified", + "snapshot_download_url": "/agent-api/historical-proof/2026-10-12/snapshot", + "snapshot_filename": "snapshot_2026-10-12.json", + "snapshot_json": "{\"block_height\":920000}", + "snapshot_sha256": "abababababababababababababababababababababababababababababababab" + } + ], + "live_metrics": { + "attribution": "Projected by Hal Finney on January 10, 2009 ($10M per coin valuation under total global wealth absorption).", + "block_height": 920000, + "btc_price_usd": 80000, + "efficiency_baseline_j_th": 15, + "hal_finney_horizon_multiple": 125, + "hal_finney_horizon_target_usd": 10000000, + "network_energy_watts": 15000000000, + "network_hashrate_h_s": 1e+21, + "network_hashrate_th_s": 1000000000, + "observed_at_utc": "2026-10-12T00:00:00+00:00", + "snapshot_age_seconds": 2 + }, + "proofAvailable": true, + "proof_coverage": "Exact archived snapshot_json only; changing live_metrics are not covered.", + "records": [ + { + "attribution": "Projected by Hal Finney on January 10, 2009 ($10M per coin valuation under total global wealth absorption).", + "block_height": 920000, + "btc_price_usd": 80000, + "efficiency_baseline_j_th": 15, + "hal_finney_horizon_multiple": 125, + "hal_finney_horizon_target_usd": 10000000, + "network_energy_watts": 15000000000, + "network_hashrate_h_s": 1e+21, + "network_hashrate_th_s": 1000000000, + "observed_at_utc": "2026-10-12T00:00:00+00:00", + "snapshot_age_seconds": 2 + } + ] + } +] - added
Output schema / properties / archive_stateAdded value: +{ + "description": "available or no_archives; no synthetic receipt is created.", + "example": "available", + "examples": [ + "available" + ], + "type": "string" +} - added
Output schema / properties / historical_proofsAdded value: +{ + "description": "All archived snapshots returned by this call, or latest available archive for a live-only result.", + "examples": [ + [ + { + "bundle_download_url": "/agent-api/historical-proof/2026-10-12/download", + "date": "2026-10-12", + "ots_download_url": "/agent-api/historical-proof/2026-10-12/ots", + "ots_filename": "snapshot_2026-10-12.json.ots", + "ots_proof_base64": "AQID", + "ots_sha256": "cdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcd", + "proof_status": "bitcoin_attestation_present_unverified", + "snapshot_download_url": "/agent-api/historical-proof/2026-10-12/snapshot", + "snapshot_filename": "snapshot_2026-10-12.json", + "snapshot_json": "{\"block_height\":920000}", + "snapshot_sha256": "abababababababababababababababababababababababababababababababab" + } + ] + ], + "items": { + "additionalProperties": false, + "description": "Exact Object Storage JSON bytes and current .ots bytes, including in-place Bitcoin upgrades; proof binds snapshot_json, never changing live_metrics.", + "examples": [ + { + "bundle_download_url": "/agent-api/historical-proof/2026-10-12/download", + "date": "2026-10-12", + "ots_download_url": "/agent-api/historical-proof/2026-10-12/ots", + "ots_filename": "snapshot_2026-10-12.json.ots", + "ots_proof_base64": "AQID", + "ots_sha256": "cdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcd", + "proof_status": "bitcoin_attestation_present_unverified", + "snapshot_download_url": "/agent-api/historical-proof/2026-10-12/snapshot", + "snapshot_filename": "snapshot_2026-10-12.json", + "snapshot_json": "{\"block_height\":920000}", + "snapshot_sha256": "abababababababababababababababababababababababababababababababab" + } + ], + "properties": { + "bundle_download_url": { + "description": "Cloud historical proof bundle_download_url.", + "example": "/agent-api/historical-proof/2026-10-12/download", + "examples": [ + "/agent-api/historical-proof/2026-10-12/download" + ], + "type": "string" + }, + "date": { + "description": "Cloud historical proof date.", + "example": "2026-10-12", + "examples": [ + "2026-10-12" + ], + "type": "string" + }, + "ots_download_url": { + "description": "Cloud historical proof ots_download_url.", + "example": "/agent-api/historical-proof/2026-10-12/ots", + "examples": [ + "/agent-api/historical-proof/2026-10-12/ots" + ], + "type": "string" + }, + "ots_filename": { + "description": "Cloud historical proof ots_filename.", + "example": "snapshot_2026-10-12.json.ots", + "examples": [ + "snapshot_2026-10-12.json.ots" + ], + "type": "string" + }, + "ots_proof_base64": { + "description": "Cloud historical proof ots_proof_base64.", + "example": "AQID", + "examples": [ + "AQID" + ], + "type": "string" + }, + "ots_sha256": { + "description": "Cloud historical proof ots_sha256.", + "example": "cdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcd", + "examples": [ + "cdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcd" + ], + "type": "string" + }, + "proof_status": { + "description": "Cloud historical proof proof_status.", + "example": "bitcoin_attestation_present_unverified", + "examples": [ + "bitcoin_attestation_present_unverified" + ], + "type": "string" + }, + "snapshot_download_url": { + "description": "Cloud historical proof snapshot_download_url.", + "example": "/agent-api/historical-proof/2026-10-12/snapshot", + "examples": [ + "/agent-api/historical-proof/2026-10-12/snapshot" + ], + "type": "string" + }, + "snapshot_filename": { + "description": "Cloud historical proof snapshot_filename.", + "example": "snapshot_2026-10-12.json", + "examples": [ + "snapshot_2026-10-12.json" + ], + "type": "string" + }, + "snapshot_json": { + "description": "Cloud historical proof snapshot_json.", + "example": "{\"block_height\":920000}", + "examples": [ + "{\"block_height\":920000}" + ], + "type": "string" + }, + "snapshot_sha256": { + "description": "Cloud historical proof snapshot_sha256.", + "example": "abababababababababababababababababababababababababababababababab", + "examples": [ + "abababababababababababababababababababababababababababababababab" + ], + "type": "string" + } + }, + "required": [ + "date", + "snapshot_filename", + "ots_filename", + "snapshot_json", + "snapshot_sha256", + "ots_sha256", + "ots_proof_base64", + "proof_status", + "snapshot_download_url", + "ots_download_url", + "bundle_download_url" + ], + "type": "object" + }, + "type": "array" +} - added
Output schema / properties / live_metricsAdded value: +{ + "additionalProperties": true, + "description": "Hal Finney Horizon tracker and 15 J/TH thermodynamic energy calculation. Horizon = $10,000,000 / btc_price_usd (a price multiple, not a forecast). Estimated network power in watts = (network_hashrate_h_s / 1e12) * 15. Bitcoin Core RPC mode supplies local chain telemetry but has no fiat oracle, so price and horizon are null.", + "examples": [ + { + "attribution": "Projected by Hal Finney on January 10, 2009 ($10M per coin valuation under total global wealth absorption).", + "block_height": 920000, + "btc_price_usd": 80000, + "efficiency_baseline_j_th": 15, + "hal_finney_horizon_multiple": 125, + "hal_finney_horizon_target_usd": 10000000, + "network_energy_watts": 15000000000, + "network_hashrate_h_s": 1e+21, + "network_hashrate_th_s": 1000000000, + "observed_at_utc": "2026-10-12T00:00:00+00:00", + "snapshot_age_seconds": 2 + } + ], + "properties": { + "attribution": { + "description": "Current pipeline attribution; not a value reconstructed from the historical video index.", + "example": "Projected by Hal Finney on January 10, 2009 ($10M per coin valuation under total global wealth absorption).", + "examples": [ + "Projected by Hal Finney on January 10, 2009 ($10M per coin valuation under total global wealth absorption)." + ], + "type": "string" + }, + "block_height": { + "description": "Current pipeline block_height; not a value reconstructed from the historical video index.", + "example": 920000, + "examples": [ + 920000 + ], + "type": "number" + }, + "btc_price_usd": { + "description": "Current pipeline btc_price_usd; not a value reconstructed from the historical video index.", + "example": 80000, + "examples": [ + 80000 + ], + "type": [ + "number", + "null" + ] + }, + "efficiency_baseline_j_th": { + "description": "Current pipeline efficiency_baseline_j_th; not a value reconstructed from the historical video index.", + "example": 15, + "examples": [ + 15 + ], + "type": "number" + }, + "hal_finney_horizon_multiple": { + "description": "Current pipeline hal_finney_horizon_multiple; not a value reconstructed from the historical video index.", + "example": 125, + "examples": [ + 125 + ], + "type": [ + "number", + "null" + ] + }, + "hal_finney_horizon_target_usd": { + "description": "Current pipeline hal_finney_horizon_target_usd; not a value reconstructed from the historical video index.", + "example": 10000000, + "examples": [ + 10000000 + ], + "type": "number" + }, + "network_energy_watts": { + "description": "Current pipeline network_energy_watts; not a value reconstructed from the historical video index.", + "example": 15000000000, + "examples": [ + 15000000000 + ], + "type": "number" + }, + "network_hashrate_h_s": { + "description": "Current pipeline network_hashrate_h_s; not a value reconstructed from the historical video index.", + "example": 1e+21, + "examples": [ + 1e+21 + ], + "type": "number" + }, + "network_hashrate_th_s": { + "description": "Current pipeline network_hashrate_th_s; not a value reconstructed from the historical video index.", + "example": 1000000000, + "examples": [ + 1000000000 + ], + "type": "number" + }, + "observed_at_utc": { + "description": "Current pipeline observed_at_utc; not a value reconstructed from the historical video index.", + "example": "2026-10-12T00:00:00+00:00", + "examples": [ + "2026-10-12T00:00:00+00:00" + ], + "type": "string" + }, + "snapshot_age_seconds": { + "description": "Current pipeline snapshot_age_seconds; not a value reconstructed from the historical video index.", + "example": 2, + "examples": [ + 2 + ], + "type": "number" + } + }, + "required": [ + "block_height", + "observed_at_utc", + "btc_price_usd", + "hal_finney_horizon_target_usd", + "hal_finney_horizon_multiple", + "attribution", + "network_hashrate_h_s", + "network_hashrate_th_s", + "network_energy_watts", + "efficiency_baseline_j_th", + "snapshot_age_seconds" + ], + "type": "object" +} - added
Output schema / properties / proofAvailableAdded value: +{ + "description": "True only if an archived JSON/OTS pair was returned.", + "example": true, + "examples": [ + true + ], + "type": "boolean" +} - added
Output schema / properties / proof_coverageAdded value: +{ + "description": "Only exact archived JSON is covered by each receipt, never live metrics.", + "example": "Exact archived snapshot_json only; changing live_metrics are not covered.", + "examples": [ + "Exact archived snapshot_json only; changing live_metrics are not covered." + ], + "type": "string" +} - changed
Output schema / properties / records / descriptionPrevious value: -"Validated telemetry records matching the requested range. Example: [{\"day\":422,\"title\":\"Bitcoin Stratigraphy Day 422\",\"video_id\":\"dQw4w9WgXcQ\",\"transcript_summary\":\"Mining economics and thermodynamic support strengthened.\",\"quantitative_alpha\":{\"target_multiplier\":125.83,\"difficulty_epoch_progress\":\"73.42%\",\"thermodynamic_signal\":\"accumulation\"}}]."New value: +"Selected actual live or UTC-archived complete pipeline snapshots." - removed
Output schema / properties / records / exampleRemoved value: -[ - { - "day": 422, - "quantitative_alpha": { - "difficulty_epoch_progress": "73.42%", - "target_multiplier": 125.83, - "thermodynamic_signal": "accumulation" - }, - "title": "Bitcoin Stratigraphy Day 422", - "transcript_summary": "Mining economics and thermodynamic support strengthened.", - "video_id": "dQw4w9WgXcQ" - } -] - changed
Output schema / properties / records / examplesPrevious value: -[ - [ - { - "day": 422, - "quantitative_alpha": { - "difficulty_epoch_progress": "73.42%", - "target_multiplier": 125.83, - "thermodynamic_signal": "accumulation" - }, - "title": "Bitcoin Stratigraphy Day 422", - "transcript_summary": "Mining economics and thermodynamic support strengthened.", - "video_id": "dQw4w9WgXcQ" - } - ] -]New value: +[ + [ + { + "attribution": "Projected by Hal Finney on January 10, 2009 ($10M per coin valuation under total global wealth absorption).", + "block_height": 920000, + "btc_price_usd": 80000, + "efficiency_baseline_j_th": 15, + "hal_finney_horizon_multiple": 125, + "hal_finney_horizon_target_usd": 10000000, + "network_energy_watts": 15000000000, + "network_hashrate_h_s": 1e+21, + "network_hashrate_th_s": 1000000000, + "observed_at_utc": "2026-10-12T00:00:00+00:00", + "snapshot_age_seconds": 2 + } + ] +] - changed
Output schema / properties / records / items / additionalPropertiesPrevious value: -falseNew value: +true - changed
Output schema / properties / records / items / descriptionPrevious value: -"A validated Bitcoin Stratigraphy telemetry entry."New value: +"Hal Finney Horizon tracker and 15 J/TH thermodynamic energy calculation. Horizon = $10,000,000 / btc_price_usd (a price multiple, not a forecast). Estimated network power in watts = (network_hashrate_h_s / 1e12) * 15. Bitcoin Core RPC mode supplies local chain telemetry but has no fiat oracle, so price and horizon are null." - changed
Output schema / properties / records / items / examplesPrevious value: -[ - { - "day": 422, - "quantitative_alpha": { - "difficulty_epoch_progress": "73.42%", - "target_multiplier": 125.83, - "thermodynamic_signal": "accumulation" - }, - "title": "Bitcoin Stratigraphy Day 422", - "transcript_summary": "Mining economics and thermodynamic support strengthened.", - "video_id": "dQw4w9WgXcQ" - } -]New value: +[ + { + "attribution": "Projected by Hal Finney on January 10, 2009 ($10M per coin valuation under total global wealth absorption).", + "block_height": 920000, + "btc_price_usd": 80000, + "efficiency_baseline_j_th": 15, + "hal_finney_horizon_multiple": 125, + "hal_finney_horizon_target_usd": 10000000, + "network_energy_watts": 15000000000, + "network_hashrate_h_s": 1e+21, + "network_hashrate_th_s": 1000000000, + "observed_at_utc": "2026-10-12T00:00:00+00:00", + "snapshot_age_seconds": 2 + } +] - added
Output schema / properties / records / items / properties / attributionAdded value: +{ + "description": "Current pipeline attribution; not a value reconstructed from the historical video index.", + "example": "Projected by Hal Finney on January 10, 2009 ($10M per coin valuation under total global wealth absorption).", + "examples": [ + "Projected by Hal Finney on January 10, 2009 ($10M per coin valuation under total global wealth absorption)." + ], + "type": "string" +} - added
Output schema / properties / records / items / properties / block_heightAdded value: +{ + "description": "Current pipeline block_height; not a value reconstructed from the historical video index.", + "example": 920000, + "examples": [ + 920000 + ], + "type": "number" +} - added
Output schema / properties / records / items / properties / btc_price_usdAdded value: +{ + "description": "Current pipeline btc_price_usd; not a value reconstructed from the historical video index.", + "example": 80000, + "examples": [ + 80000 + ], + "type": [ + "number", + "null" + ] +} - removed
Output schema / properties / records / items / properties / dayRemoved value: -{ - "description": "One-based day number in the Bitcoin Stratigraphy dataset. Example: 422.", - "example": 422, - "examples": [ - 422 - ], - "type": "integer" -} - added
Output schema / properties / records / items / properties / efficiency_baseline_j_thAdded value: +{ + "description": "Current pipeline efficiency_baseline_j_th; not a value reconstructed from the historical video index.", + "example": 15, + "examples": [ + 15 + ], + "type": "number" +} - added
Output schema / properties / records / items / properties / hal_finney_horizon_multipleAdded value: +{ + "description": "Current pipeline hal_finney_horizon_multiple; not a value reconstructed from the historical video index.", + "example": 125, + "examples": [ + 125 + ], + "type": [ + "number", + "null" + ] +} - added
Output schema / properties / records / items / properties / hal_finney_horizon_target_usdAdded value: +{ + "description": "Current pipeline hal_finney_horizon_target_usd; not a value reconstructed from the historical video index.", + "example": 10000000, + "examples": [ + 10000000 + ], + "type": "number" +} - added
Output schema / properties / records / items / properties / network_energy_wattsAdded value: +{ + "description": "Current pipeline network_energy_watts; not a value reconstructed from the historical video index.", + "example": 15000000000, + "examples": [ + 15000000000 + ], + "type": "number" +} - added
Output schema / properties / records / items / properties / network_hashrate_h_sAdded value: +{ + "description": "Current pipeline network_hashrate_h_s; not a value reconstructed from the historical video index.", + "example": 1e+21, + "examples": [ + 1e+21 + ], + "type": "number" +} - added
Output schema / properties / records / items / properties / network_hashrate_th_sAdded value: +{ + "description": "Current pipeline network_hashrate_th_s; not a value reconstructed from the historical video index.", + "example": 1000000000, + "examples": [ + 1000000000 + ], + "type": "number" +} - added
Output schema / properties / records / items / properties / observed_at_utcAdded value: +{ + "description": "Current pipeline observed_at_utc; not a value reconstructed from the historical video index.", + "example": "2026-10-12T00:00:00+00:00", + "examples": [ + "2026-10-12T00:00:00+00:00" + ], + "type": "string" +} - removed
Output schema / properties / records / items / properties / quantitative_alphaRemoved value: -{ - "additionalProperties": false, - "description": "Quantitative thermodynamic indicators for one entry.", - "examples": [ - { - "difficulty_epoch_progress": "73.42%", - "target_multiplier": 125.83, - "thermodynamic_signal": "accumulation" - } - ], - "properties": { - "difficulty_epoch_progress": { - "description": "Bitcoin mining difficulty epoch progress formatted as a percentage. Example: \"73.42%\".", - "example": "73.42%", - "examples": [ - "73.42%" - ], - "type": "string" - }, - "target_multiplier": { - "description": "Thermodynamic valuation multiplier derived for this day. Example: 125.83.", - "example": 125.83, - "examples": [ - 125.83 - ], - "type": "number" - }, - "thermodynamic_signal": { - "description": "Human-readable thermodynamic market signal. Example: \"accumulation\".", - "example": "accumulation", - "examples": [ - "accumulation" - ], - "type": "string" - } - }, - "type": "object" -} - added
Output schema / properties / records / items / properties / snapshot_age_secondsAdded value: +{ + "description": "Current pipeline snapshot_age_seconds; not a value reconstructed from the historical video index.", + "example": 2, + "examples": [ + 2 + ], + "type": "number" +} - removed
Output schema / properties / records / items / properties / titleRemoved value: -{ - "description": "Title of the source research episode. Example: \"Bitcoin Stratigraphy Day 422\".", - "example": "Bitcoin Stratigraphy Day 422", - "examples": [ - "Bitcoin Stratigraphy Day 422" - ], - "type": "string" -} - removed
Output schema / properties / records / items / properties / transcript_summaryRemoved value: -{ - "description": "Concise summary of the source transcript and market interpretation. Example: \"Mining economics and thermodynamic support strengthened.\".", - "example": "Mining economics and thermodynamic support strengthened.", - "examples": [ - "Mining economics and thermodynamic support strengthened." - ], - "type": "string" -} - removed
Output schema / properties / records / items / properties / video_idRemoved value: -{ - "description": "Source video identifier used to trace research provenance. Example: \"dQw4w9WgXcQ\".", - "example": "dQw4w9WgXcQ", - "examples": [ - "dQw4w9WgXcQ" - ], - "type": "string" -} - changed
Output schema / properties / records / items / requiredPrevious value: -[ - "day", - "title", - "video_id", - "transcript_summary", - "quantitative_alpha" -]New value: +[ + "block_height", + "observed_at_utc", + "btc_price_usd", + "hal_finney_horizon_target_usd", + "hal_finney_horizon_multiple", + "attribution", + "network_hashrate_h_s", + "network_hashrate_th_s", + "network_energy_watts", + "efficiency_baseline_j_th", + "snapshot_age_seconds" +] - changed
Output schema / requiredPrevious value: -[ - "records" -]New value: +[ + "records", + "live_metrics", + "historical_proofs", + "proofAvailable", + "archive_state", + "proof_coverage" +]
- Changed
stratigraphy.get_diff23 fields changed- changed
Output schema / descriptionPrevious value: -"Signed difference between two indexed daily records. Percent change is rounded to two decimal places; source data provides a target multiplier, not a direct difficulty or energy measurement."New value: +"Paid signed deltas between real-height live/archived snapshots, including 15 J/TH power change; includes live metrics and exact archived proof bytes. Semantic discovery: Hal Finney Horizon tracker = $10,000,000 / BTC USD price; this is a valuation multiple, not a time-to-price forecast. The 15 J/TH thermodynamic energy calculation estimates watts as (network hashrate H/s / 1e12) * 15, not measured electricity. Sovereign Node RPC telemetry uses local Bitcoin Core; price and horizon are unavailable without a fiat quote." - changed
Output schema / examplesPrevious value: -[ - { - "delta": { - "heightDelta": 144, - "multiplierDelta": 0.33, - "percentageChange": "0.26%", - "timeSpanDays": 1 - }, - "from": { - "date": "2026-09-08", - "height": 919856, - "target_multiplier": 125.5 - }, - "to": { - "date": "2026-09-09", - "height": 920000, - "target_multiplier": 125.83 - } - } -]New value: +[ + { + "archive_state": "available", + "delta": { + "energyWattsDelta": 14000000000, + "heightDelta": 100, + "multiplierDelta": -1, + "percentageChange": "-0.79%", + "timeSpanDays": 1 + }, + "from": { + "date": "2026-10-12T00:00:00+00:00", + "height": 919900, + "network_energy_watts": 1000000000, + "target_multiplier": 126 + }, + "historical_proofs": [ + { + "bundle_download_url": "/agent-api/historical-proof/2026-10-12/download", + "date": "2026-10-12", + "ots_download_url": "/agent-api/historical-proof/2026-10-12/ots", + "ots_filename": "snapshot_2026-10-12.json.ots", + "ots_proof_base64": "AQID", + "ots_sha256": "cdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcd", + "proof_status": "bitcoin_attestation_present_unverified", + "snapshot_download_url": "/agent-api/historical-proof/2026-10-12/snapshot", + "snapshot_filename": "snapshot_2026-10-12.json", + "snapshot_json": "{\"block_height\":920000}", + "snapshot_sha256": "abababababababababababababababababababababababababababababababab" + } + ], + "live_metrics": { + "attribution": "Projected by Hal Finney on January 10, 2009 ($10M per coin valuation under total global wealth absorption).", + "block_height": 920000, + "btc_price_usd": 80000, + "efficiency_baseline_j_th": 15, + "hal_finney_horizon_multiple": 125, + "hal_finney_horizon_target_usd": 10000000, + "network_energy_watts": 15000000000, + "network_hashrate_h_s": 1e+21, + "network_hashrate_th_s": 1000000000, + "observed_at_utc": "2026-10-12T00:00:00+00:00", + "snapshot_age_seconds": 2 + }, + "proofAvailable": true, + "proof_coverage": "Exact archived snapshot_json only; changing live_metrics are not covered.", + "to": { + "date": "2026-10-12T00:00:00+00:00", + "height": 920000, + "network_energy_watts": 15000000000, + "target_multiplier": 125 + } + } +] - added
Output schema / properties / archive_stateAdded value: +{ + "description": "available or no_archives; no synthetic receipt is created.", + "example": "available", + "examples": [ + "available" + ], + "type": "string" +} - removed
Output schema / properties / delta / additionalPropertiesRemoved value: -false - changed
Output schema / properties / delta / descriptionPrevious value: -"Signed change from the starting indexed entry to the ending entry."New value: +"Signed arithmetic deltas; watts derive from the assumed 15 J/TH baseline." - changed
Output schema / properties / delta / examplesPrevious value: -[ - { - "heightDelta": 144, - "multiplierDelta": 0.33, - "percentageChange": "0.26%", - "timeSpanDays": 1 - } -]New value: +[ + { + "heightDelta": 100 + } +] - removed
Output schema / properties / delta / propertiesRemoved value: -{ - "heightDelta": { - "description": "Ending indexed height minus starting indexed height. Example: 144.", - "example": 144, - "examples": [ - 144 - ], - "type": "integer" - }, - "multiplierDelta": { - "description": "Ending stored target multiplier minus starting multiplier. Example: 0.33.", - "example": 0.33, - "examples": [ - 0.33 - ], - "type": "number" - }, - "percentageChange": { - "description": "Multiplier change divided by starting multiplier, formatted as a percentage to two decimal places. Example: \"0.26%\".", - "example": "0.26%", - "examples": [ - "0.26%" - ], - "type": "string" - }, - "timeSpanDays": { - "description": "Signed number of UTC calendar days between indexed dates. Example: 1.", - "example": 1, - "examples": [ - 1 - ], - "type": "integer" - } -} - removed
Output schema / properties / delta / requiredRemoved value: -[ - "heightDelta", - "multiplierDelta", - "percentageChange", - "timeSpanDays" -] - removed
Output schema / properties / from / additionalPropertiesRemoved value: -false - changed
Output schema / properties / from / descriptionPrevious value: -"One indexed daily stratum; the height is a deterministic dataset index, not a live Bitcoin block height."New value: +"Real captured from-target values." - changed
Output schema / properties / from / examplesPrevious value: -[ - { - "date": "2026-09-08", - "height": 919856, - "target_multiplier": 125.5 - } -]New value: +[ + { + "height": 919900 + } +] - removed
Output schema / properties / from / propertiesRemoved value: -{ - "date": { - "description": "Indexed UTC calendar date. Constraints: format: date. Example: \"2026-09-08\".", - "example": "2026-09-08", - "examples": [ - "2026-09-08" - ], - "format": "date", - "type": "string" - }, - "height": { - "description": "Deterministic indexed height for the dataset day. Example: 919856.", - "example": 919856, - "examples": [ - 919856 - ], - "type": "integer" - }, - "target_multiplier": { - "description": "Stored target multiplier; not a measured energy quantity. Example: 125.5.", - "example": 125.5, - "examples": [ - 125.5 - ], - "type": "number" - } -} - removed
Output schema / properties / from / requiredRemoved value: -[ - "height", - "date", - "target_multiplier" -] - added
Output schema / properties / historical_proofsAdded value: +{ + "description": "All archived snapshots returned by this call, or latest available archive for a live-only result.", + "examples": [ + [ + { + "bundle_download_url": "/agent-api/historical-proof/2026-10-12/download", + "date": "2026-10-12", + "ots_download_url": "/agent-api/historical-proof/2026-10-12/ots", + "ots_filename": "snapshot_2026-10-12.json.ots", + "ots_proof_base64": "AQID", + "ots_sha256": "cdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcd", + "proof_status": "bitcoin_attestation_present_unverified", + "snapshot_download_url": "/agent-api/historical-proof/2026-10-12/snapshot", + "snapshot_filename": "snapshot_2026-10-12.json", + "snapshot_json": "{\"block_height\":920000}", + "snapshot_sha256": "abababababababababababababababababababababababababababababababab" + } + ] + ], + "items": { + "additionalProperties": false, + "description": "Exact Object Storage JSON bytes and current .ots bytes, including in-place Bitcoin upgrades; proof binds snapshot_json, never changing live_metrics.", + "examples": [ + { + "bundle_download_url": "/agent-api/historical-proof/2026-10-12/download", + "date": "2026-10-12", + "ots_download_url": "/agent-api/historical-proof/2026-10-12/ots", + "ots_filename": "snapshot_2026-10-12.json.ots", + "ots_proof_base64": "AQID", + "ots_sha256": "cdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcd", + "proof_status": "bitcoin_attestation_present_unverified", + "snapshot_download_url": "/agent-api/historical-proof/2026-10-12/snapshot", + "snapshot_filename": "snapshot_2026-10-12.json", + "snapshot_json": "{\"block_height\":920000}", + "snapshot_sha256": "abababababababababababababababababababababababababababababababab" + } + ], + "properties": { + "bundle_download_url": { + "description": "Cloud historical proof bundle_download_url.", + "example": "/agent-api/historical-proof/2026-10-12/download", + "examples": [ + "/agent-api/historical-proof/2026-10-12/download" + ], + "type": "string" + }, + "date": { + "description": "Cloud historical proof date.", + "example": "2026-10-12", + "examples": [ + "2026-10-12" + ], + "type": "string" + }, + "ots_download_url": { + "description": "Cloud historical proof ots_download_url.", + "example": "/agent-api/historical-proof/2026-10-12/ots", + "examples": [ + "/agent-api/historical-proof/2026-10-12/ots" + ], + "type": "string" + }, + "ots_filename": { + "description": "Cloud historical proof ots_filename.", + "example": "snapshot_2026-10-12.json.ots", + "examples": [ + "snapshot_2026-10-12.json.ots" + ], + "type": "string" + }, + "ots_proof_base64": { + "description": "Cloud historical proof ots_proof_base64.", + "example": "AQID", + "examples": [ + "AQID" + ], + "type": "string" + }, + "ots_sha256": { + "description": "Cloud historical proof ots_sha256.", + "example": "cdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcd", + "examples": [ + "cdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcd" + ], + "type": "string" + }, + "proof_status": { + "description": "Cloud historical proof proof_status.", + "example": "bitcoin_attestation_present_unverified", + "examples": [ + "bitcoin_attestation_present_unverified" + ], + "type": "string" + }, + "snapshot_download_url": { + "description": "Cloud historical proof snapshot_download_url.", + "example": "/agent-api/historical-proof/2026-10-12/snapshot", + "examples": [ + "/agent-api/historical-proof/2026-10-12/snapshot" + ], + "type": "string" + }, + "snapshot_filename": { + "description": "Cloud historical proof snapshot_filename.", + "example": "snapshot_2026-10-12.json", + "examples": [ + "snapshot_2026-10-12.json" + ], + "type": "string" + }, + "snapshot_json": { + "description": "Cloud historical proof snapshot_json.", + "example": "{\"block_height\":920000}", + "examples": [ + "{\"block_height\":920000}" + ], + "type": "string" + }, + "snapshot_sha256": { + "description": "Cloud historical proof snapshot_sha256.", + "example": "abababababababababababababababababababababababababababababababab", + "examples": [ + "abababababababababababababababababababababababababababababababab" + ], + "type": "string" + } + }, + "required": [ + "date", + "snapshot_filename", + "ots_filename", + "snapshot_json", + "snapshot_sha256", + "ots_sha256", + "ots_proof_base64", + "proof_status", + "snapshot_download_url", + "ots_download_url", + "bundle_download_url" + ], + "type": "object" + }, + "type": "array" +} - added
Output schema / properties / live_metricsAdded value: +{ + "additionalProperties": true, + "description": "Hal Finney Horizon tracker and 15 J/TH thermodynamic energy calculation. Horizon = $10,000,000 / btc_price_usd (a price multiple, not a forecast). Estimated network power in watts = (network_hashrate_h_s / 1e12) * 15. Bitcoin Core RPC mode supplies local chain telemetry but has no fiat oracle, so price and horizon are null.", + "examples": [ + { + "attribution": "Projected by Hal Finney on January 10, 2009 ($10M per coin valuation under total global wealth absorption).", + "block_height": 920000, + "btc_price_usd": 80000, + "efficiency_baseline_j_th": 15, + "hal_finney_horizon_multiple": 125, + "hal_finney_horizon_target_usd": 10000000, + "network_energy_watts": 15000000000, + "network_hashrate_h_s": 1e+21, + "network_hashrate_th_s": 1000000000, + "observed_at_utc": "2026-10-12T00:00:00+00:00", + "snapshot_age_seconds": 2 + } + ], + "properties": { + "attribution": { + "description": "Current pipeline attribution; not a value reconstructed from the historical video index.", + "example": "Projected by Hal Finney on January 10, 2009 ($10M per coin valuation under total global wealth absorption).", + "examples": [ + "Projected by Hal Finney on January 10, 2009 ($10M per coin valuation under total global wealth absorption)." + ], + "type": "string" + }, + "block_height": { + "description": "Current pipeline block_height; not a value reconstructed from the historical video index.", + "example": 920000, + "examples": [ + 920000 + ], + "type": "number" + }, + "btc_price_usd": { + "description": "Current pipeline btc_price_usd; not a value reconstructed from the historical video index.", + "example": 80000, + "examples": [ + 80000 + ], + "type": [ + "number", + "null" + ] + }, + "efficiency_baseline_j_th": { + "description": "Current pipeline efficiency_baseline_j_th; not a value reconstructed from the historical video index.", + "example": 15, + "examples": [ + 15 + ], + "type": "number" + }, + "hal_finney_horizon_multiple": { + "description": "Current pipeline hal_finney_horizon_multiple; not a value reconstructed from the historical video index.", + "example": 125, + "examples": [ + 125 + ], + "type": [ + "number", + "null" + ] + }, + "hal_finney_horizon_target_usd": { + "description": "Current pipeline hal_finney_horizon_target_usd; not a value reconstructed from the historical video index.", + "example": 10000000, + "examples": [ + 10000000 + ], + "type": "number" + }, + "network_energy_watts": { + "description": "Current pipeline network_energy_watts; not a value reconstructed from the historical video index.", + "example": 15000000000, + "examples": [ + 15000000000 + ], + "type": "number" + }, + "network_hashrate_h_s": { + "description": "Current pipeline network_hashrate_h_s; not a value reconstructed from the historical video index.", + "example": 1e+21, + "examples": [ + 1e+21 + ], + "type": "number" + }, + "network_hashrate_th_s": { + "description": "Current pipeline network_hashrate_th_s; not a value reconstructed from the historical video index.", + "example": 1000000000, + "examples": [ + 1000000000 + ], + "type": "number" + }, + "observed_at_utc": { + "description": "Current pipeline observed_at_utc; not a value reconstructed from the historical video index.", + "example": "2026-10-12T00:00:00+00:00", + "examples": [ + "2026-10-12T00:00:00+00:00" + ], + "type": "string" + }, + "snapshot_age_seconds": { + "description": "Current pipeline snapshot_age_seconds; not a value reconstructed from the historical video index.", + "example": 2, + "examples": [ + 2 + ], + "type": "number" + } + }, + "required": [ + "block_height", + "observed_at_utc", + "btc_price_usd", + "hal_finney_horizon_target_usd", + "hal_finney_horizon_multiple", + "attribution", + "network_hashrate_h_s", + "network_hashrate_th_s", + "network_energy_watts", + "efficiency_baseline_j_th", + "snapshot_age_seconds" + ], + "type": "object" +} - added
Output schema / properties / proofAvailableAdded value: +{ + "description": "True only if an archived JSON/OTS pair was returned.", + "example": true, + "examples": [ + true + ], + "type": "boolean" +} - added
Output schema / properties / proof_coverageAdded value: +{ + "description": "Only exact archived JSON is covered by each receipt, never live metrics.", + "example": "Exact archived snapshot_json only; changing live_metrics are not covered.", + "examples": [ + "Exact archived snapshot_json only; changing live_metrics are not covered." + ], + "type": "string" +} - removed
Output schema / properties / to / additionalPropertiesRemoved value: -false - changed
Output schema / properties / to / descriptionPrevious value: -"One indexed daily stratum; the height is a deterministic dataset index, not a live Bitcoin block height."New value: +"Real captured to-target values." - changed
Output schema / properties / to / examplesPrevious value: -[ - { - "date": "2026-09-08", - "height": 919856, - "target_multiplier": 125.5 - } -]New value: +[ + { + "height": 920000 + } +] - removed
Output schema / properties / to / propertiesRemoved value: -{ - "date": { - "description": "Indexed UTC calendar date. Constraints: format: date. Example: \"2026-09-08\".", - "example": "2026-09-08", - "examples": [ - "2026-09-08" - ], - "format": "date", - "type": "string" - }, - "height": { - "description": "Deterministic indexed height for the dataset day. Example: 919856.", - "example": 919856, - "examples": [ - 919856 - ], - "type": "integer" - }, - "target_multiplier": { - "description": "Stored target multiplier; not a measured energy quantity. Example: 125.5.", - "example": 125.5, - "examples": [ - 125.5 - ], - "type": "number" - } -} - removed
Output schema / properties / to / requiredRemoved value: -[ - "height", - "date", - "target_multiplier" -] - changed
Output schema / requiredPrevious value: -[ - "from", - "to", - "delta" -]New value: +[ + "from", + "to", + "delta", + "live_metrics", + "historical_proofs", + "proofAvailable", + "archive_state", + "proof_coverage" +]
- Changed
stratigraphy.get_digest14 fields changed- changed
Output schema / descriptionPrevious value: -"Compressed digest plus a flag indicating whether source entries carry per-record proofs; a date range returns an array of results in ascending date order."New value: +"Paid SHA-256 fingerprints of actual cloud JSON bytes or current live pipeline JSON, with full live telemetry and associated archived receipts alongside them. Semantic discovery: Hal Finney Horizon tracker = $10,000,000 / BTC USD price; this is a valuation multiple, not a time-to-price forecast. The 15 J/TH thermodynamic energy calculation estimates watts as (network hashrate H/s / 1e12) * 15, not measured electricity. Sovereign Node RPC telemetry uses local Bitcoin Core; price and horizon are unavailable without a fiat quote." - changed
Output schema / examplesPrevious value: -[ - { - "proofAvailable": false, - "result": "HEIGHT:920000|DATE:2026-09-09|TM:125.83|HASH:0123456789abcdef" - } -]New value: +[ + { + "archive_state": "available", + "historical_proofs": [ + { + "bundle_download_url": "/agent-api/historical-proof/2026-10-12/download", + "date": "2026-10-12", + "ots_download_url": "/agent-api/historical-proof/2026-10-12/ots", + "ots_filename": "snapshot_2026-10-12.json.ots", + "ots_proof_base64": "AQID", + "ots_sha256": "cdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcd", + "proof_status": "bitcoin_attestation_present_unverified", + "snapshot_download_url": "/agent-api/historical-proof/2026-10-12/snapshot", + "snapshot_filename": "snapshot_2026-10-12.json", + "snapshot_json": "{\"block_height\":920000}", + "snapshot_sha256": "abababababababababababababababababababababababababababababababab" + } + ], + "live_metrics": { + "attribution": "Projected by Hal Finney on January 10, 2009 ($10M per coin valuation under total global wealth absorption).", + "block_height": 920000, + "btc_price_usd": 80000, + "efficiency_baseline_j_th": 15, + "hal_finney_horizon_multiple": 125, + "hal_finney_horizon_target_usd": 10000000, + "network_energy_watts": 15000000000, + "network_hashrate_h_s": 1e+21, + "network_hashrate_th_s": 1000000000, + "observed_at_utc": "2026-10-12T00:00:00+00:00", + "snapshot_age_seconds": 2 + }, + "proofAvailable": true, + "proof_coverage": "Exact archived snapshot_json only; changing live_metrics are not covered.", + "result": "HEIGHT:920000|DATE:2026-10-12T00:00:00+00:00|TM:125|HASH:abababababababababababababababababababababababababababababababab" + } +] - added
Output schema / properties / archive_stateAdded value: +{ + "description": "available or no_archives; no synthetic receipt is created.", + "example": "available", + "examples": [ + "available" + ], + "type": "string" +} - added
Output schema / properties / historical_proofsAdded value: +{ + "description": "All archived snapshots returned by this call, or latest available archive for a live-only result.", + "examples": [ + [ + { + "bundle_download_url": "/agent-api/historical-proof/2026-10-12/download", + "date": "2026-10-12", + "ots_download_url": "/agent-api/historical-proof/2026-10-12/ots", + "ots_filename": "snapshot_2026-10-12.json.ots", + "ots_proof_base64": "AQID", + "ots_sha256": "cdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcd", + "proof_status": "bitcoin_attestation_present_unverified", + "snapshot_download_url": "/agent-api/historical-proof/2026-10-12/snapshot", + "snapshot_filename": "snapshot_2026-10-12.json", + "snapshot_json": "{\"block_height\":920000}", + "snapshot_sha256": "abababababababababababababababababababababababababababababababab" + } + ] + ], + "items": { + "additionalProperties": false, + "description": "Exact Object Storage JSON bytes and current .ots bytes, including in-place Bitcoin upgrades; proof binds snapshot_json, never changing live_metrics.", + "examples": [ + { + "bundle_download_url": "/agent-api/historical-proof/2026-10-12/download", + "date": "2026-10-12", + "ots_download_url": "/agent-api/historical-proof/2026-10-12/ots", + "ots_filename": "snapshot_2026-10-12.json.ots", + "ots_proof_base64": "AQID", + "ots_sha256": "cdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcd", + "proof_status": "bitcoin_attestation_present_unverified", + "snapshot_download_url": "/agent-api/historical-proof/2026-10-12/snapshot", + "snapshot_filename": "snapshot_2026-10-12.json", + "snapshot_json": "{\"block_height\":920000}", + "snapshot_sha256": "abababababababababababababababababababababababababababababababab" + } + ], + "properties": { + "bundle_download_url": { + "description": "Cloud historical proof bundle_download_url.", + "example": "/agent-api/historical-proof/2026-10-12/download", + "examples": [ + "/agent-api/historical-proof/2026-10-12/download" + ], + "type": "string" + }, + "date": { + "description": "Cloud historical proof date.", + "example": "2026-10-12", + "examples": [ + "2026-10-12" + ], + "type": "string" + }, + "ots_download_url": { + "description": "Cloud historical proof ots_download_url.", + "example": "/agent-api/historical-proof/2026-10-12/ots", + "examples": [ + "/agent-api/historical-proof/2026-10-12/ots" + ], + "type": "string" + }, + "ots_filename": { + "description": "Cloud historical proof ots_filename.", + "example": "snapshot_2026-10-12.json.ots", + "examples": [ + "snapshot_2026-10-12.json.ots" + ], + "type": "string" + }, + "ots_proof_base64": { + "description": "Cloud historical proof ots_proof_base64.", + "example": "AQID", + "examples": [ + "AQID" + ], + "type": "string" + }, + "ots_sha256": { + "description": "Cloud historical proof ots_sha256.", + "example": "cdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcd", + "examples": [ + "cdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcd" + ], + "type": "string" + }, + "proof_status": { + "description": "Cloud historical proof proof_status.", + "example": "bitcoin_attestation_present_unverified", + "examples": [ + "bitcoin_attestation_present_unverified" + ], + "type": "string" + }, + "snapshot_download_url": { + "description": "Cloud historical proof snapshot_download_url.", + "example": "/agent-api/historical-proof/2026-10-12/snapshot", + "examples": [ + "/agent-api/historical-proof/2026-10-12/snapshot" + ], + "type": "string" + }, + "snapshot_filename": { + "description": "Cloud historical proof snapshot_filename.", + "example": "snapshot_2026-10-12.json", + "examples": [ + "snapshot_2026-10-12.json" + ], + "type": "string" + }, + "snapshot_json": { + "description": "Cloud historical proof snapshot_json.", + "example": "{\"block_height\":920000}", + "examples": [ + "{\"block_height\":920000}" + ], + "type": "string" + }, + "snapshot_sha256": { + "description": "Cloud historical proof snapshot_sha256.", + "example": "abababababababababababababababababababababababababababababababab", + "examples": [ + "abababababababababababababababababababababababababababababababab" + ], + "type": "string" + } + }, + "required": [ + "date", + "snapshot_filename", + "ots_filename", + "snapshot_json", + "snapshot_sha256", + "ots_sha256", + "ots_proof_base64", + "proof_status", + "snapshot_download_url", + "ots_download_url", + "bundle_download_url" + ], + "type": "object" + }, + "type": "array" +} - added
Output schema / properties / live_metricsAdded value: +{ + "additionalProperties": true, + "description": "Hal Finney Horizon tracker and 15 J/TH thermodynamic energy calculation. Horizon = $10,000,000 / btc_price_usd (a price multiple, not a forecast). Estimated network power in watts = (network_hashrate_h_s / 1e12) * 15. Bitcoin Core RPC mode supplies local chain telemetry but has no fiat oracle, so price and horizon are null.", + "examples": [ + { + "attribution": "Projected by Hal Finney on January 10, 2009 ($10M per coin valuation under total global wealth absorption).", + "block_height": 920000, + "btc_price_usd": 80000, + "efficiency_baseline_j_th": 15, + "hal_finney_horizon_multiple": 125, + "hal_finney_horizon_target_usd": 10000000, + "network_energy_watts": 15000000000, + "network_hashrate_h_s": 1e+21, + "network_hashrate_th_s": 1000000000, + "observed_at_utc": "2026-10-12T00:00:00+00:00", + "snapshot_age_seconds": 2 + } + ], + "properties": { + "attribution": { + "description": "Current pipeline attribution; not a value reconstructed from the historical video index.", + "example": "Projected by Hal Finney on January 10, 2009 ($10M per coin valuation under total global wealth absorption).", + "examples": [ + "Projected by Hal Finney on January 10, 2009 ($10M per coin valuation under total global wealth absorption)." + ], + "type": "string" + }, + "block_height": { + "description": "Current pipeline block_height; not a value reconstructed from the historical video index.", + "example": 920000, + "examples": [ + 920000 + ], + "type": "number" + }, + "btc_price_usd": { + "description": "Current pipeline btc_price_usd; not a value reconstructed from the historical video index.", + "example": 80000, + "examples": [ + 80000 + ], + "type": [ + "number", + "null" + ] + }, + "efficiency_baseline_j_th": { + "description": "Current pipeline efficiency_baseline_j_th; not a value reconstructed from the historical video index.", + "example": 15, + "examples": [ + 15 + ], + "type": "number" + }, + "hal_finney_horizon_multiple": { + "description": "Current pipeline hal_finney_horizon_multiple; not a value reconstructed from the historical video index.", + "example": 125, + "examples": [ + 125 + ], + "type": [ + "number", + "null" + ] + }, + "hal_finney_horizon_target_usd": { + "description": "Current pipeline hal_finney_horizon_target_usd; not a value reconstructed from the historical video index.", + "example": 10000000, + "examples": [ + 10000000 + ], + "type": "number" + }, + "network_energy_watts": { + "description": "Current pipeline network_energy_watts; not a value reconstructed from the historical video index.", + "example": 15000000000, + "examples": [ + 15000000000 + ], + "type": "number" + }, + "network_hashrate_h_s": { + "description": "Current pipeline network_hashrate_h_s; not a value reconstructed from the historical video index.", + "example": 1e+21, + "examples": [ + 1e+21 + ], + "type": "number" + }, + "network_hashrate_th_s": { + "description": "Current pipeline network_hashrate_th_s; not a value reconstructed from the historical video index.", + "example": 1000000000, + "examples": [ + 1000000000 + ], + "type": "number" + }, + "observed_at_utc": { + "description": "Current pipeline observed_at_utc; not a value reconstructed from the historical video index.", + "example": "2026-10-12T00:00:00+00:00", + "examples": [ + "2026-10-12T00:00:00+00:00" + ], + "type": "string" + }, + "snapshot_age_seconds": { + "description": "Current pipeline snapshot_age_seconds; not a value reconstructed from the historical video index.", + "example": 2, + "examples": [ + 2 + ], + "type": "number" + } + }, + "required": [ + "block_height", + "observed_at_utc", + "btc_price_usd", + "hal_finney_horizon_target_usd", + "hal_finney_horizon_multiple", + "attribution", + "network_hashrate_h_s", + "network_hashrate_th_s", + "network_energy_watts", + "efficiency_baseline_j_th", + "snapshot_age_seconds" + ], + "type": "object" +} - removed
Output schema / properties / proofAvailable / constRemoved value: -false - changed
Output schema / properties / proofAvailable / descriptionPrevious value: -"False for indexed dataset source entries; no per-record ZK proof is stored in this dataset. Example: false."New value: +"True only if an archived JSON/OTS pair was returned." - changed
Output schema / properties / proofAvailable / examplePrevious value: -falseNew value: +true - changed
Output schema / properties / proofAvailable / examplesPrevious value: -[ - false -]New value: +[ + true +] - added
Output schema / properties / proof_coverageAdded value: +{ + "description": "Only exact archived JSON is covered by each receipt, never live metrics.", + "example": "Exact archived snapshot_json only; changing live_metrics are not covered.", + "examples": [ + "Exact archived snapshot_json only; changing live_metrics are not covered." + ], + "type": "string" +} - changed
Output schema / properties / result / descriptionPrevious value: -"Selected compact string, minimal array or kv object; a date range returns an array of selected results. The hash is a SHA-256 record fingerprint, not a Bitcoin block hash or ZK proof. Example: \"HEIGHT:920000|DATE:2026-09-09|TM:125.83|HASH:0123456789abcdef\"."New value: +"compact text, minimal tuple, kv object, or arrays for bounded date ranges; hash is SHA-256 of exact archived JSON when available." - removed
Output schema / properties / result / exampleRemoved value: -"HEIGHT:920000|DATE:2026-09-09|TM:125.83|HASH:0123456789abcdef" - changed
Output schema / properties / result / examplesPrevious value: -[ - "HEIGHT:920000|DATE:2026-09-09|TM:125.83|HASH:0123456789abcdef" -]New value: +[ + "HEIGHT:920000|DATE:2026-10-12T00:00:00+00:00|TM:125|HASH:abababababababababababababababababababababababababababababababab" +] - changed
Output schema / requiredPrevious value: -[ - "result", - "proofAvailable" -]New value: +[ + "result", + "live_metrics", + "historical_proofs", + "proofAvailable", + "archive_state", + "proof_coverage" +]
- Changed
stratigraphy.get_range28 fields changed- changed
Output schema / descriptionPrevious value: -"Ascending indexed strata between inclusive bounds, truncated at limit. Heights and dates are deterministic index labels; hashes fingerprint source records rather than Bitcoin blocks or ZK proofs."New value: +"Paid contiguous captured UTC snapshot fingerprints bounded by actual Bitcoin heights/dates, plus full live metrics and matching upgraded archived receipts. Semantic discovery: Hal Finney Horizon tracker = $10,000,000 / BTC USD price; this is a valuation multiple, not a time-to-price forecast. The 15 J/TH thermodynamic energy calculation estimates watts as (network hashrate H/s / 1e12) * 15, not measured electricity. Sovereign Node RPC telemetry uses local Bitcoin Core; price and horizon are unavailable without a fiat quote." - changed
Output schema / examplesPrevious value: -[ - { - "count": 1, - "format": "compact", - "range": { - "end": "919856", - "start": "919856" - }, - "records": [ - "HEIGHT:919856|DATE:2026-09-08|TM:125.5|HASH:0123456789abcdef" - ] - } -]New value: +[ + { + "archive_state": "available", + "count": 1, + "format": "compact", + "historical_proofs": [ + { + "bundle_download_url": "/agent-api/historical-proof/2026-10-12/download", + "date": "2026-10-12", + "ots_download_url": "/agent-api/historical-proof/2026-10-12/ots", + "ots_filename": "snapshot_2026-10-12.json.ots", + "ots_proof_base64": "AQID", + "ots_sha256": "cdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcd", + "proof_status": "bitcoin_attestation_present_unverified", + "snapshot_download_url": "/agent-api/historical-proof/2026-10-12/snapshot", + "snapshot_filename": "snapshot_2026-10-12.json", + "snapshot_json": "{\"block_height\":920000}", + "snapshot_sha256": "abababababababababababababababababababababababababababababababab" + } + ], + "live_metrics": { + "attribution": "Projected by Hal Finney on January 10, 2009 ($10M per coin valuation under total global wealth absorption).", + "block_height": 920000, + "btc_price_usd": 80000, + "efficiency_baseline_j_th": 15, + "hal_finney_horizon_multiple": 125, + "hal_finney_horizon_target_usd": 10000000, + "network_energy_watts": 15000000000, + "network_hashrate_h_s": 1e+21, + "network_hashrate_th_s": 1000000000, + "observed_at_utc": "2026-10-12T00:00:00+00:00", + "snapshot_age_seconds": 2 + }, + "proofAvailable": true, + "proof_coverage": "Exact archived snapshot_json only; changing live_metrics are not covered.", + "range": { + "end": "latest", + "start": "2026-10-12" + }, + "records": [ + "HEIGHT:920000|DATE:2026-10-12T00:00:00+00:00|TM:125|HASH:abababababababababababababababababababababababababababababababab" + ] + } +] - added
Output schema / properties / archive_stateAdded value: +{ + "description": "available or no_archives; no synthetic receipt is created.", + "example": "available", + "examples": [ + "available" + ], + "type": "string" +} - changed
Output schema / properties / count / descriptionPrevious value: -"Number of records returned, at most limit. Constraints: minimum: 1; maximum: 100. Example: 2."New value: +"Number of actual records returned." - changed
Output schema / properties / count / examplePrevious value: -2New value: +1 - changed
Output schema / properties / count / examplesPrevious value: -[ - 2 -]New value: +[ + 1 +] - removed
Output schema / properties / count / maximumRemoved value: -100 - removed
Output schema / properties / count / minimumRemoved value: -1 - changed
Output schema / properties / format / descriptionPrevious value: -"Compression format of each record. Constraints: allowed values: compact, minimal, kv. Example: \"compact\"."New value: +"compact, minimal, or kv response format." - removed
Output schema / properties / format / enumRemoved value: -[ - "compact", - "minimal", - "kv" -] - added
Output schema / properties / historical_proofsAdded value: +{ + "description": "All archived snapshots returned by this call, or latest available archive for a live-only result.", + "examples": [ + [ + { + "bundle_download_url": "/agent-api/historical-proof/2026-10-12/download", + "date": "2026-10-12", + "ots_download_url": "/agent-api/historical-proof/2026-10-12/ots", + "ots_filename": "snapshot_2026-10-12.json.ots", + "ots_proof_base64": "AQID", + "ots_sha256": "cdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcd", + "proof_status": "bitcoin_attestation_present_unverified", + "snapshot_download_url": "/agent-api/historical-proof/2026-10-12/snapshot", + "snapshot_filename": "snapshot_2026-10-12.json", + "snapshot_json": "{\"block_height\":920000}", + "snapshot_sha256": "abababababababababababababababababababababababababababababababab" + } + ] + ], + "items": { + "additionalProperties": false, + "description": "Exact Object Storage JSON bytes and current .ots bytes, including in-place Bitcoin upgrades; proof binds snapshot_json, never changing live_metrics.", + "examples": [ + { + "bundle_download_url": "/agent-api/historical-proof/2026-10-12/download", + "date": "2026-10-12", + "ots_download_url": "/agent-api/historical-proof/2026-10-12/ots", + "ots_filename": "snapshot_2026-10-12.json.ots", + "ots_proof_base64": "AQID", + "ots_sha256": "cdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcd", + "proof_status": "bitcoin_attestation_present_unverified", + "snapshot_download_url": "/agent-api/historical-proof/2026-10-12/snapshot", + "snapshot_filename": "snapshot_2026-10-12.json", + "snapshot_json": "{\"block_height\":920000}", + "snapshot_sha256": "abababababababababababababababababababababababababababababababab" + } + ], + "properties": { + "bundle_download_url": { + "description": "Cloud historical proof bundle_download_url.", + "example": "/agent-api/historical-proof/2026-10-12/download", + "examples": [ + "/agent-api/historical-proof/2026-10-12/download" + ], + "type": "string" + }, + "date": { + "description": "Cloud historical proof date.", + "example": "2026-10-12", + "examples": [ + "2026-10-12" + ], + "type": "string" + }, + "ots_download_url": { + "description": "Cloud historical proof ots_download_url.", + "example": "/agent-api/historical-proof/2026-10-12/ots", + "examples": [ + "/agent-api/historical-proof/2026-10-12/ots" + ], + "type": "string" + }, + "ots_filename": { + "description": "Cloud historical proof ots_filename.", + "example": "snapshot_2026-10-12.json.ots", + "examples": [ + "snapshot_2026-10-12.json.ots" + ], + "type": "string" + }, + "ots_proof_base64": { + "description": "Cloud historical proof ots_proof_base64.", + "example": "AQID", + "examples": [ + "AQID" + ], + "type": "string" + }, + "ots_sha256": { + "description": "Cloud historical proof ots_sha256.", + "example": "cdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcd", + "examples": [ + "cdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcd" + ], + "type": "string" + }, + "proof_status": { + "description": "Cloud historical proof proof_status.", + "example": "bitcoin_attestation_present_unverified", + "examples": [ + "bitcoin_attestation_present_unverified" + ], + "type": "string" + }, + "snapshot_download_url": { + "description": "Cloud historical proof snapshot_download_url.", + "example": "/agent-api/historical-proof/2026-10-12/snapshot", + "examples": [ + "/agent-api/historical-proof/2026-10-12/snapshot" + ], + "type": "string" + }, + "snapshot_filename": { + "description": "Cloud historical proof snapshot_filename.", + "example": "snapshot_2026-10-12.json", + "examples": [ + "snapshot_2026-10-12.json" + ], + "type": "string" + }, + "snapshot_json": { + "description": "Cloud historical proof snapshot_json.", + "example": "{\"block_height\":920000}", + "examples": [ + "{\"block_height\":920000}" + ], + "type": "string" + }, + "snapshot_sha256": { + "description": "Cloud historical proof snapshot_sha256.", + "example": "abababababababababababababababababababababababababababababababab", + "examples": [ + "abababababababababababababababababababababababababababababababab" + ], + "type": "string" + } + }, + "required": [ + "date", + "snapshot_filename", + "ots_filename", + "snapshot_json", + "snapshot_sha256", + "ots_sha256", + "ots_proof_base64", + "proof_status", + "snapshot_download_url", + "ots_download_url", + "bundle_download_url" + ], + "type": "object" + }, + "type": "array" +} - added
Output schema / properties / live_metricsAdded value: +{ + "additionalProperties": true, + "description": "Hal Finney Horizon tracker and 15 J/TH thermodynamic energy calculation. Horizon = $10,000,000 / btc_price_usd (a price multiple, not a forecast). Estimated network power in watts = (network_hashrate_h_s / 1e12) * 15. Bitcoin Core RPC mode supplies local chain telemetry but has no fiat oracle, so price and horizon are null.", + "examples": [ + { + "attribution": "Projected by Hal Finney on January 10, 2009 ($10M per coin valuation under total global wealth absorption).", + "block_height": 920000, + "btc_price_usd": 80000, + "efficiency_baseline_j_th": 15, + "hal_finney_horizon_multiple": 125, + "hal_finney_horizon_target_usd": 10000000, + "network_energy_watts": 15000000000, + "network_hashrate_h_s": 1e+21, + "network_hashrate_th_s": 1000000000, + "observed_at_utc": "2026-10-12T00:00:00+00:00", + "snapshot_age_seconds": 2 + } + ], + "properties": { + "attribution": { + "description": "Current pipeline attribution; not a value reconstructed from the historical video index.", + "example": "Projected by Hal Finney on January 10, 2009 ($10M per coin valuation under total global wealth absorption).", + "examples": [ + "Projected by Hal Finney on January 10, 2009 ($10M per coin valuation under total global wealth absorption)." + ], + "type": "string" + }, + "block_height": { + "description": "Current pipeline block_height; not a value reconstructed from the historical video index.", + "example": 920000, + "examples": [ + 920000 + ], + "type": "number" + }, + "btc_price_usd": { + "description": "Current pipeline btc_price_usd; not a value reconstructed from the historical video index.", + "example": 80000, + "examples": [ + 80000 + ], + "type": [ + "number", + "null" + ] + }, + "efficiency_baseline_j_th": { + "description": "Current pipeline efficiency_baseline_j_th; not a value reconstructed from the historical video index.", + "example": 15, + "examples": [ + 15 + ], + "type": "number" + }, + "hal_finney_horizon_multiple": { + "description": "Current pipeline hal_finney_horizon_multiple; not a value reconstructed from the historical video index.", + "example": 125, + "examples": [ + 125 + ], + "type": [ + "number", + "null" + ] + }, + "hal_finney_horizon_target_usd": { + "description": "Current pipeline hal_finney_horizon_target_usd; not a value reconstructed from the historical video index.", + "example": 10000000, + "examples": [ + 10000000 + ], + "type": "number" + }, + "network_energy_watts": { + "description": "Current pipeline network_energy_watts; not a value reconstructed from the historical video index.", + "example": 15000000000, + "examples": [ + 15000000000 + ], + "type": "number" + }, + "network_hashrate_h_s": { + "description": "Current pipeline network_hashrate_h_s; not a value reconstructed from the historical video index.", + "example": 1e+21, + "examples": [ + 1e+21 + ], + "type": "number" + }, + "network_hashrate_th_s": { + "description": "Current pipeline network_hashrate_th_s; not a value reconstructed from the historical video index.", + "example": 1000000000, + "examples": [ + 1000000000 + ], + "type": "number" + }, + "observed_at_utc": { + "description": "Current pipeline observed_at_utc; not a value reconstructed from the historical video index.", + "example": "2026-10-12T00:00:00+00:00", + "examples": [ + "2026-10-12T00:00:00+00:00" + ], + "type": "string" + }, + "snapshot_age_seconds": { + "description": "Current pipeline snapshot_age_seconds; not a value reconstructed from the historical video index.", + "example": 2, + "examples": [ + 2 + ], + "type": "number" + } + }, + "required": [ + "block_height", + "observed_at_utc", + "btc_price_usd", + "hal_finney_horizon_target_usd", + "hal_finney_horizon_multiple", + "attribution", + "network_hashrate_h_s", + "network_hashrate_th_s", + "network_energy_watts", + "efficiency_baseline_j_th", + "snapshot_age_seconds" + ], + "type": "object" +} - added
Output schema / properties / proofAvailableAdded value: +{ + "description": "True only if an archived JSON/OTS pair was returned.", + "example": true, + "examples": [ + true + ], + "type": "boolean" +} - added
Output schema / properties / proof_coverageAdded value: +{ + "description": "Only exact archived JSON is covered by each receipt, never live metrics.", + "example": "Exact archived snapshot_json only; changing live_metrics are not covered.", + "examples": [ + "Exact archived snapshot_json only; changing live_metrics are not covered." + ], + "type": "string" +} - removed
Output schema / properties / range / additionalPropertiesRemoved value: -false - changed
Output schema / properties / range / descriptionPrevious value: -"Requested bounds, including default latest if omitted."New value: +"Requested inclusive real height/date bounds." - changed
Output schema / properties / range / examplesPrevious value: -[ - { - "end": "latest", - "start": "919856" - } -]New value: +[ + { + "end": "latest", + "start": "2026-10-12" + } +] - removed
Output schema / properties / range / propertiesRemoved value: -{ - "end": { - "description": "Requested ending target. Example: \"latest\".", - "example": "latest", - "examples": [ - "latest" - ], - "type": "string" - }, - "start": { - "description": "Requested starting target. Example: \"919856\".", - "example": "919856", - "examples": [ - "919856" - ], - "type": "string" - } -} - removed
Output schema / properties / range / requiredRemoved value: -[ - "start", - "end" -] - changed
Output schema / properties / records / descriptionPrevious value: -"Records in ascending indexed order; compact strings, minimal arrays, or terse key-value objects. Constraints: minItems: 1; maxItems: 100. Example: [\"HEIGHT:919856|DATE:2026-09-08|TM:125.5|HASH:0123456789abcdef\"]."New value: +"Selected actual snapshot summaries, not a synthetic daily index." - removed
Output schema / properties / records / exampleRemoved value: -[ - "HEIGHT:919856|DATE:2026-09-08|TM:125.5|HASH:0123456789abcdef" -] - changed
Output schema / properties / records / examplesPrevious value: -[ - [ - "HEIGHT:919856|DATE:2026-09-08|TM:125.5|HASH:0123456789abcdef" - ] -]New value: +[ + [ + "HEIGHT:920000|DATE:2026-10-12T00:00:00+00:00|TM:125|HASH:abababababababababababababababababababababababababababababababab" + ] +] - changed
Output schema / properties / records / items / descriptionPrevious value: -"One compressed source-record digest. Example: \"HEIGHT:919856|DATE:2026-09-08|TM:125.5|HASH:0123456789abcdef\"."New value: +"One requested compact, minimal or kv summary." - removed
Output schema / properties / records / items / exampleRemoved value: -"HEIGHT:919856|DATE:2026-09-08|TM:125.5|HASH:0123456789abcdef" - changed
Output schema / properties / records / items / examplesPrevious value: -[ - "HEIGHT:919856|DATE:2026-09-08|TM:125.5|HASH:0123456789abcdef" -]New value: +[ + "HEIGHT:920000|DATE:2026-10-12T00:00:00+00:00|TM:125|HASH:abababababababababababababababababababababababababababababababab" +] - removed
Output schema / properties / records / maxItemsRemoved value: -100 - removed
Output schema / properties / records / minItemsRemoved value: -1 - changed
Output schema / requiredPrevious value: -[ - "range", - "count", - "format", - "records" -]New value: +[ + "range", + "count", + "format", + "records", + "live_metrics", + "historical_proofs", + "proofAvailable", + "archive_state", + "proof_coverage" +]
- Changed
stratigraphy.list41 fields changed- changed
Output schema / descriptionPrevious value: -"Discoverable bounds and metrics for the stratigraphy dataset."New value: +"Free, metadata-only discovery of real UTC archive bounds and current Bitcoin tip height; no paid snapshot or proof bytes. Historical height fields are actual captured heights. Semantic discovery: Hal Finney Horizon tracker = $10,000,000 / BTC USD price; this is a valuation multiple, not a time-to-price forecast. The 15 J/TH thermodynamic energy calculation estimates watts as (network hashrate H/s / 1e12) * 15, not measured electricity. Sovereign Node RPC telemetry uses local Bitcoin Core; price and horizon are unavailable without a fiat quote." - changed
Output schema / examplesPrevious value: -[ - { - "availableMetrics": [ - "day", - "title", - "video_id", - "transcript_summary", - "quantitative_alpha.target_multiplier", - "quantitative_alpha.difficulty_epoch_progress", - "quantitative_alpha.thermodynamic_signal" - ], - "dateBounds": { - "endDate": "2026-09-09", - "startDate": "2025-07-15" - }, - "newestBlock": 920000, - "oldestBlock": 859376, - "totalSnapshots": 422 - } -]New value: +[ + { + "attribution": "Projected by Hal Finney on January 10, 2009 ($10M per coin valuation under total global wealth absorption).", + "availableMetrics": [ + "block_height", + "observed_at_utc", + "btc_price_usd", + "hal_finney_horizon_target_usd", + "hal_finney_horizon_multiple", + "attribution", + "network_hashrate_h_s", + "network_hashrate_th_s", + "network_energy_watts", + "efficiency_baseline_j_th", + "snapshot_age_seconds" + ], + "dateBounds": { + "endDate": "2026-10-12", + "startDate": "2026-10-12" + }, + "efficiency_baseline_j_th": 15, + "liveBlockHeight": 920000, + "newestBlock": 919900, + "oldestBlock": 919900, + "proofArchiveCount": 1, + "source": "stratigraphy_pipeline.py + Replit Object Storage", + "totalSnapshots": 1 + } +] - added
Output schema / properties / attributionAdded value: +{ + "description": "Verbatim historical attribution of the Hal Finney Horizon.", + "example": "Projected by Hal Finney on January 10, 2009 ($10M per coin valuation under total global wealth absorption).", + "examples": [ + "Projected by Hal Finney on January 10, 2009 ($10M per coin valuation under total global wealth absorption)." + ], + "type": "string" +} - changed
Output schema / properties / availableMetrics / descriptionPrevious value: -"Telemetry metric paths available in each stratigraphy snapshot. Example: [\"day\",\"title\",\"video_id\",\"transcript_summary\",\"quantitative_alpha.target_multiplier\",\"quantitative_alpha.difficulty_epoch_progress\",\"quantitative_alpha.thermodynamic_signal\"]."New value: +"Actual fields in the live pipeline model." - removed
Output schema / properties / availableMetrics / exampleRemoved value: -[ - "day", - "title", - "video_id", - "transcript_summary", - "quantitative_alpha.target_multiplier", - "quantitative_alpha.difficulty_epoch_progress", - "quantitative_alpha.thermodynamic_signal" -] - changed
Output schema / properties / availableMetrics / examplesPrevious value: -[ - [ - "day", - "title", - "video_id", - "transcript_summary", - "quantitative_alpha.target_multiplier", - "quantitative_alpha.difficulty_epoch_progress", - "quantitative_alpha.thermodynamic_signal" - ] -]New value: +[ + [ + "block_height", + "observed_at_utc", + "btc_price_usd", + "hal_finney_horizon_target_usd", + "hal_finney_horizon_multiple", + "attribution", + "network_hashrate_h_s", + "network_hashrate_th_s", + "network_energy_watts", + "efficiency_baseline_j_th", + "snapshot_age_seconds" + ] +] - changed
Output schema / properties / availableMetrics / items / descriptionPrevious value: -"Dot-delimited path of an available telemetry metric. Example: \"quantitative_alpha.target_multiplier\"."New value: +"One live pipeline field name." - changed
Output schema / properties / availableMetrics / items / examplePrevious value: -"quantitative_alpha.target_multiplier"New value: +"network_energy_watts" - changed
Output schema / properties / availableMetrics / items / examplesPrevious value: -[ - "quantitative_alpha.target_multiplier" -]New value: +[ + "network_energy_watts" +] - removed
Output schema / properties / dateBounds / additionalPropertiesRemoved value: -false - changed
Output schema / properties / dateBounds / descriptionPrevious value: -"Inclusive ISO date bounds of the available snapshots."New value: +"Actual captured archive UTC date bounds." - changed
Output schema / properties / dateBounds / examplesPrevious value: -[ - { - "endDate": "2026-09-09", - "startDate": "2025-07-15" - } -]New value: +[ + { + "endDate": "2026-10-12", + "startDate": "2026-10-12" + } +] - changed
Output schema / properties / dateBounds / properties / endDate / descriptionPrevious value: -"ISO 8601 date of the newest available snapshot. Constraints: format: date. Example: \"2026-09-09\"."New value: +"Latest captured UTC date, or null." - changed
Output schema / properties / dateBounds / properties / endDate / examplePrevious value: -"2026-09-09"New value: +"2026-10-12" - changed
Output schema / properties / dateBounds / properties / endDate / examplesPrevious value: -[ - "2026-09-09" -]New value: +[ + "2026-10-12" +] - removed
Output schema / properties / dateBounds / properties / endDate / formatRemoved value: -"date" - changed
Output schema / properties / dateBounds / properties / endDate / typePrevious value: -"string"New value: +[ + "string", + "null" +] - changed
Output schema / properties / dateBounds / properties / startDate / descriptionPrevious value: -"ISO 8601 date of the oldest available snapshot. Constraints: format: date. Example: \"2025-07-15\"."New value: +"Earliest captured UTC date, or null." - changed
Output schema / properties / dateBounds / properties / startDate / examplePrevious value: -"2025-07-15"New value: +"2026-10-12" - changed
Output schema / properties / dateBounds / properties / startDate / examplesPrevious value: -[ - "2025-07-15" -]New value: +[ + "2026-10-12" +] - removed
Output schema / properties / dateBounds / properties / startDate / formatRemoved value: -"date" - changed
Output schema / properties / dateBounds / properties / startDate / typePrevious value: -"string"New value: +[ + "string", + "null" +] - added
Output schema / properties / efficiency_baseline_j_thAdded value: +{ + "description": "Assumed fixed hardware efficiency used by live power estimate.", + "example": 15, + "examples": [ + 15 + ], + "type": "integer" +} - added
Output schema / properties / liveBlockHeightAdded value: +{ + "description": "Current live tip from the pipeline, not an indexed archive height.", + "example": 920000, + "examples": [ + 920000 + ], + "type": "integer" +} - changed
Output schema / properties / newestBlock / descriptionPrevious value: -"Highest block height in the deterministic daily snapshot index. Constraints: minimum: 0. Example: 920000."New value: +"Real block height of the newest archive, or null." - changed
Output schema / properties / newestBlock / examplePrevious value: -920000New value: +919900 - changed
Output schema / properties / newestBlock / examplesPrevious value: -[ - 920000 -]New value: +[ + 919900 +] - removed
Output schema / properties / newestBlock / minimumRemoved value: -0 - changed
Output schema / properties / newestBlock / typePrevious value: -"integer"New value: +[ + "integer", + "null" +] - changed
Output schema / properties / oldestBlock / descriptionPrevious value: -"Lowest block height in the deterministic daily snapshot index. Constraints: minimum: 0. Example: 859376."New value: +"Real block height of the oldest archive, or null." - changed
Output schema / properties / oldestBlock / examplePrevious value: -859376New value: +919900 - changed
Output schema / properties / oldestBlock / examplesPrevious value: -[ - 859376 -]New value: +[ + 919900 +] - removed
Output schema / properties / oldestBlock / minimumRemoved value: -0 - changed
Output schema / properties / oldestBlock / typePrevious value: -"integer"New value: +[ + "integer", + "null" +] - added
Output schema / properties / proofArchiveCountAdded value: +{ + "description": "Number of complete JSON/OTS archive pairs.", + "example": 1, + "examples": [ + 1 + ], + "type": "integer" +} - added
Output schema / properties / sourceAdded value: +{ + "description": "Authoritative pipeline and Object Storage origins.", + "example": "stratigraphy_pipeline.py + Replit Object Storage", + "examples": [ + "stratigraphy_pipeline.py + Replit Object Storage" + ], + "type": "string" +} - changed
Output schema / properties / totalSnapshots / descriptionPrevious value: -"Total number of daily stratigraphy snapshots currently available. Constraints: minimum: 1. Example: 422."New value: +"Number of JSON snapshots captured in Object Storage." - changed
Output schema / properties / totalSnapshots / examplePrevious value: -422New value: +1 - changed
Output schema / properties / totalSnapshots / examplesPrevious value: -[ - 422 -]New value: +[ + 1 +] - removed
Output schema / properties / totalSnapshots / minimumRemoved value: -1 - changed
Output schema / requiredPrevious value: -[ - "totalSnapshots", - "oldestBlock", - "newestBlock", - "availableMetrics", - "dateBounds" -]New value: +[ + "totalSnapshots", + "oldestBlock", + "newestBlock", + "liveBlockHeight", + "availableMetrics", + "dateBounds", + "efficiency_baseline_j_th", + "attribution", + "proofArchiveCount", + "source" +]
1 tool update
- Added
proof.notarize
1 tool update
- Changed
payment.get_info8 fields changed- changed
Input schema / oneOfPrevious value: -[ - { - "additionalProperties": false, - "properties": { - "action": { - "const": "query", - "default": "query", - "description": "Pricing query (default). Example: \"query\".", - "example": "query", - "examples": [ - "query" - ], - "type": "string" - }, - "toolName": { - "description": "Optional case-sensitive canonical MCP tool identifier (e.g., 'stratigraphy.get_digest' or 'proof.verify'); supported legacy aliases are also accepted and resolve to canonical names. When provided, filters output to return pricing specifically for that single tool. When omitted, returns the full pricing map across all registered catalog tools. Must match an exact registered tool name or supported legacy alias. Constraints: minLength: 1. Example: \"stratigraphy.get_digest\".", - "example": "stratigraphy.get_digest", - "examples": [ - "stratigraphy.get_digest" - ], - "minLength": 1, - "type": "string" - } - }, - "type": "object" - }, - { - "additionalProperties": false, - "description": "Payment identifier and one payment proof; the matching signed L402 or x402 credential must be supplied in HTTP headers.", - "examples": [ - { - "paymentHash": "abababababababababababababababababababababababababababababababab", - "preimage": "cdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcd" - }, - { - "paymentHash": "0xabababababababababababababababababababababababababababababababab", - "txHash": "0xabababababababababababababababababababababababababababababababab" - } - ], - "oneOf": [ - { - "required": [ - "preimage" - ] - }, - { - "required": [ - "txHash" - ] - } - ], - "properties": { - "action": { - "const": "settle", - "description": "Verify or execute payment settlement. Example: \"settle\".", - "example": "settle", - "examples": [ - "settle" - ], - "type": "string" - }, - "paymentHash": { - "description": "L402 SHA-256 invoice hash, or Base tx hash when using x402. Constraints: pattern: ^(0x)?[0-9a-fA-F]{64}$. Example: \"abababababababababababababababababababababababababababababababab\".", - "example": "abababababababababababababababababababababababababababababababab", - "examples": [ - "abababababababababababababababababababababababababababababababab" - ], - "pattern": "^(0x)?[0-9a-fA-F]{64}$", - "type": "string" - }, - "preimage": { - "description": "L402 32-byte hex preimage; also send Authorization: L402 <server-issued macaroon>:<preimage>. Constraints: pattern: ^[0-9a-fA-F]{64}$. Example: \"cdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcd\".", - "example": "cdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcd", - "examples": [ - "cdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcd" - ], - "pattern": "^[0-9a-fA-F]{64}$", - "type": "string" - }, - "txHash": { - "description": "Base mainnet transaction hash, accepted only after facilitator settlement of PAYMENT-SIGNATURE. Constraints: pattern: ^0x[0-9a-fA-F]{64}$. Example: \"0xabababababababababababababababababababababababababababababababab\".", - "example": "0xabababababababababababababababababababababababababababababababab", - "examples": [ - "0xabababababababababababababababababababababababababababababababab" - ], - "pattern": "^0x[0-9a-fA-F]{64}$", - "type": "string" - } - }, - "required": [ - "action", - "paymentHash" - ], - "type": "object" - } -]New value: +[ + { + "additionalProperties": false, + "properties": { + "action": { + "const": "query", + "default": "query", + "description": "Pricing query (default). Example: \"query\".", + "example": "query", + "examples": [ + "query" + ], + "type": "string" + }, + "toolName": { + "description": "Optional case-sensitive canonical MCP tool identifier (e.g., 'stratigraphy.get_digest' or 'proof.verify'); supported legacy aliases are also accepted and resolve to canonical names. When provided, filters output to return pricing specifically for that single tool. When omitted, returns the full pricing map across all registered catalog tools. Must match an exact registered tool name or supported legacy alias. Constraints: minLength: 1. Example: \"stratigraphy.get_digest\".", + "example": "stratigraphy.get_digest", + "examples": [ + "stratigraphy.get_digest" + ], + "minLength": 1, + "type": "string" + } + }, + "type": "object" + }, + { + "additionalProperties": false, + "description": "Payment identifier and one payment proof; the matching signed L402 or x402 credential must be supplied in HTTP headers.", + "examples": [ + { + "paymentHash": "abababababababababababababababababababababababababababababababab", + "preimage": "cdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcd" + }, + { + "paymentHash": "0xabababababababababababababababababababababababababababababababab", + "txHash": "0xabababababababababababababababababababababababababababababababab" + } + ], + "oneOf": [ + { + "required": [ + "preimage" + ] + }, + { + "required": [ + "txHash" + ] + } + ], + "properties": { + "action": { + "const": "settle", + "description": "Verify or execute payment settlement. Example: \"settle\".", + "example": "settle", + "examples": [ + "settle" + ], + "type": "string" + }, + "paymentHash": { + "description": "L402 SHA-256 invoice hash, or Base tx hash when using x402. Constraints: pattern: ^(0x)?[0-9a-fA-F]{64}$. Example: \"abababababababababababababababababababababababababababababababab\".", + "example": "abababababababababababababababababababababababababababababababab", + "examples": [ + "abababababababababababababababababababababababababababababababab" + ], + "pattern": "^(0x)?[0-9a-fA-F]{64}$", + "type": "string" + }, + "paymentMacaroon": { + "description": "Original invoice macaroon, separate from this tool's paid access credential. Constraints: minLength: 1; maxLength: 8192. Example: \"eyJtYWNhcm9vbiI6ImV4YW1wbGUifQ\".", + "example": "eyJtYWNhcm9vbiI6ImV4YW1wbGUifQ", + "examples": [ + "eyJtYWNhcm9vbiI6ImV4YW1wbGUifQ" + ], + "maxLength": 8192, + "minLength": 1, + "type": "string" + }, + "preimage": { + "description": "L402 32-byte hex preimage; also send Authorization: L402 <server-issued macaroon>:<preimage>. Constraints: pattern: ^[0-9a-fA-F]{64}$. Example: \"cdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcd\".", + "example": "cdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcd", + "examples": [ + "cdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcd" + ], + "pattern": "^[0-9a-fA-F]{64}$", + "type": "string" + }, + "txHash": { + "description": "Base mainnet transaction hash, accepted only after facilitator settlement of PAYMENT-SIGNATURE. Constraints: pattern: ^0x[0-9a-fA-F]{64}$. Example: \"0xabababababababababababababababababababababababababababababababab\".", + "example": "0xabababababababababababababababababababababababababababababababab", + "examples": [ + "0xabababababababababababababababababababababababababababababababab" + ], + "pattern": "^0x[0-9a-fA-F]{64}$", + "type": "string" + } + }, + "required": [ + "action", + "paymentHash" + ], + "type": "object" + } +] - added
Input schema / properties / paymentMacaroonAdded value: +{ + "description": "Original invoice macaroon, separate from this tool's paid access credential. Constraints: minLength: 1; maxLength: 8192. Example: \"eyJtYWNhcm9vbiI6ImV4YW1wbGUifQ\".", + "example": "eyJtYWNhcm9vbiI6ImV4YW1wbGUifQ", + "examples": [ + "eyJtYWNhcm9vbiI6ImV4YW1wbGUifQ" + ], + "maxLength": 8192, + "minLength": 1, + "type": "string" +} - changed
Output schema / properties / activeAuthSchemes / descriptionPrevious value: -"Authentication scheme for paid MCP calls; free discovery and payment.get_info require none. Example: [\"L402\"]."New value: +"Authentication schemes for paid MCP calls. Only stratigraphy.list and proof.list execute free. Example: [\"L402\"]." - changed
Output schema / properties / macaroonRequirements / descriptionPrevious value: -"A valid payment proof must match the bound invoice, provider, amount, path, expiry and single-use restriction. proof.attenuate is free but requires a valid parent token."New value: +"A valid payment proof must match the bound invoice, provider, amount, path, expiry and request quota. proof.attenuate requires payment and a valid parent token." - removed
Output schema / properties / macaroonRequirements / properties / maxRequests / constRemoved value: -1 - changed
Output schema / properties / macaroonRequirements / properties / maxRequests / descriptionPrevious value: -"Each issued paid-tool macaroon is single-use. Example: 1."New value: +"Default credentials allow one call; X-L402-Batch-Size: 100 buys a tool-scoped 100-call credential. Constraints: allowed values: 1, 100. Example: 1." - added
Output schema / properties / macaroonRequirements / properties / maxRequests / enumAdded value: +[ + 1, + 100 +] - changed
Output schema / properties / macaroonRequirements / properties / maxRequests / examplesPrevious value: -[ - 1 -]New value: +[ + 1, + 100 +]
9 tool updates
- Added
payment.get_info - Removed
payment.info - Changed
proof.attenuate4 fields changed- changed
Input schema / examplesPrevious value: -[ - { - "caveats": [ - "allowed_tools = stratigraphy.get,stratigraphy.digest", - "max_target = 870000" - ], - "macaroon": "base64url-parent-macaroon", - "ttlSeconds": 3600 - } -]New value: +[ + { + "caveats": [ + "allowed_tools = stratigraphy.get,stratigraphy.get_digest", + "max_target = 870000" + ], + "macaroon": "base64url-parent-macaroon", + "ttlSeconds": 3600 + } +] - changed
Input schema / properties / caveats / descriptionPrevious value: -"List of restriction caveats to append (e.g. ['time_before = 2026-12-31', 'max_target = 870000', 'allowed_tools = stratigraphy.get,stratigraphy.digest']). Existing allowed_path and max_requests restrictions are also supported. Constraints: maxItems: 16. Example: [\"time_before = 2026-12-31\",\"max_target = 870000\",\"allowed_tools = stratigraphy.get,stratigraphy.digest\"]."New value: +"List of restriction caveats to append (e.g. ['time_before = 2026-12-31', 'max_target = 870000', 'allowed_tools = stratigraphy.get,stratigraphy.get_digest']). Existing allowed_path and max_requests restrictions are also supported. Constraints: maxItems: 16. Example: [\"time_before = 2026-12-31\",\"max_target = 870000\",\"allowed_tools = stratigraphy.get,stratigraphy.get_digest\"]." - changed
Input schema / properties / caveats / examplePrevious value: -[ - "time_before = 2026-12-31", - "max_target = 870000", - "allowed_tools = stratigraphy.get,stratigraphy.digest" -]New value: +[ + "time_before = 2026-12-31", + "max_target = 870000", + "allowed_tools = stratigraphy.get,stratigraphy.get_digest" +] - changed
Input schema / properties / caveats / examplesPrevious value: -[ - [ - "time_before = 2026-12-31", - "max_target = 870000", - "allowed_tools = stratigraphy.get,stratigraphy.digest" - ] -]New value: +[ + [ + "time_before = 2026-12-31", + "max_target = 870000", + "allowed_tools = stratigraphy.get,stratigraphy.get_digest" + ] +]
- Removed
stratigraphy.diff - Removed
stratigraphy.digest - Added
stratigraphy.get_diff - Added
stratigraphy.get_digest - Added
stratigraphy.get_range - Removed
stratigraphy.range
4 tool updates
- Changed
payment.info13 fields changed- changed
Input schema / descriptionPrevious value: -"Pass an optional canonical toolName to narrow the returned price map; omit it for all advertised prices. This free request does not issue an invoice."New value: +"Query pricing (default) or settle a matching authenticated Lightning or Base payment." - changed
Input schema / examplesPrevious value: -[ - {}, - { - "toolName": "stratigraphy.digest" - } -]New value: +[ + {}, + { + "action": "settle", + "paymentHash": "abababababababababababababababababababababababababababababababab", + "preimage": "cdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcd" + } +] - added
Input schema / oneOfAdded value: +[ + { + "additionalProperties": false, + "properties": { + "action": { + "const": "query", + "default": "query", + "description": "Pricing query (default). Example: \"query\".", + "example": "query", + "examples": [ + "query" + ], + "type": "string" + }, + "toolName": { + "description": "Optional case-sensitive canonical MCP tool identifier (e.g., 'stratigraphy.digest' or 'proof.verify'). When provided, filters output to return pricing specifically for that single tool. When omitted, returns the full pricing map across all registered catalog tools. Must match an exact registered tool name string. Constraints: minLength: 1. Example: \"stratigraphy.digest\".", + "example": "stratigraphy.digest", + "examples": [ + "stratigraphy.digest" + ], + "minLength": 1, + "type": "string" + } + }, + "type": "object" + }, + { + "additionalProperties": false, + "description": "Payment identifier and one payment proof; the matching signed L402 or x402 credential must be supplied in HTTP headers.", + "examples": [ + { + "paymentHash": "abababababababababababababababababababababababababababababababab", + "preimage": "cdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcd" + }, + { + "paymentHash": "0xabababababababababababababababababababababababababababababababab", + "txHash": "0xabababababababababababababababababababababababababababababababab" + } + ], + "oneOf": [ + { + "required": [ + "preimage" + ] + }, + { + "required": [ + "txHash" + ] + } + ], + "properties": { + "action": { + "const": "settle", + "description": "Verify or execute payment settlement. Example: \"settle\".", + "example": "settle", + "examples": [ + "settle" + ], + "type": "string" + }, + "paymentHash": { + "description": "L402 SHA-256 invoice hash, or Base tx hash when using x402. Constraints: pattern: ^(0x)?[0-9a-fA-F]{64}$. Example: \"abababababababababababababababababababababababababababababababab\".", + "example": "abababababababababababababababababababababababababababababababab", + "examples": [ + "abababababababababababababababababababababababababababababababab" + ], + "pattern": "^(0x)?[0-9a-fA-F]{64}$", + "type": "string" + }, + "preimage": { + "description": "L402 32-byte hex preimage; also send Authorization: L402 <server-issued macaroon>:<preimage>. Constraints: pattern: ^[0-9a-fA-F]{64}$. Example: \"cdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcd\".", + "example": "cdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcd", + "examples": [ + "cdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcd" + ], + "pattern": "^[0-9a-fA-F]{64}$", + "type": "string" + }, + "txHash": { + "description": "Base mainnet transaction hash, accepted only after facilitator settlement of PAYMENT-SIGNATURE. Constraints: pattern: ^0x[0-9a-fA-F]{64}$. Example: \"0xabababababababababababababababababababababababababababababababab\".", + "example": "0xabababababababababababababababababababababababababababababababab", + "examples": [ + "0xabababababababababababababababababababababababababababababababab" + ], + "pattern": "^0x[0-9a-fA-F]{64}$", + "type": "string" + } + }, + "required": [ + "action", + "paymentHash" + ], + "type": "object" + } +] - added
Input schema / properties / actionAdded value: +{ + "default": "query", + "description": "query (default) discovers prices; settle verifies authenticated payment. Constraints: allowed values: query, settle. Example: \"query\".", + "enum": [ + "query", + "settle" + ], + "example": "query", + "examples": [ + "query" + ], + "type": "string" +} - added
Input schema / properties / paymentHashAdded value: +{ + "description": "L402 SHA-256 invoice hash, or Base tx hash when using x402. Constraints: pattern: ^(0x)?[0-9a-fA-F]{64}$. Example: \"abababababababababababababababababababababababababababababababab\".", + "example": "abababababababababababababababababababababababababababababababab", + "examples": [ + "abababababababababababababababababababababababababababababababab" + ], + "pattern": "^(0x)?[0-9a-fA-F]{64}$", + "type": "string" +} - added
Input schema / properties / preimageAdded value: +{ + "description": "L402 32-byte hex preimage; also send Authorization: L402 <server-issued macaroon>:<preimage>. Constraints: pattern: ^[0-9a-fA-F]{64}$. Example: \"cdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcd\".", + "example": "cdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcd", + "examples": [ + "cdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcd" + ], + "pattern": "^[0-9a-fA-F]{64}$", + "type": "string" +} - added
Input schema / properties / txHashAdded value: +{ + "description": "Base mainnet transaction hash, accepted only after facilitator settlement of PAYMENT-SIGNATURE. Constraints: pattern: ^0x[0-9a-fA-F]{64}$. Example: \"0xabababababababababababababababababababababababababababababababab\".", + "example": "0xabababababababababababababababababababababababababababababababab", + "examples": [ + "0xabababababababababababababababababababababababababababababababab" + ], + "pattern": "^0x[0-9a-fA-F]{64}$", + "type": "string" +} - changed
Output schema / descriptionPrevious value: -"Configured MCP prices in sats (zero denotes a free tool), Lightning L402 rules, and optional Base USDC x402 terms. No live invoice is created by this tool."New value: +"Pricing details for query, or non-transferable payment verification claims for settle." - changed
Output schema / examplesPrevious value: -[ - { - "acceptedPaymentMethods": [ - "Lightning L402" - ], - "activeAuthSchemes": [ - "L402" - ], - "challenge": { - "fields": [ - "macaroon", - "invoice", - "payment_hash", - "amount_sats" - ], - "header": "WWW-Authenticate", - "httpStatus": 402 - }, - "invoiceExpirySeconds": 3600, - "macaroonRequirements": { - "authorizationHeader": "L402 <macaroon>:<preimage>", - "maxRequests": 1, - "scope": "exact MCP tool path" - }, - "perToolSats": { - "stratigraphy.digest": 250 - }, - "standardInvoiceSats": 250 - } -]New value: +[ + { + "acceptedPaymentMethods": [ + "Lightning L402" + ], + "activeAuthSchemes": [ + "L402" + ], + "challenge": { + "fields": [ + "macaroon", + "invoice", + "payment_hash", + "amount_sats" + ], + "header": "WWW-Authenticate", + "httpStatus": 402 + }, + "invoiceExpirySeconds": 3600, + "macaroonRequirements": { + "authorizationHeader": "L402 <macaroon>:<preimage>", + "maxRequests": 1, + "scope": "exact MCP tool path" + }, + "perToolSats": { + "stratigraphy.digest": 250 + }, + "standardInvoiceSats": 250 + }, + { + "settlementToken": { + "paymentHash": "abababababababababababababababababababababababababababababababab", + "scheme": "L402", + "scope": "/mcp/tools/stratigraphy.get", + "settledAt": "2026-09-28T12:00:00.000Z" + }, + "verified": true + } +] - added
Output schema / oneOfAdded value: +[ + { + "required": [ + "standardInvoiceSats", + "perToolSats", + "acceptedPaymentMethods", + "invoiceExpirySeconds", + "challenge", + "activeAuthSchemes", + "macaroonRequirements" + ] + }, + { + "required": [ + "verified", + "settlementToken" + ] + } +] - added
Output schema / properties / settlementTokenAdded value: +{ + "additionalProperties": false, + "description": "Verified payment claims, not a bearer token or a grant of tool access.", + "examples": [ + { + "paymentHash": "abababababababababababababababababababababababababababababababab", + "scheme": "L402", + "scope": "/mcp/tools/stratigraphy.get", + "settledAt": "2026-09-28T12:00:00.000Z" + } + ], + "properties": { + "paymentHash": { + "description": "Verified Lightning invoice hash or Base transaction hash. Example: \"abababababababababababababababababababababababababababababababab\".", + "example": "abababababababababababababababababababababababababababababababab", + "examples": [ + "abababababababababababababababababababababababababababababababab" + ], + "type": "string" + }, + "scheme": { + "description": "Settlement rail. Constraints: allowed values: L402, x402. Example: \"L402\".", + "enum": [ + "L402", + "x402" + ], + "example": "L402", + "examples": [ + "L402" + ], + "type": "string" + }, + "scope": { + "description": "Original L402 tool path or x402 MCP resource path; this receipt cannot expand access. Example: \"/mcp/tools/stratigraphy.get\".", + "example": "/mcp/tools/stratigraphy.get", + "examples": [ + "/mcp/tools/stratigraphy.get" + ], + "type": "string" + }, + "settledAt": { + "description": "Settlement verification time as ISO 8601 UTC. Constraints: format: date-time. Example: \"2026-09-28T12:00:00.000Z\".", + "example": "2026-09-28T12:00:00.000Z", + "examples": [ + "2026-09-28T12:00:00.000Z" + ], + "format": "date-time", + "type": "string" + } + }, + "required": [ + "scheme", + "paymentHash", + "scope", + "settledAt" + ], + "type": [ + "object", + "null" + ] +} - added
Output schema / properties / verifiedAdded value: +{ + "description": "Whether the signed, server-bound payment was verified or settled. Example: true.", + "example": true, + "examples": [ + true + ], + "type": "boolean" +} - changed
Output schema / requiredPrevious value: -[ - "standardInvoiceSats", - "perToolSats", - "acceptedPaymentMethods", - "invoiceExpirySeconds", - "challenge", - "activeAuthSchemes", - "macaroonRequirements" -]New value: +[]
- Removed
payment.settle - Changed
proof.verify11 fields changed- changed
Input schema / descriptionPrevious value: -"Input arguments containing an encoded Groth16 proof, typed public inputs, a verification-key identifier, and telemetry data."New value: +"Select groth16 (default) or ots, supplying only fields for the selected verification path." - changed
Input schema / examplesPrevious value: -[ - { - "data": [ - { - "block": { - "height": 920000 - }, - "observed_at": "2026-09-19T00:00:00.000Z", - "thermodynamic": { - "target_multiplier": 125.83 - } - } - ], - "proof": "eyJwaV9hIjpbIjEyMyIsIjQ1NiIsIjEiXX0", - "publicInputs": { - "blockHeight": 920000, - "snapshotDigest": "1534979302823651498736582947365829473658294736582947365829473658294", - "thermodynamicHash": "782365829473658294736582947365829473658294736582947365829473658294", - "timestamp": 1789776000000, - "valuationSat": 12583 - }, - "verificationKeyId": "sha256:4c095e183ea45a9d" - }, - { - "blockHash": "abababababababababababababababababababababababababababababababab", - "circuit": "zk.drift.v1", - "compactTarget": 486604799, - "driftScore": 0.25, - "entropyThreshold": 0.75, - "isAligned": true, - "proof": { - "circuit": "zk.drift.v1", - "pi_a": [ - "1", - "2", - "1" - ], - "pi_b": [ - [ - "1", - "2" - ], - [ - "3", - "4" - ], - [ - "1", - "0" - ] - ], - "pi_c": [ - "1", - "2", - "1" - ], - "publicSignals": [ - "1", - "2" - ], - "verificationKeyId": "sha256:4c095e183ea45a9d" - }, - "sessionContextHash": "abababababababababababababababababababababababababababababababab", - "targetBlockHeight": 920000, - "thermodynamicEntropyBits": 0.5 - } -]New value: +[ + { + "data": [ + { + "block": { + "height": 920000 + }, + "observed_at": "2026-09-19T00:00:00.000Z", + "thermodynamic": { + "target_multiplier": 125.83 + } + } + ], + "proof": "eyJwaV9hIjpbIjEyMyIsIjQ1NiIsIjEiXX0", + "publicInputs": { + "blockHeight": 920000, + "snapshotDigest": "1534979302823651498736582947365829473658294736582947365829473658294", + "thermodynamicHash": "782365829473658294736582947365829473658294736582947365829473658294", + "timestamp": 1789776000000, + "valuationSat": 12583 + }, + "verificationKeyId": "sha256:4c095e183ea45a9d" + }, + { + "blockHash": "abababababababababababababababababababababababababababababababab", + "circuit": "zk.drift.v1", + "compactTarget": 486604799, + "driftScore": 0.25, + "entropyThreshold": 0.75, + "isAligned": true, + "proof": { + "circuit": "zk.drift.v1", + "pi_a": [ + "1", + "2", + "1" + ], + "pi_b": [ + [ + "1", + "2" + ], + [ + "3", + "4" + ], + [ + "1", + "0" + ] + ], + "pi_c": [ + "1", + "2", + "1" + ], + "publicSignals": [ + "1", + "2" + ], + "verificationKeyId": "sha256:4c095e183ea45a9d" + }, + "sessionContextHash": "abababababababababababababababababababababababababababababababab", + "targetBlockHeight": 920000, + "thermodynamicEntropyBits": 0.5 + }, + { + "otsProof": "AQID", + "proofType": "ots", + "targetHash": "abababababababababababababababababababababababababababababababab" + } +] - changed
Input schema / oneOfPrevious value: -[ - { - "additionalProperties": false, - "description": "Legacy telemetry-bound Groth16 proof verification input. Example: provide a proof, public inputs, verification key, and telemetry data.", - "examples": [ - { - "data": [ - { - "block": { - "height": 920000 - }, - "observed_at": "2026-09-19T00:00:00.000Z", - "thermodynamic": { - "target_multiplier": 125.83 - } - } - ], - "proof": "eyJwaV9hIjpbIjEyMyIsIjQ1NiIsIjEiXX0", - "publicInputs": { - "blockHeight": 920000, - "snapshotDigest": "1534979302823651498736582947365829473658294736582947365829473658294", - "thermodynamicHash": "782365829473658294736582947365829473658294736582947365829473658294", - "timestamp": 1789776000000, - "valuationSat": 12583 - }, - "verificationKeyId": "sha256:4c095e183ea45a9d" - } - ], - "properties": { - "data": { - "description": "Telemetry snapshot payload object or array of objects containing canonical state values. Example: [{\"block\":{\"height\":920000},\"observed_at\":\"2026-09-19T00:00:00.000Z\",\"thermodynamic\":{\"target_multiplier\":125.83}}].", - "example": [ - { - "block": { - "height": 920000 - }, - "observed_at": "2026-09-19T00:00:00.000Z", - "thermodynamic": { - "target_multiplier": 125.83 - } - } - ], - "examples": [ - [ - { - "block": { - "height": 920000 - }, - "observed_at": "2026-09-19T00:00:00.000Z", - "thermodynamic": { - "target_multiplier": 125.83 - } - } - ] - ], - "type": [ - "object", - "array" - ] - }, - "proof": { - "description": "Base64url-encoded Groth16/Poseidon BN254 proof string without padding. Constraints: minLength: 1. Example: \"eyJwaV9hIjpbIjEyMyIsIjQ1NiIsIjEiXX0\".", - "example": "eyJwaV9hIjpbIjEyMyIsIjQ1NiIsIjEiXX0", - "examples": [ - "eyJwaV9hIjpbIjEyMyIsIjQ1NiIsIjEiXX0" - ], - "minLength": 1, - "type": "string" - }, - "publicInputs": { - "additionalProperties": false, - "description": "Expected public constants committed by the proof; fields must match the corresponding telemetry payload in data: non-negative blockHeight, non-empty snapshotDigest and thermodynamicHash, non-negative Unix-millisecond timestamp, and non-negative valuationSat. Example: blockHeight 920000 and valuationSat 12583.", - "examples": [ - { - "blockHeight": 920000, - "snapshotDigest": "1534979302823651498736582947365829473658294736582947365829473658294", - "thermodynamicHash": "782365829473658294736582947365829473658294736582947365829473658294", - "timestamp": 1789776000000, - "valuationSat": 12583 - } - ], - "properties": { - "blockHeight": { - "description": "Bitcoin block height committed into the proof. Constraints: minimum: 0. Example: 920000.", - "example": 920000, - "examples": [ - 920000 - ], - "minimum": 0, - "type": "integer" - }, - "snapshotDigest": { - "description": "Poseidon field digest of the canonical snapshot payload. Constraints: minLength: 1. Example: \"1534979302823651498736582947365829473658294736582947365829473658294\".", - "example": "1534979302823651498736582947365829473658294736582947365829473658294", - "examples": [ - "1534979302823651498736582947365829473658294736582947365829473658294" - ], - "minLength": 1, - "type": "string" - }, - "thermodynamicHash": { - "description": "Poseidon field hash of the thermodynamic telemetry values. Constraints: minLength: 1. Example: \"782365829473658294736582947365829473658294736582947365829473658294\".", - "example": "782365829473658294736582947365829473658294736582947365829473658294", - "examples": [ - "782365829473658294736582947365829473658294736582947365829473658294" - ], - "minLength": 1, - "type": "string" - }, - "timestamp": { - "description": "Unix timestamp in milliseconds committed into the proof. Constraints: minimum: 0. Example: 1789776000000.", - "example": 1789776000000, - "examples": [ - 1789776000000 - ], - "minimum": 0, - "type": "integer" - }, - "valuationSat": { - "description": "Satoshi valuation committed into the proof. Constraints: minimum: 0. Example: 12583.", - "example": 12583, - "examples": [ - 12583 - ], - "minimum": 0, - "type": "integer" - } - }, - "required": [ - "blockHeight", - "snapshotDigest", - "thermodynamicHash", - "timestamp", - "valuationSat" - ], - "type": "object" - }, - "verificationKeyId": { - "description": "SHA-256 verification-key identifier string formatted with 'sha256:' prefix. Constraints: minLength: 1. Example: \"sha256:4c095e183ea45a9d\".", - "example": "sha256:4c095e183ea45a9d", - "examples": [ - "sha256:4c095e183ea45a9d" - ], - "minLength": 1, - "type": "string" - } - }, - "required": [ - "proof", - "publicInputs", - "verificationKeyId", - "data" - ], - "type": "object" - }, - { - "additionalProperties": false, - "description": "Native zk.drift.v1 proof verification input, optionally bound to the complete verifier response. Example: supply the circuit discriminator, session hash, target height, threshold, and proof.", - "examples": [ - { - "blockHash": "abababababababababababababababababababababababababababababababab", - "circuit": "zk.drift.v1", - "compactTarget": 486604799, - "driftScore": 0.25, - "entropyThreshold": 0.75, - "isAligned": true, - "proof": { - "circuit": "zk.drift.v1", - "pi_a": [ - "1", - "2", - "1" - ], - "pi_b": [ - [ - "1", - "2" - ], - [ - "3", - "4" - ], - [ - "1", - "0" - ] - ], - "pi_c": [ - "1", - "2", - "1" - ], - "publicSignals": [ - "1", - "2" - ], - "verificationKeyId": "sha256:4c095e183ea45a9d" - }, - "sessionContextHash": "abababababababababababababababababababababababababababababababab", - "targetBlockHeight": 920000, - "thermodynamicEntropyBits": 0.5 - } - ], - "properties": { - "blockHash": { - "description": "Bitcoin block hash bound to the complete verifier response. Constraints: pattern: ^[0-9a-fA-F]{64}$. Example: \"abababababababababababababababababababababababababababababababab\".", - "example": "abababababababababababababababababababababababababababababababab", - "examples": [ - "abababababababababababababababababababababababababababababababab" - ], - "pattern": "^[0-9a-fA-F]{64}$", - "type": "string" - }, - "circuit": { - "const": "zk.drift.v1", - "description": "Drift proof circuit discriminator. Example: \"zk.drift.v1\".", - "example": "zk.drift.v1", - "examples": [ - "zk.drift.v1" - ], - "type": "string" - }, - "compactTarget": { - "description": "Raw compact target bits bound to the complete verifier response. Constraints: minimum: 0; maximum: 4294967295. Example: 486604799.", - "example": 486604799, - "examples": [ - 486604799 - ], - "maximum": 4294967295, - "minimum": 0, - "type": "integer" - }, - "driftScore": { - "description": "Drift score bound to the complete verifier response. Example: 0.25.", - "example": 0.25, - "examples": [ - 0.25 - ], - "type": "number" - }, - "entropyThreshold": { - "description": "Maximum accepted thermodynamic entropy threshold. Constraints: minimum: 0; maximum: 1. Example: 0.75.", - "example": 0.75, - "examples": [ - 0.75 - ], - "maximum": 1, - "minimum": 0, - "type": "number" - }, - "isAligned": { - "description": "Alignment result bound to the complete verifier response. Example: true.", - "example": true, - "examples": [ - true - ], - "type": "boolean" - }, - "proof": { - "additionalProperties": false, - "description": "Groth16 proof points, public signals, and verification-key identifier for zk.drift.v1. Example: pi_a, pi_b, pi_c, and public signals.", - "examples": [ - { - "circuit": "zk.drift.v1", - "pi_a": [ - "1", - "2", - "1" - ], - "pi_b": [ - [ - "1", - "2" - ], - [ - "3", - "4" - ], - [ - "1", - "0" - ] - ], - "pi_c": [ - "1", - "2", - "1" - ], - "publicSignals": [ - "1", - "2" - ], - "verificationKeyId": "sha256:4c095e183ea45a9d" - } - ], - "properties": { - "circuit": { - "const": "zk.drift.v1", - "description": "Proof circuit discriminator. Example: \"zk.drift.v1\".", - "example": "zk.drift.v1", - "examples": [ - "zk.drift.v1" - ], - "type": "string" - }, - "pi_a": { - "description": "Three Groth16 pi_a field elements. Example: [\"1\", \"2\", \"1\"].", - "examples": [ - [ - "1", - "2", - "1" - ] - ], - "items": { - "description": "Groth16 pi_a field element. Constraints: minLength: 1. Example: \"1\".", - "example": "1", - "examples": [ - "1" - ], - "minLength": 1, - "type": "string" - }, - "maxItems": 3, - "minItems": 3, - "type": "array" - }, - "pi_b": { - "description": "Three pairs of Groth16 pi_b field elements. Example: [[\"1\", \"2\"], [\"3\", \"4\"], [\"1\", \"0\"]].", - "examples": [ - [ - [ - "1", - "2" - ], - [ - "3", - "4" - ], - [ - "1", - "0" - ] - ] - ], - "items": { - "description": "A pair of Groth16 pi_b field elements. Example: [\"1\", \"2\"].", - "examples": [ - [ - "1", - "2" - ] - ], - "items": { - "description": "Groth16 pi_b field element. Constraints: minLength: 1. Example: \"1\".", - "example": "1", - "examples": [ - "1" - ], - "minLength": 1, - "type": "string" - }, - "maxItems": 2, - "minItems": 2, - "type": "array" - }, - "maxItems": 3, - "minItems": 3, - "type": "array" - }, - "pi_c": { - "description": "Three Groth16 pi_c field elements. Example: [\"1\", \"2\", \"1\"].", - "examples": [ - [ - "1", - "2", - "1" - ] - ], - "items": { - "description": "Groth16 pi_c field element. Constraints: minLength: 1. Example: \"1\".", - "example": "1", - "examples": [ - "1" - ], - "minLength": 1, - "type": "string" - }, - "maxItems": 3, - "minItems": 3, - "type": "array" - }, - "publicSignals": { - "description": "Public field elements bound to the drift proof. Example: [\"1\", \"2\"].", - "examples": [ - [ - "1", - "2" - ] - ], - "items": { - "description": "Public signal field element. Constraints: minLength: 1. Example: \"1\".", - "example": "1", - "examples": [ - "1" - ], - "minLength": 1, - "type": "string" - }, - "minItems": 1, - "type": "array" - }, - "verificationKeyId": { - "description": "Identifier of the verification key to use. Constraints: minLength: 1. Example: \"sha256:4c095e183ea45a9d\".", - "example": "sha256:4c095e183ea45a9d", - "examples": [ - "sha256:4c095e183ea45a9d" - ], - "minLength": 1, - "type": "string" - } - }, - "required": [ - "circuit", - "pi_a", - "pi_b", - "pi_c", - "publicSignals", - "verificationKeyId" - ], - "type": "object" - }, - "sessionContextHash": { - "description": "Hash binding this proof to its agent session context. Constraints: pattern: ^[0-9a-fA-F]{64}$. Example: \"abababababababababababababababababababababababababababababababab\".", - "example": "abababababababababababababababababababababababababababababababab", - "examples": [ - "abababababababababababababababababababababababababababababababab" - ], - "pattern": "^[0-9a-fA-F]{64}$", - "type": "string" - }, - "targetBlockHeight": { - "description": "Bitcoin block height being evaluated. Constraints: minimum: 0; maximum: 4294967295. Example: 920000.", - "example": 920000, - "examples": [ - 920000 - ], - "maximum": 4294967295, - "minimum": 0, - "type": "integer" - }, - "thermodynamicEntropyBits": { - "description": "Thermodynamic entropy value bound to the complete verifier response. Constraints: minimum: 0. Example: 0.5.", - "example": 0.5, - "examples": [ - 0.5 - ], - "minimum": 0, - "type": "number" - } - }, - "required": [ - "circuit", - "sessionContextHash", - "targetBlockHeight", - "entropyThreshold", - "proof" - ], - "type": "object" - } -]New value: +[ + { + "additionalProperties": false, + "description": "Legacy telemetry-bound Groth16 proof verification input. Example: provide a proof, public inputs, verification key, and telemetry data.", + "examples": [ + { + "data": [ + { + "block": { + "height": 920000 + }, + "observed_at": "2026-09-19T00:00:00.000Z", + "thermodynamic": { + "target_multiplier": 125.83 + } + } + ], + "proof": "eyJwaV9hIjpbIjEyMyIsIjQ1NiIsIjEiXX0", + "publicInputs": { + "blockHeight": 920000, + "snapshotDigest": "1534979302823651498736582947365829473658294736582947365829473658294", + "thermodynamicHash": "782365829473658294736582947365829473658294736582947365829473658294", + "timestamp": 1789776000000, + "valuationSat": 12583 + }, + "verificationKeyId": "sha256:4c095e183ea45a9d" + } + ], + "properties": { + "data": { + "description": "Telemetry snapshot payload object or array of objects containing canonical state values. Example: [{\"block\":{\"height\":920000},\"observed_at\":\"2026-09-19T00:00:00.000Z\",\"thermodynamic\":{\"target_multiplier\":125.83}}].", + "example": [ + { + "block": { + "height": 920000 + }, + "observed_at": "2026-09-19T00:00:00.000Z", + "thermodynamic": { + "target_multiplier": 125.83 + } + } + ], + "examples": [ + [ + { + "block": { + "height": 920000 + }, + "observed_at": "2026-09-19T00:00:00.000Z", + "thermodynamic": { + "target_multiplier": 125.83 + } + } + ] + ], + "type": [ + "object", + "array" + ] + }, + "proof": { + "description": "Base64url-encoded Groth16/Poseidon BN254 proof string without padding. Constraints: minLength: 1. Example: \"eyJwaV9hIjpbIjEyMyIsIjQ1NiIsIjEiXX0\".", + "example": "eyJwaV9hIjpbIjEyMyIsIjQ1NiIsIjEiXX0", + "examples": [ + "eyJwaV9hIjpbIjEyMyIsIjQ1NiIsIjEiXX0" + ], + "minLength": 1, + "type": "string" + }, + "proofType": { + "const": "groth16", + "default": "groth16", + "description": "Groth16 verification (default). Example: \"groth16\".", + "example": "groth16", + "examples": [ + "groth16" + ], + "type": "string" + }, + "publicInputs": { + "additionalProperties": false, + "description": "Expected public constants committed by the proof; fields must match the corresponding telemetry payload in data: non-negative blockHeight, non-empty snapshotDigest and thermodynamicHash, non-negative Unix-millisecond timestamp, and non-negative valuationSat. Example: blockHeight 920000 and valuationSat 12583.", + "examples": [ + { + "blockHeight": 920000, + "snapshotDigest": "1534979302823651498736582947365829473658294736582947365829473658294", + "thermodynamicHash": "782365829473658294736582947365829473658294736582947365829473658294", + "timestamp": 1789776000000, + "valuationSat": 12583 + } + ], + "properties": { + "blockHeight": { + "description": "Bitcoin block height committed into the proof. Constraints: minimum: 0. Example: 920000.", + "example": 920000, + "examples": [ + 920000 + ], + "minimum": 0, + "type": "integer" + }, + "snapshotDigest": { + "description": "Poseidon field digest of the canonical snapshot payload. Constraints: minLength: 1. Example: \"1534979302823651498736582947365829473658294736582947365829473658294\".", + "example": "1534979302823651498736582947365829473658294736582947365829473658294", + "examples": [ + "1534979302823651498736582947365829473658294736582947365829473658294" + ], + "minLength": 1, + "type": "string" + }, + "thermodynamicHash": { + "description": "Poseidon field hash of the thermodynamic telemetry values. Constraints: minLength: 1. Example: \"782365829473658294736582947365829473658294736582947365829473658294\".", + "example": "782365829473658294736582947365829473658294736582947365829473658294", + "examples": [ + "782365829473658294736582947365829473658294736582947365829473658294" + ], + "minLength": 1, + "type": "string" + }, + "timestamp": { + "description": "Unix timestamp in milliseconds committed into the proof. Constraints: minimum: 0. Example: 1789776000000.", + "example": 1789776000000, + "examples": [ + 1789776000000 + ], + "minimum": 0, + "type": "integer" + }, + "valuationSat": { + "description": "Satoshi valuation committed into the proof. Constraints: minimum: 0. Example: 12583.", + "example": 12583, + "examples": [ + 12583 + ], + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "blockHeight", + "snapshotDigest", + "thermodynamicHash", + "timestamp", + "valuationSat" + ], + "type": "object" + }, + "verificationKeyId": { + "description": "SHA-256 verification-key identifier string formatted with 'sha256:' prefix. Constraints: minLength: 1. Example: \"sha256:4c095e183ea45a9d\".", + "example": "sha256:4c095e183ea45a9d", + "examples": [ + "sha256:4c095e183ea45a9d" + ], + "minLength": 1, + "type": "string" + } + }, + "required": [ + "proof", + "publicInputs", + "verificationKeyId", + "data" + ], + "type": "object" + }, + { + "additionalProperties": false, + "description": "Native zk.drift.v1 proof verification input, optionally bound to the complete verifier response. Example: supply the circuit discriminator, session hash, target height, threshold, and proof.", + "examples": [ + { + "blockHash": "abababababababababababababababababababababababababababababababab", + "circuit": "zk.drift.v1", + "compactTarget": 486604799, + "driftScore": 0.25, + "entropyThreshold": 0.75, + "isAligned": true, + "proof": { + "circuit": "zk.drift.v1", + "pi_a": [ + "1", + "2", + "1" + ], + "pi_b": [ + [ + "1", + "2" + ], + [ + "3", + "4" + ], + [ + "1", + "0" + ] + ], + "pi_c": [ + "1", + "2", + "1" + ], + "publicSignals": [ + "1", + "2" + ], + "verificationKeyId": "sha256:4c095e183ea45a9d" + }, + "sessionContextHash": "abababababababababababababababababababababababababababababababab", + "targetBlockHeight": 920000, + "thermodynamicEntropyBits": 0.5 + } + ], + "properties": { + "blockHash": { + "description": "Bitcoin block hash bound to the complete verifier response. Constraints: pattern: ^[0-9a-fA-F]{64}$. Example: \"abababababababababababababababababababababababababababababababab\".", + "example": "abababababababababababababababababababababababababababababababab", + "examples": [ + "abababababababababababababababababababababababababababababababab" + ], + "pattern": "^[0-9a-fA-F]{64}$", + "type": "string" + }, + "circuit": { + "const": "zk.drift.v1", + "description": "Drift proof circuit discriminator. Example: \"zk.drift.v1\".", + "example": "zk.drift.v1", + "examples": [ + "zk.drift.v1" + ], + "type": "string" + }, + "compactTarget": { + "description": "Raw compact target bits bound to the complete verifier response. Constraints: minimum: 0; maximum: 4294967295. Example: 486604799.", + "example": 486604799, + "examples": [ + 486604799 + ], + "maximum": 4294967295, + "minimum": 0, + "type": "integer" + }, + "driftScore": { + "description": "Drift score bound to the complete verifier response. Example: 0.25.", + "example": 0.25, + "examples": [ + 0.25 + ], + "type": "number" + }, + "entropyThreshold": { + "description": "Maximum accepted thermodynamic entropy threshold. Constraints: minimum: 0; maximum: 1. Example: 0.75.", + "example": 0.75, + "examples": [ + 0.75 + ], + "maximum": 1, + "minimum": 0, + "type": "number" + }, + "isAligned": { + "description": "Alignment result bound to the complete verifier response. Example: true.", + "example": true, + "examples": [ + true + ], + "type": "boolean" + }, + "proof": { + "additionalProperties": false, + "description": "Groth16 proof points, public signals, and verification-key identifier for zk.drift.v1. Example: pi_a, pi_b, pi_c, and public signals.", + "examples": [ + { + "circuit": "zk.drift.v1", + "pi_a": [ + "1", + "2", + "1" + ], + "pi_b": [ + [ + "1", + "2" + ], + [ + "3", + "4" + ], + [ + "1", + "0" + ] + ], + "pi_c": [ + "1", + "2", + "1" + ], + "publicSignals": [ + "1", + "2" + ], + "verificationKeyId": "sha256:4c095e183ea45a9d" + } + ], + "properties": { + "circuit": { + "const": "zk.drift.v1", + "description": "Proof circuit discriminator. Example: \"zk.drift.v1\".", + "example": "zk.drift.v1", + "examples": [ + "zk.drift.v1" + ], + "type": "string" + }, + "pi_a": { + "description": "Three Groth16 pi_a field elements. Example: [\"1\", \"2\", \"1\"].", + "examples": [ + [ + "1", + "2", + "1" + ] + ], + "items": { + "description": "Groth16 pi_a field element. Constraints: minLength: 1. Example: \"1\".", + "example": "1", + "examples": [ + "1" + ], + "minLength": 1, + "type": "string" + }, + "maxItems": 3, + "minItems": 3, + "type": "array" + }, + "pi_b": { + "description": "Three pairs of Groth16 pi_b field elements. Example: [[\"1\", \"2\"], [\"3\", \"4\"], [\"1\", \"0\"]].", + "examples": [ + [ + [ + "1", + "2" + ], + [ + "3", + "4" + ], + [ + "1", + "0" + ] + ] + ], + "items": { + "description": "A pair of Groth16 pi_b field elements. Example: [\"1\", \"2\"].", + "examples": [ + [ + "1", + "2" + ] + ], + "items": { + "description": "Groth16 pi_b field element. Constraints: minLength: 1. Example: \"1\".", + "example": "1", + "examples": [ + "1" + ], + "minLength": 1, + "type": "string" + }, + "maxItems": 2, + "minItems": 2, + "type": "array" + }, + "maxItems": 3, + "minItems": 3, + "type": "array" + }, + "pi_c": { + "description": "Three Groth16 pi_c field elements. Example: [\"1\", \"2\", \"1\"].", + "examples": [ + [ + "1", + "2", + "1" + ] + ], + "items": { + "description": "Groth16 pi_c field element. Constraints: minLength: 1. Example: \"1\".", + "example": "1", + "examples": [ + "1" + ], + "minLength": 1, + "type": "string" + }, + "maxItems": 3, + "minItems": 3, + "type": "array" + }, + "publicSignals": { + "description": "Public field elements bound to the drift proof. Example: [\"1\", \"2\"].", + "examples": [ + [ + "1", + "2" + ] + ], + "items": { + "description": "Public signal field element. Constraints: minLength: 1. Example: \"1\".", + "example": "1", + "examples": [ + "1" + ], + "minLength": 1, + "type": "string" + }, + "minItems": 1, + "type": "array" + }, + "verificationKeyId": { + "description": "Identifier of the verification key to use. Constraints: minLength: 1. Example: \"sha256:4c095e183ea45a9d\".", + "example": "sha256:4c095e183ea45a9d", + "examples": [ + "sha256:4c095e183ea45a9d" + ], + "minLength": 1, + "type": "string" + } + }, + "required": [ + "circuit", + "pi_a", + "pi_b", + "pi_c", + "publicSignals", + "verificationKeyId" + ], + "type": "object" + }, + "proofType": { + "const": "groth16", + "default": "groth16", + "description": "Groth16 verification (default). Example: \"groth16\".", + "example": "groth16", + "examples": [ + "groth16" + ], + "type": "string" + }, + "sessionContextHash": { + "description": "Hash binding this proof to its agent session context. Constraints: pattern: ^[0-9a-fA-F]{64}$. Example: \"abababababababababababababababababababababababababababababababab\".", + "example": "abababababababababababababababababababababababababababababababab", + "examples": [ + "abababababababababababababababababababababababababababababababab" + ], + "pattern": "^[0-9a-fA-F]{64}$", + "type": "string" + }, + "targetBlockHeight": { + "description": "Bitcoin block height being evaluated. Constraints: minimum: 0; maximum: 4294967295. Example: 920000.", + "example": 920000, + "examples": [ + 920000 + ], + "maximum": 4294967295, + "minimum": 0, + "type": "integer" + }, + "thermodynamicEntropyBits": { + "description": "Thermodynamic entropy value bound to the complete verifier response. Constraints: minimum: 0. Example: 0.5.", + "example": 0.5, + "examples": [ + 0.5 + ], + "minimum": 0, + "type": "number" + } + }, + "required": [ + "circuit", + "sessionContextHash", + "targetBlockHeight", + "entropyThreshold", + "proof" + ], + "type": "object" + }, + { + "additionalProperties": false, + "description": "OTS mode requires proofType ots, a complete receipt, and its SHA-256 file digest.", + "examples": [ + { + "otsProof": "AQID", + "targetHash": "abababababababababababababababababababababababababababababababab" + } + ], + "properties": { + "otsProof": { + "description": "Canonical base64 or even-length hex serialized .ots receipt (maximum 512 KiB decoded). Constraints: minLength: 1; maxLength: 1048576. Example: \"AQID\".", + "example": "AQID", + "examples": [ + "AQID" + ], + "maxLength": 1048576, + "minLength": 1, + "type": "string" + }, + "proofType": { + "const": "ots", + "description": "OpenTimestamps Bitcoin verification. Example: \"ots\".", + "example": "ots", + "examples": [ + "ots" + ], + "type": "string" + }, + "targetHash": { + "description": "64-character SHA-256 digest recorded by the receipt; not a Bitcoin header hash. Constraints: pattern: ^[0-9a-fA-F]{64}$. Example: \"abababababababababababababababababababababababababababababababab\".", + "example": "abababababababababababababababababababababababababababababababab", + "examples": [ + "abababababababababababababababababababababababababababababababab" + ], + "pattern": "^[0-9a-fA-F]{64}$", + "type": "string" + } + }, + "required": [ + "proofType", + "otsProof", + "targetHash" + ], + "type": "object" + } +] - changed
Output schema / descriptionPrevious value: -"Cryptographic proof verification result."New value: +"Groth16 verification timing or OTS Bitcoin attestation result, depending on proofType." - changed
Output schema / examplesPrevious value: -[ - { - "computationTimeMs": 3.284, - "valid": true, - "verifiedAt": "2026-09-19T01:41:36.458Z" - } -]New value: +[ + { + "computationTimeMs": 3.284, + "valid": true, + "verifiedAt": "2026-09-19T01:41:36.458Z" + }, + { + "bitcoinHeaderHash": "abababababababababababababababababababababababababababababababab", + "blockHeight": 920000, + "status": "bitcoin_block_attested", + "valid": true + } +] - added
Output schema / oneOfAdded value: +[ + { + "required": [ + "verifiedAt", + "computationTimeMs" + ] + }, + { + "required": [ + "status", + "blockHeight", + "bitcoinHeaderHash" + ] + } +] - added
Output schema / properties / bitcoinHeaderHashAdded value: +{ + "description": "Canonical Bitcoin block header hash at the attested height, or null if not verified. Example: \"abababababababababababababababababababababababababababababababab\".", + "example": "abababababababababababababababababababababababababababababababab", + "examples": [ + "abababababababababababababababababababababababababababababababab" + ], + "type": [ + "string", + "null" + ] +} - added
Output schema / properties / blockHeightAdded value: +{ + "description": "Bitcoin attestation height, or null if not verified. Example: 920000.", + "example": 920000, + "examples": [ + 920000 + ], + "type": [ + "integer", + "null" + ] +} - added
Output schema / properties / statusAdded value: +{ + "description": "Whether the OTS record is Bitcoin-attested; calendar-only receipts are unverified. Constraints: allowed values: bitcoin_block_attested, unverified. Example: \"bitcoin_block_attested\".", + "enum": [ + "bitcoin_block_attested", + "unverified" + ], + "example": "bitcoin_block_attested", + "examples": [ + "bitcoin_block_attested" + ], + "type": "string" +} - changed
Output schema / properties / valid / descriptionPrevious value: -"Whether the proof is valid and bound to the snapshot. Example: true."New value: +"True only for a digest-matching, Bitcoin-attested OTS record with a valid chain-header lookup. Example: true." - changed
Output schema / requiredPrevious value: -[ - "valid", - "verifiedAt", - "computationTimeMs" -]New value: +[ + "valid" +]
- Removed
proof.verify_ots
2 tool updates
- Added
payment.settle - Added
proof.verify_ots
1 tool update
- Changed
payment.info2 fields changed- changed
Output schema / descriptionPrevious value: -"Configured MCP prices in sats (zero denotes a free tool) and fixed-fee Lightning L402 challenge rules. No live invoice is created by this tool."New value: +"Configured MCP prices in sats (zero denotes a free tool), Lightning L402 rules, and optional Base USDC x402 terms. No live invoice is created by this tool." - added
Output schema / properties / x402Added value: +{ + "additionalProperties": false, + "description": "Base mainnet USDC x402 exact terms; present only when authenticated CDP settlement is configured.", + "examples": [ + { + "amount": "1000", + "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913", + "network": "eip155:8453", + "payTo": "0x7a4183ce5b9989833bb33133dcbb8efd6a84e775", + "scheme": "exact" + } + ], + "properties": { + "amount": { + "description": "Atomic USDC units per paid call. Example: \"1000\".", + "example": "1000", + "examples": [ + "1000" + ], + "type": "string" + }, + "asset": { + "description": "USDC token contract. Example: \"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913\".", + "example": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913", + "examples": [ + "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913" + ], + "type": "string" + }, + "network": { + "description": "x402 CAIP-2 network. Example: \"eip155:8453\".", + "example": "eip155:8453", + "examples": [ + "eip155:8453" + ], + "type": "string" + }, + "payTo": { + "description": "Payment recipient. Example: \"0x7a4183ce5b9989833bb33133dcbb8efd6a84e775\".", + "example": "0x7a4183ce5b9989833bb33133dcbb8efd6a84e775", + "examples": [ + "0x7a4183ce5b9989833bb33133dcbb8efd6a84e775" + ], + "type": "string" + }, + "scheme": { + "description": "x402 scheme. Example: \"exact\".", + "example": "exact", + "examples": [ + "exact" + ], + "type": "string" + } + }, + "required": [ + "network", + "scheme", + "asset", + "amount", + "payTo" + ], + "type": "object" +}
Related MCP Servers
- AlicenseAqualityCmaintenanceEnables brand visibility monitoring across major AI platforms like ChatGPT, Claude, Gemini, and Perplexity. It allows users to track visibility scores, analyze competitor data, and receive actionable insights to improve AI-generated brand recommendations.1611 npm1MIT
- AlicenseCqualityBmaintenanceCompetitor Monitor AI - MCP server providing AI-powered tools and automation by MEOK AI Labs117 npm54 PyPIMIT
- AlicenseAqualityCmaintenanceRevnuvo Company Intelligence tells AI agents what changed at a company, with evidence. It observes company websites, technologies, and DNS over time and returns timestamped, confidence-aware changes, signals, and monitoring.9MIT

industrylens-mcpofficial
AlicenseNot gradedqualityBmaintenanceBrowse IndustryLens's published competitive-intelligence reports and head-to-head competitor comparisons from any AI agent — real, source-backed data.MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.