addrbookFor publishers
← The evidence ledger

Evidence row 34243

Observed , by baseline/1.

Kind
listing
About
source_record mcp_registry:io.github.bobbyhouse/project-gutenberg-mcp
Recorded
Previous row
None: the first of its kind about this subject
Body SHA-256
a530408d06141530811ba6381d6d4c9b3904450edac0024d449901d70cc1ccb4
Leaf
0x572c690625374d56f2a2cebd13acd00236c686a6065c8dc60cb4630a744eeeb9

What was observed

{
  "endpoints": [
    [
      "web",
      "https://github.com/bobbyhouse/project-gutenberg-mcp"
    ]
  ],
  "name": "Project Gutenberg MCP",
  "owner_address": null,
  "raw": {
    "_meta": {
      "io.modelcontextprotocol.registry/official": {
        "isLatest": true,
        "publishedAt": "2026-03-25T16:50:39.703503Z",
        "status": "active",
        "statusChangedAt": "2026-03-25T16:50:39.703503Z",
        "updatedAt": "2026-03-25T16:50:39.703503Z"
      }
    },
    "server": {
      "$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
      "description": "Read Project Gutenberg books via MCP. Search, fetch metadata, and retrieve text in passages.",
      "name": "io.github.bobbyhouse/project-gutenberg-mcp",
      "packages": [
        {
          "environmentVariables": [
            {
              "description": "Base URL of your Gutenberg mirror. Run the mirror from the mirror/ directory and point this at it. See the README for setup instructions.",
              "isRequired": true,
              "name": "GUTENBERG_BASE_URL",
              "placeholder": "http://localhost:8080"
            },
            {
              "description": "Comma-separated list of tools to expose. Available: search_books, get_book_metadata, fetch_book_text, list_passages, get_passage",
              "isRequired": true,
              "name": "GUTENBERG_TOOLS",
              "placeholder": "get_book_metadata,list_passages,get_passage"
            },
            {
              "description": "Project Gutenberg book ID to use as the default for all tools. Find IDs via search_books. Example: 2680 for Meditations by Marcus Aurelius.",
              "format": "number",
              "name": "GUTENBERG_BOOK_ID",
              "placeholder": "2680"
            },
            {
              "default": "4096",
              "description": "Size in bytes of each passage returned by get_passage.",
              "format": "number",
              "name": "GUTENBERG_CHUNK_SIZE"
            },
            {
              "default": "en",
              "description": "Default ISO 639-1 language code filter for search_books. Used when the caller omits the language parameter.",
              "name": "GUTENBERG_LANGUAGE"
            }
          ],
          "identifier": "roberthouse224/project-gutenberg-mcp:1.2.0",
          "registryType": "oci",
          "runtimeArguments": [
            {
              "type": "positional",
              "value": "run"
            },
            {
              "name": "-i",
              "type": "named"
            },
            {
              "name": "--rm",
              "type": "named"
            }
          ],
          "runtimeHint": "docker",
          "transport": {
            "type": "stdio"
          }
        }
      ],
      "repository": {
        "source": "github",
        "url": "https://github.com/bobbyhouse/project-gutenberg-mcp"
      },
      "title": "Project Gutenberg MCP",
      "version": "1.2.0",
      "websiteUrl": "https://github.com/bobbyhouse/project-gutenberg-mcp"
    }
  },
  "source": "mcp_registry",
  "summary": "Read Project Gutenberg books via MCP. Search, fetch metadata, and retrieve text in passages."
}

What the leaf hashes

{"body":"a530408d06141530811ba6381d6d4c9b3904450edac0024d449901d70cc1ccb4","id":34243,"kind":"listing","method":"baseline/1","observed_us":1793025370117991,"prev":null,"subject":"mcp_registry:io.github.bobbyhouse/project-gutenberg-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. 0x572ccff461b932f983b25a33a2544afa41cc2f91aceaeb44e9396918ce7d6e0d
  2. 0x83fc626c51ef082d7a1eb3ba37a727647da4c6e53701465fd73462aa3fad1022
  3. 0x656573882cd2c843eddade4b8d5d218d94122d146f0eddf3801ce7f08987d8c0
  4. 0x3be8659a29195a97ae7b9942755ddd77473b6068719029c723afb5453124322f
  5. 0x9667ad69265dc319b1e45ef2f3658496b39809ff2893d66102c55082c6f4f713
  6. 0x54664e4bd339e0f6f0f2f03249eb01ba752f531b4a8152ff32e6b4f6468b660d
  7. 0x438a91aa3b017fa2c657770f7704d22c205a2bc18d10104a879bb34753bc479f
  8. 0x209b98347f8f0dcdc993464a1dfa20b2c55a854b03a35ead2e82ed6e3c8f9a18
  9. 0x600646c140670acc968272899660cdd2c7c9bd356916718cd6f996c3d0eff5ab
  10. 0x6ad191c620905d75c8f292ab1bfa2ccb573a7a6056d4736144314aef5604460e
  11. 0x7c6e7d8ec8a6bb5540ab8e4e885e6c646f71198fce1b0e917447538a70811486
  12. 0x01ecb94c2efbfb8e9050ebbd813fbba80bbcbc345f98de707345bc4bc88c94e8
  13. 0x8ba3430866b4c11cea7eba9923ee4fa8a5074849df417006e4441426c1f13056
  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