← The evidence ledger
Evidence row 1479683
Observed , by sync.mcp_registry/1.
- Kind
- listing
- About
- source_record mcp_registry:io.github.agigante80/actual-mcp-server
- Recorded
- Previous row
- #1479059
- Body SHA-256
- 1843be98470973f454a3c3c180aba3eb356b4de64a062b317348913f1e7777c5
- Leaf
- 0x487742117b3be0399e4099c8df493216be7f9948195dd5e50210c506ecec4971
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-31T08:39:42.163804Z",
"status": "active",
"statusChangedAt": "2026-10-31T08:39:42.163804Z",
"updatedAt": "2026-10-31T08:39:42.163804Z"
}
},
"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.1"
},
{
"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.1",
"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.1",
"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":"1843be98470973f454a3c3c180aba3eb356b4de64a062b317348913f1e7777c5","id":1479683,"kind":"listing","method":"sync.mcp_registry/1","observed_us":1793438153744963,"prev":1479059,"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).
- 0x48777e142b68f8e5579d00320ad28c105e75d669521f1f7244ae2da5dbf573ed
- 0xa9cfc6d602fbc7c9615d0b4f06095ab7a9604a1b5421036a2e8c8f4ee092d03d
- 0x3bf80f2c63adeb0ebc7e3019c523d98827a386d007c1293f1eaabb0d0f0a2e1d
- 0xa5255ae1ee635970428c709a7fa5863b10255d0f239546e762c7d46167e1739e
- 0x2a48a9d4d4580473e057a81aab1d08b614f7a0f5701bc1a04c3267a6150fb788
- 0x90b9f43dcd397c0ce6ed3fe4b9ed47feb083424299294406ff4e4c97cb28b305
- 0x029b1d603b76902e4feca00d818c6415524edc36bd19f9abbeac5c616fa1f950
- 0x89501d5a543cfc4f5b50c6c22a625bf9fbd276cb705439246efd6f3d61d5ed84
- 0x8b45fa345fb4ad87af8e01fff888379af424e1e64b162607555fd951570182b0
- 0x016868a0a9780025b7c074b0f32e6355a003fcc8a97336c29db233756d22b000
- 0xcd4e02de6f1e0d5b4c356e3c4167ba8b291fb4314074985cbdb483be04a3a475
- 0x9b9bfe0f7c4b49488e779430f5fde32a8ca4b79e22388c99981f7f9857e2aff2
- 0xe9c4303dc739b3a38473373ace0be2d0380fe87c373514f87ecf64e4a134918e
- 0xc248f3640ff2a9c77f3134397896f3ef7b260859179e2912c528542dff5a29d2
- 0x37f0ccf90cd9ba8759ef0154382593820880794592760020f095a3628e43fc3f
- 0xad4540f06e3fdfe46524d8592f8d854d4849e16217bc047eaf024f0abebe34b0
- 0xa00a931d72706fa2402bfc9b441a12eb7c6a61ff42a542916106e3637177f101
- 0x59f83f7228f07febe2780660e422e171b0359b8aa031ee3be07e991118130c15
- Day root
- 0x24463725d1c0d9894bd6123691d532547aaa79f0762c0e45aa6a68acf1fd71ab
- Chained
- 0x7d4824ff313dee7252a46f9d5c37b452851deb6c9f24a40c2f74ee0e53c82980
- Published
- On Arc Testnet, block 70093156: 0xedb7b832f4ebf6781b5ecd2ed241c435b862f4d3761541fa31adc1831b8c44a0