addrbookFor publishers
← The evidence ledger

Evidence row 44589

Observed , by baseline/1.

Kind
listing
About
source_record mcp_registry:io.github.ni-c/audiobookshelf-mcp
Recorded
Previous row
None: the first of its kind about this subject
Body SHA-256
301e0c8483fa6a131fbbc92b3d0d4332a4d7aaf1d94df6dd613516432bef6db1
Leaf
0x908c4114bd28b84cd9dbcfccb34f8b3d4958c401b5664a15024ec68670e25422

What was observed

{
  "endpoints": [
    [
      "web",
      "https://audiobookshelf-mcp.ni-c.de/"
    ]
  ],
  "name": "Audiobookshelf",
  "owner_address": null,
  "raw": {
    "_meta": {
      "io.modelcontextprotocol.registry/official": {
        "isLatest": true,
        "publishedAt": "2026-09-07T19:10:27.805364Z",
        "status": "active",
        "statusChangedAt": "2026-09-07T19:10:27.805364Z",
        "updatedAt": "2026-09-07T19:10:27.805364Z"
      }
    },
    "server": {
      "$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
      "description": "Browse your Audiobookshelf libraries and keep listening progress, bookmarks and playlists in sync",
      "name": "io.github.ni-c/audiobookshelf-mcp",
      "packages": [
        {
          "environmentVariables": [
            {
              "description": "Base URL of the Audiobookshelf instance, e.g. https://abs.example.com",
              "format": "string",
              "isRequired": true,
              "name": "AUDIOBOOKSHELF_URL"
            },
            {
              "description": "API key from Settings -> Users -> API Keys (Audiobookshelf 2.26.0 or newer)",
              "format": "string",
              "isRequired": true,
              "isSecret": true,
              "name": "AUDIOBOOKSHELF_API_KEY"
            },
            {
              "description": "Set to true to register only the 29 read tools and no write tools",
              "format": "boolean",
              "name": "AUDIOBOOKSHELF_READ_ONLY"
            },
            {
              "description": "Set to true to accept self-signed certificates for this connection only",
              "format": "boolean",
              "name": "AUDIOBOOKSHELF_INSECURE_TLS"
            },
            {
              "description": "Comma-separated tool names or list_* prefixes to register; 'essential' selects a curated preset (default: all tools)",
              "format": "string",
              "name": "AUDIOBOOKSHELF_ALLOW_TOOLS"
            },
            {
              "description": "Comma-separated tool names or list_* prefixes to remove from whatever AUDIOBOOKSHELF_ALLOW_TOOLS left",
              "format": "string",
              "name": "AUDIOBOOKSHELF_DENY_TOOLS"
            }
          ],
          "identifier": "audiobookshelf-mcp",
          "registryType": "npm",
          "transport": {
            "type": "stdio"
          },
          "version": "0.4.0"
        },
        {
          "environmentVariables": [
            {
              "description": "Base URL of the Audiobookshelf instance, e.g. https://abs.example.com",
              "format": "string",
              "isRequired": true,
              "name": "AUDIOBOOKSHELF_URL"
            },
            {
              "description": "API key from Settings -> Users -> API Keys (Audiobookshelf 2.26.0 or newer)",
              "format": "string",
              "isRequired": true,
              "isSecret": true,
              "name": "AUDIOBOOKSHELF_API_KEY"
            },
            {
              "description": "Set to true to register only the 29 read tools and no write tools",
              "format": "boolean",
              "name": "AUDIOBOOKSHELF_READ_ONLY"
            },
            {
              "description": "Set to true to accept self-signed certificates for this connection only",
              "format": "boolean",
              "name": "AUDIOBOOKSHELF_INSECURE_TLS"
            },
            {
              "description": "Comma-separated tool names or list_* prefixes to register; 'essential' selects a curated preset (default: all tools)",
              "format": "string",
              "name": "AUDIOBOOKSHELF_ALLOW_TOOLS"
            },
            {
              "description": "Comma-separated tool names or list_* prefixes to remove from whatever AUDIOBOOKSHELF_ALLOW_TOOLS left",
              "format": "string",
              "name": "AUDIOBOOKSHELF_DENY_TOOLS"
            }
          ],
          "identifier": "ghcr.io/ni-c/audiobookshelf-mcp:0.4.0",
          "registryType": "oci",
          "transport": {
            "type": "stdio"
          }
        }
      ],
      "repository": {
        "source": "github",
        "url": "https://github.com/ni-c/audiobookshelf-mcp"
      },
      "title": "Audiobookshelf",
      "version": "0.4.0",
      "websiteUrl": "https://audiobookshelf-mcp.ni-c.de"
    }
  },
  "source": "mcp_registry",
  "summary": "Browse your Audiobookshelf libraries and keep listening progress, bookmarks and playlists in sync"
}

