addrbookFor publishers
← The evidence ledger

Evidence row 56445

Observed , by baseline/1.

Kind
listing
About
source_record mcp_registry:io.url2md/mcp
Recorded
Previous row
None: the first of its kind about this subject
Body SHA-256
e7247a79b3b6643da787dafe95d0e4ba82dc5cac55b4e8d4575bbbbcb1ad87c1
Leaf
0x59c3f4a275abb8c60417ef23f6a51a26dd6fb69f650592e245f1676c3553b220

What was observed

{
  "endpoints": [
    [
      "mcp",
      "https://url2md.io/mcp"
    ],
    [
      "web",
      "https://url2md.io/"
    ]
  ],
  "name": "url2md",
  "owner_address": null,
  "raw": {
    "_meta": {
      "io.modelcontextprotocol.registry/official": {
        "isLatest": true,
        "publishedAt": "2026-09-14T00:26:48.579482Z",
        "status": "active",
        "statusChangedAt": "2026-09-14T00:26:48.579482Z",
        "updatedAt": "2026-09-14T00:26:48.579482Z"
      }
    },
    "server": {
      "$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
      "description": "PDFs, JavaScript pages and ordinary HTML as clean Markdown. Follows robots.txt per RFC 9309.",
      "name": "io.url2md/mcp",
      "packages": [
        {
          "environmentVariables": [
            {
              "description": "Path to a file holding the 0x-prefixed private key of a wallet with USDC on Base. Preferred over URL2MD_PRIVATE_KEY: a path is not a secret, and a key on a command line is visible to every process on the machine. One of the two key variables is required.",
              "format": "filepath",
              "name": "URL2MD_PRIVATE_KEY_FILE"
            },
            {
              "description": "The key itself: 0x followed by 64 hex characters. Use URL2MD_PRIVATE_KEY_FILE instead where you can. One of the two key variables is required.",
              "isSecret": true,
              "name": "URL2MD_PRIVATE_KEY"
            },
            {
              "default": "0.10",
              "description": "The most this server will commit for one call, in USD, across every payment round of that call. A tolled page takes two rounds and this ceiling covers both.",
              "name": "URL2MD_MAX_PRICE_USD"
            },
            {
              "default": "1.00",
              "description": "The most this server will commit in total for as long as the process runs. Restarting resets it.",
              "name": "URL2MD_MAX_SPEND_USD"
            },
            {
              "default": "https://url2md.io",
              "description": "The url2md deployment to call. Must be https (only a loopback address may be plain http), because this is the origin every 402 is checked against.",
              "name": "URL2MD_BASE_URL"
            },
            {
              "default": "90000",
              "description": "How long to wait for one conversion, in milliseconds. The default covers the service's own worst case: 20 s of fetching plus 55 s of headless render. Do not lower it to 30 s — that is the navigation timeout inside the browser, and on a page that needed a browser your payment has already settled by the time the render starts.",
              "name": "URL2MD_TIMEOUT_MS"
            }
          ],
          "identifier": "@url2md-io/mcp",
          "registryBaseUrl": "https://registry.npmjs.org",
          "registryType": "npm",
          "transport": {
            "type": "stdio"
          },
          "version": "0.1.5"
        }
      ],
      "remotes": [
        {
          "type": "streamable-http",
          "url": "https://url2md.io/mcp"
        }
      ],
      "title": "url2md",
      "version": "0.1.5",
      "websiteUrl": "https://url2md.io"
    }
  },
  "source": "mcp_registry",
  "summary": "PDFs, JavaScript pages and ordinary HTML as clean Markdown. Follows robots.txt per RFC 9309."
}

What the leaf hashes

{"body":"e7247a79b3b6643da787dafe95d0e4ba82dc5cac55b4e8d4575bbbbcb1ad87c1","id":56445,"kind":"listing","method":"baseline/1","observed_us":1793025439955379,"prev":null,"subject":"mcp_registry:io.url2md/mcp","subject_kind":"source_record"}

Proof

Fold these into the leaf in order, hashing each sorted pair with keccak256, to reach the root of (296695 rows).

  1. 0x59c4044729d09746b7f352ede1e0f2f02237415067e207d5c4ef747040b4e59b
  2. 0x277fc72e6dd85b1b17b6bab455c513389ab2901f4b2f4a03fe60ecf83e94ab25
  3. 0xe06484f60a8e58f99ecc0158579b1a83bd125cfb90acecf7c0a10b736b2e4dc7
  4. 0x3daa1076b0221f0dbc4174cb7e692771b7d7da366140c8d73bf76729a2a63d2f
  5. 0x040a31f6c0367367c2b968dd8139d060fd7af5e37f63c10076984accd9b0ae81
  6. 0x6f7992f2b6314f2b82dbd56c187c7230680e75bc8fdee8fcd8a58155e6ccdbe1
  7. 0x7ed6f02e9a01c80cf90e54d7c7acafcde8b428589334a379f9b8e2ee03bc4692
  8. 0xb6e07e0c43bacd07643b7cf89d943790d77217816fd60433b71c236e9cf96823
  9. 0x9fe2b5bb49c3c1c0cfb9a7e2175505abb418851419201d4ff747b61a8778232a
  10. 0x109a3cbe67d20751c1bafc45b08ecc03404d3cc4decd7b239de884bc7e6340d6
  11. 0x3ada80dcde3daf850269166ea2ab667084c23fe8ab3b3994664b930470ebdef7
  12. 0xf522fa92d4115c2b18b96aa43119f8df9b4e96c92f5d6449d0fe96dcd4bf324c
  13. 0xc8abb13c711b67d9f1ef145286ed450a0f5566f054a4b290ea3d711873bcbe20
  14. 0x5cdeb4648502e0633d01cc4f3379d48cccb9d4f528565b2868eb93db0df9e829
  15. 0x7726154b91b2ad65b13849ef6cb6443b1f0ff113a3089c9bd5f2bcfc16be099d
  16. 0x47b89901b0f07938a6b9a66ddf35683903f79d756a7c7763665fd632758b08d0
  17. 0x9a83be955a206deb65b995adfd92c58fa31c95fbbf926bd199d300e70b08b26d
  18. 0x20704208aa6923d6b2450ef74ede87a6e0265d46447926038fe9506e9e154b2d
  19. 0x9b9ce5b74b9bab5121612ef6b64920a8d453cbf311096a423eef9702747e868a
Day root
0xf43e8dcc3d451a4788b26be904c55e8c4c0fa75c9666796c51db38d37e2c0df8
Chained
0x702d5ac508f08b0d1accf36af25822d8e5660367494edd17a642fb61e158a57a
Published
On Arc Testnet, block 69251483: 0x495162f8936e19f0039918feebe6c307f327cd6bf8c37219620b1970041fa9ae

How to check it · This row as JSON