Skip to main content
Glama

Bitcoin Stratigraphy Enterprise Data Engine & Agent Notary Hub

Compare Stratigraphy Strata

stratigraphy.get_diff
Read-onlyIdempotent

Calculate signed arithmetic and thermodynamic deltas between fromTarget (baseline height or UTC date) and toTarget (comparison height, UTC date, or 'latest' indexed entry). Use this tool when measuring block-to-block divergence or net change between two points without fetching intermediate records. Use stratigraphy.get_range for full interval series, stratigraphy.get for a single snapshot, stratigraphy.get_digest for compact hashes, or stratigraphy.list for catalog discovery. Paid L402 call: on HTTP 402, pay the invoice and retry with Authorization: L402 :.

Input Schema

NameRequiredDescriptionDefault
toTargetNoOptional 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
fromTargetYesRequired 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

NameRequiredDescriptionDefault
toYesReal captured to-target values.
fromYesReal captured from-target values.
deltaYesSigned arithmetic deltas; watts derive from the assumed 15 J/TH baseline.
live_metricsYesHal 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_stateYesavailable or no_archives; no synthetic receipt is created.
proofAvailableYesTrue only if an archived JSON/OTS pair was returned.
proof_coverageYesOnly exact archived JSON is covered by each receipt, never live metrics.
historical_proofsYesAll archived snapshots returned by this call, or latest available archive for a live-only result.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed23 schema fields changed
    • changedOutput schema / description
      Previous 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."
    • changedOutput schema / examples
      Previous 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
      +    }
      +  }
      +]
    • addedOutput schema / properties / archive_state
      Added value: +{
      +  "description": "available or no_archives; no synthetic receipt is created.",
      +  "example": "available",
      +  "examples": [
      +    "available"
      +  ],
      +  "type": "string"
      +}
    • removedOutput schema / properties / delta / additionalProperties
      Removed value: -false
    • changedOutput schema / properties / delta / description
      Previous 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."
    • changedOutput schema / properties / delta / examples
      Previous value: -[
      -  {
      -    "heightDelta": 144,
      -    "multiplierDelta": 0.33,
      -    "percentageChange": "0.26%",
      -    "timeSpanDays": 1
      -  }
      -]New value: +[
      +  {
      +    "heightDelta": 100
      +  }
      +]
    • removedOutput schema / properties / delta / properties
      Removed 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"
      -  }
      -}
    • removedOutput schema / properties / delta / required
      Removed value: -[
      -  "heightDelta",
      -  "multiplierDelta",
      -  "percentageChange",
      -  "timeSpanDays"
      -]
    • removedOutput schema / properties / from / additionalProperties
      Removed value: -false
    • changedOutput schema / properties / from / description
      Previous 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."
    • changedOutput schema / properties / from / examples
      Previous value: -[
      -  {
      -    "date": "2026-09-08",
      -    "height": 919856,
      -    "target_multiplier": 125.5
      -  }
      -]New value: +[
      +  {
      +    "height": 919900
      +  }
      +]
    • removedOutput schema / properties / from / properties
      Removed 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"
      -  }
      -}
    • removedOutput schema / properties / from / required
      Removed value: -[
      -  "height",
      -  "date",
      -  "target_multiplier"
      -]
    • addedOutput schema / properties / historical_proofs
      Added 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"
      +}
    • addedOutput schema / properties / live_metrics
      Added 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"
      +}
    • addedOutput schema / properties / proofAvailable
      Added value: +{
      +  "description": "True only if an archived JSON/OTS pair was returned.",
      +  "example": true,
      +  "examples": [
      +    true
      +  ],
      +  "type": "boolean"
      +}
    • addedOutput schema / properties / proof_coverage
      Added 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"
      +}
    • removedOutput schema / properties / to / additionalProperties
      Removed value: -false
    • changedOutput schema / properties / to / description
      Previous 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."
    • changedOutput schema / properties / to / examples
      Previous value: -[
      -  {
      -    "date": "2026-09-08",
      -    "height": 919856,
      -    "target_multiplier": 125.5
      -  }
      -]New value: +[
      +  {
      +    "height": 920000
      +  }
      +]
    • removedOutput schema / properties / to / properties
      Removed 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"
      -  }
      -}
    • removedOutput schema / properties / to / required
      Removed value: -[
      -  "height",
      -  "date",
      -  "target_multiplier"
      -]
    • changedOutput schema / required
      Previous value: -[
      -  "from",
      -  "to",
      -  "delta"
      -]New value: +[
      +  "from",
      +  "to",
      +  "delta",
      +  "live_metrics",
      +  "historical_proofs",
      +  "proofAvailable",
      +  "archive_state",
      +  "proof_coverage"
      +]
  2. Added

TDQS

A4.6/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations cover the safety profile (readOnly, idempotent, non-destructive, closed-world), and the description adds behavior the annotations cannot express: it is a paid L402 call and gives the exact 402 remediation (pay the invoice, retry with Authorization: L402 <macaroon>:<preimage>). It also warns that 'latest' means the latest indexed dataset entry, not the live Bitcoin tip, preventing a likely agent misconception.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the operation, then usage, then alternatives, then payment mechanics — a sensible ordering. It is slightly repetitive, restating the 'latest' caveat and the either-order rule already present in the schema, which costs it the top mark.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a two-parameter read tool with an output schema and full annotations, the description covers everything an agent needs: purpose, selection criteria, sibling routing, and the non-obvious payment/auth flow. Return format is delegated appropriately to the output schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so both parameters are fully documented in the schema, including the pattern, examples, and the 'deltas are toTarget minus fromTarget' ordering rule. The description largely restates these facts (signed deltas, either order valid, latest semantics) rather than adding new parameter meaning, so the baseline of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a precise verb+resource: 'Calculate signed arithmetic and thermodynamic deltas between fromTarget ... and toTarget'. It bounds the operation to two-point comparison and explicitly contrasts itself with four sibling tools, so an agent can select it without opening a schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives an explicit use condition ('measuring block-to-block divergence or net change between two points without fetching intermediate records') and then routes to alternatives by name and purpose: get_range for full interval series, get for a single snapshot, get_digest for compact hashes, list for catalog discovery.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources