← The evidence ledger
Evidence row 506102
Observed , by sync.mcp_registry/1.
- Kind
- listing
- About
- source_record mcp_registry:io.github.ni-c/mcp-hub
- Recorded
- Previous row
- #44599
- Body SHA-256
- 64f396dd66e8cd9fec80fafc8a07c0ecece9772cd42424642cd9ad2e352659fa
- Leaf
- 0xedb75050e77d02156ea2b29d3e5af13f67f486a29db00e66f1119a7f008abaf4
What was observed
{
"endpoints": [
[
"web",
"https://mcp-hub.ni-c.de/"
]
],
"name": "mcp-hub",
"owner_address": null,
"raw": {
"_meta": {
"io.modelcontextprotocol.registry/official": {
"isLatest": true,
"publishedAt": "2026-10-27T14:41:29.187346Z",
"status": "active",
"statusChangedAt": "2026-10-27T14:41:29.187346Z",
"updatedAt": "2026-10-27T14:41:29.187346Z"
}
},
"server": {
"$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
"description": "Many stdio MCP servers from one container, published over HTTPS with OAuth 2.1 for any MCP client",
"name": "io.github.ni-c/mcp-hub",
"packages": [
{
"environmentVariables": [
{
"description": "Path to the mcp.json listing the servers to expose, in Claude Code's mcpServers format (default mcp.json in the working directory)",
"format": "string",
"name": "CONFIG_PATH"
},
{
"default": "60",
"description": "Minutes of inactivity before a server is put to sleep; 0 starts every server at launch and keeps it running (default 60)",
"format": "number",
"name": "IDLE_TIMEOUT_MINUTES"
},
{
"description": "Tool snapshots of sleeping servers (default .mcp-hub/tool-cache.json beside the config)",
"format": "string",
"name": "TOOL_CACHE_PATH"
},
{
"description": "Mirror the hub's log lines into this file; stdout carries the protocol, so logging goes to stderr otherwise",
"format": "string",
"name": "LOG_FILE"
}
],
"identifier": "@ni-c/mcp-hub",
"packageArguments": [
{
"type": "positional",
"value": "--stdio"
}
],
"registryType": "npm",
"runtimeHint": "npx",
"transport": {
"type": "stdio"
},
"version": "0.11.7"
},
{
"environmentVariables": [
{
"description": "Public base URL exactly as clients see it, e.g. https://mcp.example.net (no path)",
"format": "string",
"isRequired": true,
"name": "EXTERNAL_URL"
},
{
"description": "bcrypt hash of the OAuth login password (htpasswd -bnBC 10 \"\" 'pw' | tr -d ':\\n')",
"format": "string",
"isRequired": true,
"isSecret": true,
"name": "PASSWORD_HASH"
},
{
"description": "Comma-separated IPs/CIDRs of the reverse proxy allowed to set X-Forwarded-* headers",
"format": "string",
"name": "TRUSTED_PROXIES"
},
{
"default": "cimd,dcr",
"description": "Which mechanisms a client may use to obtain a client_id: cimd (Client ID Metadata Documents), dcr (RFC 7591 dynamic registration), or both",
"format": "string",
"name": "CLIENT_REGISTRATION"
},
{
"description": "Comma-separated https origins whose client ID metadata documents are accepted, e.g. https://chatgpt.com; unset admits every https origin",
"format": "string",
"name": "CIMD_ALLOWED_ORIGINS"
},
{
"default": "80",
"description": "Listen port inside the container",
"format": "number",
"name": "PORT"
}
],
"identifier": "ghcr.io/ni-c/mcp-hub:0.11.7",
"registryType": "oci",
"transport": {
"type": "streamable-http",
"url": "http://localhost:{PORT}/hub"
}
}
],
"repository": {
"source": "github",
"url": "https://github.com/ni-c/mcp-hub"
},
"title": "mcp-hub",
"version": "0.11.7",
"websiteUrl": "https://mcp-hub.ni-c.de"
}
},
"source": "mcp_registry",
"summary": "Many stdio MCP servers from one container, published over HTTPS with OAuth 2.1 for any MCP client"
}What the leaf hashes
{"body":"64f396dd66e8cd9fec80fafc8a07c0ecece9772cd42424642cd9ad2e352659fa","id":506102,"kind":"listing","method":"sync.mcp_registry/1","observed_us":1793114943078019,"prev":44599,"subject":"mcp_registry:io.github.ni-c/mcp-hub","subject_kind":"source_record"}Proof
Fold these into the leaf in order, hashing each sorted pair with keccak256, to reach the root of (273461 rows).
- 0xedb7a1a3b394353edceaa1623aa82e2d11ae14a754a6c8946306c3a6ded59c50
- 0x368b5ff2e728b5c9bbbeaa89f39cdb66039b5e1161cba22cd4ceb8585a8c5b15
- 0x4bbb9b4b348cd6f04142a8cd42f5b71eb4f10816015d736fb142dd360aa70841
- 0x65ce702a5bde64606e9b3ffa8eb628c0dc144a4ec61b2f849c3d18035f17d5c3
- 0xbb322d961e55eb2f16957fdc5b7c6d0d36d6819d44b437d3ad4420b493397ec0
- 0x3dd2c331ff957c1d0036b461c70647411b48b84117edf7cbf31fc48e0c8a65d1
- 0x117cc090a2608ed7062c21ce2deb68e8c23df3aaff331689df44905218b1638d
- 0xb2806466c2cdd8ff74a7dd37a005c1b46b9c5ff64f09b03a22b70260a942086f
- 0x1c48ca2471d4ec703f060a3c587a5b2bc794239b13c4c1f0a5befaa36d599344
- 0xaa641459302adde22dc32481fb241cabfec0126d1840e00062addb5172888cb4
- 0x0a78a08a4d8ea932d1929a4db7274efa66e37530ebf9892f88bad1aa94953b78
- 0x1bd815b8c338cfc2bcf769f9c67988a5890577c27b5e900948b5339a99e158a8
- 0x89602081fbcc80aef8908f5df765767a1a41cc8b089111259ea78e6583a8bc4b
- 0x41f9f462759cb539183e979fb3eb967d94755cf039c44a64a9a3c4ad97523cfd
- 0x56f7109d4cde42492651beb1237c13cdcbf95e6fee2b2482391a2388e04c4629
- 0x8745bd887f5ce9f7a49558fd2b04cdcd97a05ea9f8a23f62d0e80cb13d328b0f
- 0xdf1105afdc109de3c09a98fc8a3864159ad964e6f49b635c105a27a1e1f14310
- 0x2bf8151e5f157dd183b9de6fa00469551932a7a6e3f33a694895000ac9061197
- 0x9fc354c0ea3efc3f1b6548bb77ea902a50f2c9647647ea61592efce2bd795699
- Day root
- 0xdd77e5e99da32c3f154180d63e3c3e6fe11e896a2c6896412ef6b5c4bcf7e795
- Chained
- 0x23bb4dfd09f55c15ac3962f53578e02c6114d5bfd9bb451cf8794fb6e2817ef4
- Published
- On Arc Testnet, block 69414147: 0xb2ebd83aafeb765a0ce66e76aefb133ed06606c98038fd56191e2bcd1dcb77b4