addrbookFor publishers
← The evidence ledger

Evidence row 1479059

Observed , by sync.mcp_registry/1.

Kind
listing
About
source_record mcp_registry:io.github.agigante80/actual-mcp-server
Recorded
Previous row
None: the first of its kind about this subject
Body SHA-256
6ef2c80b963d0f9b0b8e3f0985b64b7a1a392362cb44dba8d4504ba9c308bd88
Leaf
0xea787ffbd61699686843622c9fd4aaae5ab01a5955a2b1b13b50e86814cc1c24

What was observed

{
  "endpoints": [
    [
      "web",
      "https://github.com/agigante80/actual-mcp-server"
    ]
  ],
  "name": "Actual Budget MCP Server",
  "owner_address": null,
  "raw": {
    "_meta": {
      "io.modelcontextprotocol.registry/official": {
        "isLatest": true,
        "publishedAt": "2026-10-31T06:16:48.147781Z",
        "status": "active",
        "statusChangedAt": "2026-10-31T06:16:48.147781Z",
        "updatedAt": "2026-10-31T06:16:48.147781Z"
      }
    },
    "server": {
      "$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
      "description": "Manage Actual Budget accounts, transactions, budgets, rules and reports from an AI assistant.",
      "name": "io.github.agigante80/actual-mcp-server",
      "packages": [
        {
          "environmentVariables": [
            {
              "description": "URL of the Actual Budget server, for example https://actual.example.com",
              "isRequired": true,
              "name": "ACTUAL_SERVER_URL"
            },
            {
              "description": "Actual Budget server login password",
              "isRequired": true,
              "isSecret": true,
              "name": "ACTUAL_PASSWORD"
            },
            {
              "description": "Sync ID of the budget (Actual: Settings, Advanced settings)",
              "isRequired": true,
              "name": "ACTUAL_BUDGET_SYNC_ID"
            },
            {
              "description": "End-to-end encryption password, for an encrypted budget only. Requires an https:// ACTUAL_SERVER_URL",
              "isSecret": true,
              "name": "ACTUAL_BUDGET_PASSWORD"
            },
            {
              "description": "Absolute path of a user-private directory for the local budget cache",
              "name": "MCP_BRIDGE_DATA_DIR"
            }
          ],
          "identifier": "actual-mcp-server",
          "packageArguments": [
            {
              "type": "positional",
              "value": "--stdio"
            }
          ],
          "registryBaseUrl": "https://registry.npmjs.org",
          "registryType": "npm",
          "runtimeHint": "npx",
          "transport": {
            "type": "stdio"
          },
          "version": "0.25.0"
        },
        {
          "environmentVariables": [
            {
              "description": "URL of the Actual Budget server; must be reachable from inside the container",
              "isRequired": true,
              "name": "ACTUAL_SERVER_URL"
            },
            {
              "description": "Actual Budget server login password",
              "isRequired": true,
              "isSecret": true,
              "name": "ACTUAL_PASSWORD"
            },
            {
              "description": "Sync ID of the budget (Actual: Settings, Advanced settings)",
              "isRequired": true,
              "name": "ACTUAL_BUDGET_SYNC_ID"
            },
            {
              "description": "End-to-end encryption password, for an encrypted budget only. Requires an https:// ACTUAL_SERVER_URL",
              "isSecret": true,
              "name": "ACTUAL_BUDGET_PASSWORD"
            },
            {
              "description": "Bearer token clients must send: raw token, no Bearer prefix; generate with openssl rand -hex 32",
              "isRequired": true,
              "isSecret": true,
              "name": "MCP_SSE_AUTHORIZATION"
            }
          ],
          "identifier": "docker.io/agigante80/actual-mcp-server:0.25.0",
          "registryType": "oci",
          "runtimeArguments": [
            {
              "name": "-p",
              "type": "named",
              "value": "127.0.0.1:3600:3600"
            }
          ],
          "transport": {
            "headers": [
              {
                "description": "The same raw value as MCP_SSE_AUTHORIZATION",
                "isRequired": true,
                "isSecret": true,
                "name": "Authorization",
                "value": "Bearer {token}",
                "variables": {
                  "token": {
                    "description": "The same raw value as MCP_SSE_AUTHORIZATION: raw token, no Bearer prefix",
                    "isRequired": true,
                    "isSecret": true
                  }
                }
              }
            ],
            "type": "streamable-http",
            "url": "http://localhost:3600/http"
          }
        }
      ],
      "repository": {
        "source": "github",
        "url": "https://github.com/agigante80/actual-mcp-server"
      },
      "title": "Actual Budget MCP Server",
      "version": "0.25.0",
      "websiteUrl": "https://github.com/agigante80/actual-mcp-server"
    }
  },
  "source": "mcp_registry",
  "summary": "Manage Actual Budget accounts, transactions, budgets, rules and reports from an AI assistant."
}

