HomeFinance › Actual Budget

Actual Budget

Spending analysis and safe writes for Actual Budget: every delete previews and asks first.

TypeScript Local macOSWindowsLinux
★ 7 stars Last pushed 2026-09-24 License: MIT

Topics: Finance & Fintech

Connect

Review any command before running it. Package names and URLs come from the server's own registry entry.

Package (npm 0.9.2)

npx -y [email protected]

Or add to your MCP client config:

{
  "mcpServers": {
    "actual-budget-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "[email protected]"
      ],
      "env": {
        "ACTUAL_SERVER_URL": "<YOUR_VALUE>",
        "ACTUAL_PASSWORD": "<YOUR_VALUE>",
        "ACTUAL_SESSION_TOKEN": "<YOUR_VALUE>",
        "ACTUAL_BUDGET_ID": "<YOUR_VALUE>",
        "ACTUAL_ENCRYPTION_PASSWORD": "<YOUR_VALUE>",
        "ACTUAL_READ_ONLY": "<YOUR_VALUE>",
        "ACTUAL_DATA_DIR": "<YOUR_VALUE>"
      }
    }
  }
}
  • ACTUAL_SERVER_URL required — URL of your Actual Budget server, for example http://localhost:5006
  • ACTUAL_PASSWORD secret — Password for your Actual Budget server. Not needed if you set ACTUAL_SESSION_TOKEN
  • ACTUAL_SESSION_TOKEN secret — Session token for servers behind OIDC, which have no password. Use instead of ACTUAL_PASSWORD; if both are set, the token wins
  • ACTUAL_BUDGET_ID required — Your budget's Sync ID, found under Settings > Show advanced settings
  • ACTUAL_ENCRYPTION_PASSWORD secret — Only needed if your budget file is end-to-end encrypted
  • ACTUAL_READ_ONLY — Set to 1 to hide every write tool from the model, exposing only reads and analysis
  • ACTUAL_DATA_DIR — Directory for the local budget cache

Package (oci)

docker run -i --rm ghcr.io/henfrydls/actual-budget-mcp:0.9.2

Or add to your MCP client config:

{
  "mcpServers": {
    "actual-budget-mcp": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "ghcr.io/henfrydls/actual-budget-mcp:0.9.2"
      ],
      "env": {
        "ACTUAL_SERVER_URL": "<YOUR_VALUE>",
        "ACTUAL_PASSWORD": "<YOUR_VALUE>",
        "ACTUAL_SESSION_TOKEN": "<YOUR_VALUE>",
        "ACTUAL_BUDGET_ID": "<YOUR_VALUE>",
        "ACTUAL_READ_ONLY": "<YOUR_VALUE>"
      }
    }
  }
}
  • ACTUAL_SERVER_URL required — URL of your Actual Budget server. Inside the container localhost is the container, so use host.docker.internal
  • ACTUAL_PASSWORD secret — Password for your Actual Budget server. Not needed if you set ACTUAL_SESSION_TOKEN
  • ACTUAL_SESSION_TOKEN secret — Session token for servers behind OIDC, which have no password. Use instead of ACTUAL_PASSWORD; if both are set, the token wins
  • ACTUAL_BUDGET_ID required — Your budget's Sync ID, found under Settings > Show advanced settings
  • ACTUAL_READ_ONLY — Set to 1 to hide every write tool from the model, exposing only reads and analysis

Related servers

Listed in punkpeye/awesome-mcp-servers (MIT)

Data from the Official MCP Registry