What the leaf hashes

{"body":"301e0c8483fa6a131fbbc92b3d0d4332a4d7aaf1d94df6dd613516432bef6db1","id":44589,"kind":"listing","method":"baseline/1","observed_us":1793025404963759,"prev":null,"subject":"mcp_registry:io.github.ni-c/audiobookshelf-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. 0x908c9b3fd403d3941d3488c75808d3a27b07a65acf05c21ad12b0815c3925135
  2. 0x55b1d517991f3246b78c49ba8ca63b2930ab9be4e37778aec186e5a4ac75c16f
  3. 0xfcb7a0369e072a825c1ea2956ee105388f174bc068dcd07055b4de699ce4a512
  4. 0x04417f7d187f7949bf770dd826acfcae7fcd78dfd3931f6fd9e959cadec90d4b
  5. 0xd520d24332dcfc4b97d3c6734b408ef3dc37e99d9e1b61004c5f9e1fceddff4e
  6. 0x658b72b9addb26f946643c3e0976961b3bbf97848628493cc896acb23917fb96
  7. 0x2c11725176535399c6e0db820bdf22910f7a30ce0fb8848a368e2d84158c1bf4
  8. 0x1bbe99110459f77367223a690206bf73faf8261d1e561757ef785e6fb6430171
  9. 0x34218488b946088cefda1e91ecf658e451b5fa9de339f66946fe548fbb5cf034
  10. 0xaceb83c372739bd98e77173713a458afd2092803e86ac0b8b2afe3eb94ca90c0
  11. 0xc41c5ee73cf254bf3fe8e9a8475b0931c3223f7331f30010bc3a5e2a753329d6
  12. 0x4634efb8094d1dd2874013b832ad8653e49400f57bf98efdcc5f925ed08d0f5b
  13. 0xc0cb184c9bdf71abcf18fda97bd59289153d120dbf8fee9f517b63bf303deb95
  14. 0xf0edabbb9ba0d643e5505d19d07637eb6f6aed0a1c7356af43ae7d84ae9ef0c5
  15. 0xf0bd63870f0bb378fa300bd33563050dcb7b3e02b44eb3ee550c1c534ec4b246
  16. 0x1ac20d30773e1f4f2f811540e9a99b5cca9177c9e2e029acc0d80cf3f1d11f0f
  17. 0xd21942ae3214eff88e08ab04884fd4b11958b51af9a0741b7668e2d07a2c56c9
  18. 0x9a9024edb5069d88a324facb310a5ce8e495214bbaa968f077bede437390194f
  19. 0x9b9ce5b74b9bab5121612ef6b64920a8d453cbf311096a423eef9702747e868a
Day root
0xf43e8dcc3d451a4788b26be904c55e8c4c0fa75c9666796c51db38d37e2c0df8
Chained
0x702d5ac508f08b0d1accf36af25822d8e5660367494edd17a642fb61e158a57a
Published
On Arc Testnet, block 69251483: 0x495162f8936e19f0039918feebe6c307f327cd6bf8c37219620b1970041fa9ae

How to check it · This row as JSON