What the leaf hashes

{"body":"6ef2c80b963d0f9b0b8e3f0985b64b7a1a392362cb44dba8d4504ba9c308bd88","id":1479059,"kind":"listing","method":"sync.mcp_registry/1","observed_us":1793430951599539,"prev":null,"subject":"mcp_registry:io.github.agigante80/actual-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 (246033 rows).

  1. 0xea785b714dd57e3f22be6ee9d75b8bbebfe4e12e736185bfedb89d07add0fd2f
  2. 0xb7ac1a526cd9efc9434e7f5e3d661b2e6be55fc0329166bd49700b0e3ae40154
  3. 0x0263ea63f1ab4bc7d1306fceeda6450e3ee84d13e6d4f1a946ed476d7edfb7d0
  4. 0x2b7450d8e2c3ff07acefbeab7d52e9f9e3681098189df3931c975e76759badbf
  5. 0xb64d5388defe6c2c51a572ce588f31812e7f01a4b30b943ac829cd8132cc71bb
  6. 0x87306baed3c02de8a1e2f0c4fb3471ecc228a1a98d7424235c5a4425e5ce0f51
  7. 0x1d8fe09512481177a638589591bad581657ea55b3786dcaf29c180d5d3c2f492
  8. 0x6884e1cdfe21faf7cb8d60cd3c17f5e6cd38e0e6e0a204ecfc18b900a4de4090
  9. 0x31e2102988002f6ac990feeefb2772a2482f1f1075a0672ebdc4c9aaea7c1a12
  10. 0xce15d928505af1042e9738817ec75a7c71fa61a6dda4805375077cf3e7c157f2
  11. 0x8a16c5606fb0e7ef5a7841ef4a2a03ad32e635f2a274af8101c72cf45c266ee3
  12. 0x3e73e96b314fd2ab72ea796fe7e2e8d5e6d2a2451f4ddd641931054cfc8185f1
  13. 0xe4b595c0d9bbc260ce4a8da13adba5618dc89c4850f2c9110974082bb036402f
  14. 0xf22f9ef9bb9f7d07453a2e725850d2411b7d239162a33e78cd51370ffc94d2a1
  15. 0x84bdb388a471b951dc5c0f9fd09df3197b8152707ec67daa668ab47102c8efc1
  16. 0x24f03354dcb3a621317889ed99048bdf74b380516ca991bfb585c751d5cc7dfd
  17. 0xa1146af524f673843507e7427a575964580eef01bc0e0eae466a7920df017ab2
  18. 0x0504a25438f3c7932125463198ca74c5064f23f71a5c92763b3fc96a98cc8b57
Day root
0x24463725d1c0d9894bd6123691d532547aaa79f0762c0e45aa6a68acf1fd71ab
Chained
0x7d4824ff313dee7252a46f9d5c37b452851deb6c9f24a40c2f74ee0e53c82980
Published
On Arc Testnet, block 70093156: 0xedb7b832f4ebf6781b5ecd2ed241c435b862f4d3761541fa31adc1831b8c44a0

How to check it · This row as JSON