addrbookFor publishers
← The evidence ledger

Evidence row 35552

Observed , by baseline/1.

Kind
listing
About
source_record mcp_registry:io.github.cyanheads/openstates-mcp-server
Recorded
Previous row
None: the first of its kind about this subject
Body SHA-256
a601eac9917ea3fc650ef9cf0dd0f23e3708ce1a72a11db8c9bd939e21622b8a
Leaf
0x72ba747280fe5723a3f8925fb96de94abc31066b80ed174df75e23ecab86afd1

What was observed

{
  "endpoints": [
    [
      "mcp",
      "https://openstates.caseyjhand.com/mcp"
    ]
  ],
  "name": "io.github.cyanheads/openstates-mcp-server",
  "owner_address": null,
  "raw": {
    "_meta": {
      "io.modelcontextprotocol.registry/official": {
        "isLatest": true,
        "publishedAt": "2026-10-25T09:53:49.270966Z",
        "status": "active",
        "statusChangedAt": "2026-10-25T09:53:49.270966Z",
        "updatedAt": "2026-10-25T09:53:49.270966Z"
      }
    },
    "server": {
      "$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
      "description": "Search bills, legislators, committees, and events across all 50 US states, DC, and 5 US territories.",
      "name": "io.github.cyanheads/openstates-mcp-server",
      "packages": [
        {
          "environmentVariables": [
            {
              "description": "Open States API key from open.pluralpolicy.com. Required to make any API requests.",
              "format": "string",
              "isRequired": true,
              "name": "OPENSTATES_API_KEY"
            },
            {
              "default": "250",
              "description": "Maximum upstream Open States requests per rolling 24 hours. Rejects before the request is issued once spent. Defaults to the v3 free-tier daily cap.",
              "format": "number",
              "name": "OPENSTATES_DAILY_REQUEST_BUDGET"
            },
            {
              "default": "45000",
              "description": "Per-attempt upstream request deadline in milliseconds (minimum 1000). Expiry is non-retryable. Open States answers a scoped query in under a second to ~57s and its gateway gives up near 60s.",
              "format": "number",
              "name": "OPENSTATES_REQUEST_TIMEOUT_MS"
            },
            {
              "default": "90000",
              "description": "Wall-clock ceiling in milliseconds for one call across every retry attempt and the backoff between them. Bounds a slow upstream that keeps failing retryably. Must be at least OPENSTATES_REQUEST_TIMEOUT_MS; startup rejects a lower value.",
              "format": "number",
              "name": "OPENSTATES_TOTAL_REQUEST_BUDGET_MS"
            },
            {
              "default": "info",
              "description": "Sets the minimum log level for output (e.g., 'debug', 'info', 'warn').",
              "format": "string",
              "name": "MCP_LOG_LEVEL"
            }
          ],
          "identifier": "@cyanheads/openstates-mcp-server",
          "registryBaseUrl": "https://registry.npmjs.org",
          "registryType": "npm",
          "runtimeHint": "npx",
          "transport": {
            "type": "stdio"
          },
          "version": "0.3.4"
        },
        {
          "environmentVariables": [
            {
              "description": "Selects the HTTP transport.",
              "format": "string",
              "name": "MCP_TRANSPORT_TYPE",
              "value": "http"
            },
            {
              "description": "Open States API key from open.pluralpolicy.com. Required to make any API requests.",
              "format": "string",
              "isRequired": true,
              "name": "OPENSTATES_API_KEY"
            },
            {
              "default": "250",
              "description": "Maximum upstream Open States requests per rolling 24 hours. Rejects before the request is issued once spent. Defaults to the v3 free-tier daily cap.",
              "format": "number",
              "name": "OPENSTATES_DAILY_REQUEST_BUDGET"
            },
            {
              "default": "45000",
              "description": "Per-attempt upstream request deadline in milliseconds (minimum 1000). Expiry is non-retryable. Open States answers a scoped query in under a second to ~57s and its gateway gives up near 60s.",
              "format": "number",
              "name": "OPENSTATES_REQUEST_TIMEOUT_MS"
            },
            {
              "default": "90000",
              "description": "Wall-clock ceiling in milliseconds for one call across every retry attempt and the backoff between them. Bounds a slow upstream that keeps failing retryably. Must be at least OPENSTATES_REQUEST_TIMEOUT_MS; startup rejects a lower value.",
              "format": "number",
              "name": "OPENSTATES_TOTAL_REQUEST_BUDGET_MS"
            },
            {
              "default": "127.0.0.1",
              "description": "The hostname for the HTTP server.",
              "format": "string",
              "name": "MCP_HTTP_HOST"
            },
            {
              "default": "3010",
              "description": "The port to run the HTTP server on.",
              "format": "string",
              "name": "MCP_HTTP_PORT"
            },
            {
              "default": "/mcp",
              "description": "The endpoint path for the MCP server.",
              "format": "string",
              "name": "MCP_HTTP_ENDPOINT_PATH"
            },
            {
              "default": "none",
              "description": "Authentication mode to use: 'none', 'jwt', or 'oauth'.",
              "format": "string",
              "name": "MCP_AUTH_MODE"
            },
            {
              "default": "info",
              "description": "Sets the minimum log level for output (e.g., 'debug', 'info', 'warn').",
              "format": "string",
              "name": "MCP_LOG_LEVEL"
            }
          ],
          "identifier": "@cyanheads/openstates-mcp-server",
          "registryBaseUrl": "https://registry.npmjs.org",
          "registryType": "npm",
          "runtimeHint": "npx",
          "transport": {
            "type": "streamable-http",
            "url": "http://localhost:3010/mcp"
          },
          "version": "0.3.4"
        }
      ],
      "remotes": [
        {
          "type": "streamable-http",
          "url": "https://openstates.caseyjhand.com/mcp"
        }
      ],
      "repository": {
        "source": "github",
        "url": "https://github.com/cyanheads/openstates-mcp-server"
      },
      "version": "0.3.4"
    }
  },
  "source": "mcp_registry",
  "summary": "Search bills, legislators, committees, and events across all 50 US states, DC, and 5 US territories."
}

What the leaf hashes

{"body":"a601eac9917ea3fc650ef9cf0dd0f23e3708ce1a72a11db8c9bd939e21622b8a","id":35552,"kind":"listing","method":"baseline/1","observed_us":1793025373272384,"prev":null,"subject":"mcp_registry:io.github.cyanheads/openstates-mcp-server","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. 0x72ba50e23070635251fa0626653ab1b7bfd0174292aa40257f7b4b46d2137827
  2. 0x9d2af76a3d04feda7fd9506c2e480c4288d0a960731ea3911e6352a9ada3b930
  3. 0xf431dca1fefade8def37ca9eba0f996f263a1e7c845dcb169bbbe9087f2d6682
  4. 0x183ba6dc271637cee0fb0d84024d049bfb2fcf9b4b535aea8cf78e5a41032bfd
  5. 0x3fbdbb37e06941a98698c41467f69521f1c50be3de0511beebe983880ca96739
  6. 0x7ec973480f48d367d0d4a54c388728dd0e2f4ab7ce0e82944d23b96e5b403153
  7. 0x489931efb90bb1bf9fe3987be1b204f999427e124cb0a274ba3344ab07cc4f55
  8. 0x728fb731285450d07b708a12e0ce392485b98396e97d4d641f48a011783476cd
  9. 0x7459f654e3deb4daa7554739b67f789eb49794526fe128ad87d04e63bc2da617
  10. 0xfec618220a4577d4063b5b2d1736f3db0d758d4b39800128bc55fe3318ff8373
  11. 0x9763a000e2506d3e18d36911968fe32044769ec0822949b880df4736389d3536
  12. 0xef1802ec08c5a2efaca6aadccc58edcebeb620a019383dc0785f198c677a9427
  13. 0x06064dc1eb2363bec8c2a752e0a28aafc4bf0cb21d1b1b755821c1575bb77a96
  14. 0xc4fe2177880ea1b0e82b6fe4c270090fd0fbe5af3a42a8cbf6a6ba2fa35625f6
  15. 0x15039087bf60ae9b06b756ec3cbc299760e59923a438bbd91e34d105186db0ed
  16. 0x2b6e23e3624a1b66e1d2298cfbce99a93ce6b13d24a58112a71802d79c5f7a76
  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