Prototyp · Vorschau: alle Server aus der offiziellen Registry, alle 30 Minuten synchronisiert. Bewertungen und Benutzerkonten folgen in einem späteren Schritt.
PopNx MCPMCP-Server für alle, die KI nutzen · in einfachen Worten erklärt

Actual Budget MCP Server

von s-stefanovVersion 1.15.1i★ 284iLäuft auf deinem Computer
Name in der Registryio.github.s-stefanov/actual-mcp

Installieren

Überblick

Beschreibung vom Entwickler (englisches Original)

MCP server exposing Actual Budget accounts, transactions, budgets and reporting to LLM assistants.

Die drei Säulen von PopNx MCP

Diese drei werden nie zu einer Punktzahl zusammengefasst: Meinungen, Messungen und Beliebtheit sind verschiedene Dinge.

Was du damit machen kannst

Für diesen Server haben wir noch keine Zusammenfassung in einfacher Sprache geschrieben. Unten stehen die Fakten, die wir aus der Registry gelesen haben.

  • Verbindung: Läuft auf deinem Computer
  • Transport: stdio, Streamable HTTP
  • Kategorie: Buchhaltung, Finanzen & Steuern
  • Das musst du eintragen: ACTUAL_SERVER_URL, ACTUAL_PASSWORD, ACTUAL_BUDGET_SYNC_ID, ACTUAL_BUDGET_ENCRYPTION_PASSWORD

Installation

Wähle die KI-App, die du nutzt, und kopiere die Einstellungen.

Bevor du installierst

  • Basischecks: 2 von 2 bestanden
  • Läuft auf deinem Computer mit den Rechten deines Benutzerkontos (Dateien, Netzwerk, Apps).
  • Das trägst du selbst ein: ACTUAL_SERVER_URL, ACTUAL_PASSWORD, ACTUAL_BUDGET_SYNC_ID, ACTUAL_DATA_DIR, ACTUAL_BUDGET_ENCRYPTION_PASSWORD, ACTUAL_SYNC_TTL_MS

Als geheim markierte Werte sind Schlüssel zu deinem Konto. Gib sie nie weiter und füge sie nie in einen Chat ein.

Du brauchst

Welche App nutzt du?

Wähle oben deine App. Wir merken sie uns, damit der Button beim nächsten Mal „In … installieren“ anzeigt.

Öffne Claude Desktop → Settings → Developer → Edit Config und füge dies in claude_desktop_config.json ein

{
  "mcpServers": {
    "actual": {
      "command": "npx",
      "args": [
        "-y",
        "actual-mcp"
      ],
      "env": {
        "ACTUAL_SERVER_URL": "your-value",
        "ACTUAL_PASSWORD": "your-value",
        "ACTUAL_BUDGET_SYNC_ID": "your-value",
        "ACTUAL_DATA_DIR": "your-value",
        "ACTUAL_BUDGET_ENCRYPTION_PASSWORD": "your-value",
        "ACTUAL_SYNC_TTL_MS": "your-value"
      }
    }
  }
}

Führe das in deinem Terminal aus

claude mcp add actual --env ACTUAL_SERVER_URL=your-value --env ACTUAL_PASSWORD=your-value --env ACTUAL_BUDGET_SYNC_ID=your-value --env ACTUAL_DATA_DIR=your-value --env ACTUAL_BUDGET_ENCRYPTION_PASSWORD=your-value --env ACTUAL_SYNC_TTL_MS=your-value -- npx -y actual-mcp

Trag die leeren Werte ein, bevor du ihn startest.

In Cursor öffnen

Oder kopier die Einstellungen selbst

In .cursor/mcp.json in deinem Projekt oder in ~/.cursor/mcp.json einfügen

{
  "mcpServers": {
    "actual": {
      "command": "npx",
      "args": [
        "-y",
        "actual-mcp"
      ],
      "env": {
        "ACTUAL_SERVER_URL": "your-value",
        "ACTUAL_PASSWORD": "your-value",
        "ACTUAL_BUDGET_SYNC_ID": "your-value",
        "ACTUAL_DATA_DIR": "your-value",
        "ACTUAL_BUDGET_ENCRYPTION_PASSWORD": "your-value",
        "ACTUAL_SYNC_TTL_MS": "your-value"
      }
    }
  }
}

Dein Browser fragt, ob er die App öffnen darf, dann zeigt die App die Einstellungen und bittet dich um Bestätigung. Schlüsselwerte bleiben leer, damit du sie selbst einträgst.

In VS Code öffnen

Oder kopier die Einstellungen selbst

In .vscode/mcp.json in deinem Projekt einfügen

{
  "servers": {
    "actual": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "actual-mcp"
      ],
      "env": {
        "ACTUAL_SERVER_URL": "your-value",
        "ACTUAL_PASSWORD": "your-value",
        "ACTUAL_BUDGET_SYNC_ID": "your-value",
        "ACTUAL_DATA_DIR": "your-value",
        "ACTUAL_BUDGET_ENCRYPTION_PASSWORD": "your-value",
        "ACTUAL_SYNC_TTL_MS": "your-value"
      }
    }
  }
}

Dein Browser fragt, ob er die App öffnen darf, dann zeigt die App die Einstellungen und bittet dich um Bestätigung. Schlüsselwerte bleiben leer, damit du sie selbst einträgst.

Dieser Server läuft auf deinem Computer, und ChatGPT kann sich nur mit Servern im Internet verbinden. Wähle eine andere App.

Deine Auswahl bleibt in einem Cookie auf diesem Gerät; kein Konto nötig.

Werte, die du selbst einträgst

  • ACTUAL_SERVER_URL erforderlich env
    URL of your Actual Budget server
  • ACTUAL_PASSWORD geheim erforderlich env
    Actual Budget server password
  • ACTUAL_BUDGET_SYNC_ID erforderlich env
    Budget sync ID
  • ACTUAL_DATA_DIR env
    Local dir for cached budget data
  • ACTUAL_BUDGET_ENCRYPTION_PASSWORD geheim env
    E2E encryption password, if enabled
  • ACTUAL_SYNC_TTL_MS env
    Sync cache TTL in ms

Diese Einstellungen werden aus dem Registry-Eintrag des Entwicklers erzeugt. Wenn in der README etwas anderes steht, folge der README.

Welche Apps ihn nutzen können

Basierend darauf, wie sich dieser Server verbindet, und auf der eigenen Doku jeder App, geprüft am 10. Nov. 2026.

Laufen auf deinem Computer in

ClaudeGooseLM StudioMsty StudioCherry StudioCursorVS Code + GitHub CopilotVisual StudioWindsurf (Devin Desktop)ZedKiroClineContinueJetBrains AI AssistantClaude CodeCodex CLIGemini CLIOpenCodenodecodeWarpLibreChatRaycast

Alle Apps, mit Vor- und Nachteilen →

Was er kann

Läuft auf deinem Computer; die Tool-Liste erscheint nach der Installation in deiner KI-App.

Basischecksi

Wir prüfen Informationen, die jeder sehen kann; den Code haben wir nicht gelesen. Checks, die nicht zutreffen, werden nicht mitgezählt. · Geprüft am 11. Nov. 2026

  • ✓ Bestanden

    Entwickler passt zum Repo

    Der Registry-Name wurde mit dem GitHub-Konto s-stefanov bestätigt, dem das Repo gehört

  • ✓ Bestanden

    Wird noch gepflegt

    Code zuletzt geändert: gestern

  • … Noch nicht geprüft

    Hat eine Lizenz

    Dieses Repo haben wir noch nicht von GitHub gelesen

  • – Nicht zutreffend

    Endpunkt antwortet

    Dieser Server läuft auf deinem Computer; es gibt keinen Endpunkt im Internet

  • – Nicht zutreffend

    Anmeldung mit OAuth

    Läuft auf deinem Computer und nutzt stattdessen lokale Einstellungen

  • … Noch nicht geprüft

    Keine versteckten Anweisungen in Tool-Beschreibungen

    Läuft auf deinem Computer; Tool-Listen können wir nur von Endpunkten im Internet lesen

Im Vergleich mit anderen in Buchhaltung, Finanzen & Steuerni

  • Mehr Sterne als 100 % der anderen 3104 Server in dieser Kategorie
  • Neuer in der Registry veröffentlicht als 59 % der anderen 3104 Server in dieser Kategorie
  • Basischecks gleich gut wie oder besser als bei 100 % der anderen 3104 Server in dieser Kategorie

Verglichen mit allen aktiven Servern dieser Kategorie in der Registry. Sterne zählen nur, wenn dem Herausgeber das Repo gehört.

Häufige Fragen

Ist Actual Budget MCP Server sicher?

Er hat 2 von 2 zutreffenden Basischecks bestanden. Den Code haben wir nicht gelesen. Bevor du einen Schlüssel oder Token hinzufügst, sieh nach, welche Zugriffe der Server verlangt, und nutze einen Schlüssel, der nur die Berechtigungen hat, die du brauchst.

Welche Schlüssel oder Codes braucht er?

Das musst du eintragen: ACTUAL_SERVER_URL, ACTUAL_PASSWORD, ACTUAL_BUDGET_SYNC_ID, ACTUAL_BUDGET_ENCRYPTION_PASSWORD

Läuft er auf meinem Computer oder in der Cloud?

Er läuft auf deinem Computer. Deine KI-App startet ihn bei Bedarf, und die Daten laufen nicht über die Server des Entwicklers (außer der Server ruft selbst einen Onlinedienst auf).

Wird er noch gepflegt?

Das GitHub-Repo wurde zuletzt gestern geändert, und die neueste Version (1.15.1) kam vor 22 Tagen in die Registry.

Welche Apps können ihn nutzen?

Apps, die MCP unterstützen, etwa Claude Desktop, Claude Code, Cursor und VS Code. Außerdem brauchst du Node.js auf deinem Computer.

Was kann ich stattdessen nutzen?

In derselben Kategorie: CCXT, Finance Toolkit, AKQuant

Alternativen

Server derselben Kategorie von anderen Entwicklern, sortiert nach Sternen.

So liest du eine Karte:↓ Downloads pro Wochei★ GitHub-SterneiDrei Säulen: Bewertungen · Checks · NutzungiAktualisiert = neueste Version in der Registry veröffentlichti

CCXT

Official CCXT MCP server - Market data and trading across 100+ exchanges and prediction markets

von ccxtWeit verbreitet↓ 667/Wo.★ 44.845Aktualisiert vor 2 Monaten

Läuft auf deinem Computer

Finance Toolkit

500+ transparent financial methods calculated from raw statements, not third-party endpoints.

von JerBoumaWeit verbreitet↓ 15.624/Wo.★ 5514Aktualisiert gestern

Computer oder Cloud

AKQuant

Write and backtest trading strategies with AKQuant: API lookup, strategy checks, backtest runs

von akfamilyWeit verbreitet↓ 3280/Wo.★ 2582Aktualisiert gestern

Läuft auf deinem Computer

README vom Entwickler

README öffnen

Unverändert aus dem Repo des Entwicklers übernommen. PopNx MCP hat den Inhalt weder geprüft noch empfiehlt es ihn. HTML, Bilder und Skripte wurden entfernt. Links führen von dieser Website weg.

Actual Budget MCP Server

MCP server for integrating Actual Budget with Claude and other LLM assistants.

Overview

The Actual Budget MCP Server allows you to interact with your personal financial data from Actual Budget using natural language through LLMs. It exposes your accounts, transactions, and financial metrics through the Model Context Protocol (MCP).

Features

Resources
  • Account Listings - Browse all your accounts with their balances
  • Account Details - View detailed information about specific accounts
  • Transaction History - Access transaction data with complete details
Tools
Transaction & Account Management
  • `get-transactions` - Retrieve and filter transactions by account, date, amount, category, or payee
  • `create-transaction` - Create a new transaction in an account with optional category, payee, and notes
  • `update-transaction` - Update an existing transaction with new category, payee, notes, or amount
  • `get-accounts` - Retrieve a list of all accounts with their current balance and ID
  • `balance-history` - View account balance changes over time
Reporting & Analytics
  • `spending-by-category` - Generate spending breakdowns categorized by type
  • `monthly-summary` - Get monthly income, expenses, and savings metrics
  • `budget-vs-actual` - Compare budgeted amounts against actual spending per category
  • `net-worth` - Track assets, liabilities, and net worth across all accounts over time
  • `category-trends` - See how spending in each category moves month over month, with trend direction
  • `spending-by-payee` - Rank payees by how much was spent with (or received from) each one
  • `cash-flow` - Report income, expenses, and net cash flow per month or week

The five tools above return JSON rather than markdown, so amounts stay machine-readable. Every amount is an integer number of cents, and each response carries an amountsIn field describing the sign conventions it uses.

Custom Reports & Dashboards
  • `get-custom-reports` - Retrieve every saved custom report from the Reports section
  • `create-custom-report` - Create a saved custom report
  • `update-custom-report` - Update fields on a saved custom report, leaving the rest unchanged
  • `delete-custom-report` - Delete a saved custom report
  • `get-dashboards` - Retrieve every dashboard page and the widgets laid out on it
  • `add-dashboard-widget` - Add a widget to a dashboard page
  • `update-dashboard-widget` - Update a widget's configuration, position, or size
  • `remove-dashboard-widget` - Remove a widget from its page
  • `organize-dashboard` - Reposition and resize several widgets at once
  • `create-dashboard-page` / `rename-dashboard-page` / `delete-dashboard-page` - Manage dashboard pages
Categories
  • `get-grouped-categories` - Retrieve a list of all category groups with their categories
  • `create-category` - Create a new category within a category group
  • `update-category` - Update an existing category's name or group
  • `delete-category` - Delete a category
  • `create-category-group` - Create a new category group
  • `update-category-group` - Update a category group's name
  • `delete-category-group` - Delete a category group
Payees
  • `get-payees` - Retrieve a list of all payees with their details
  • `create-payee` - Create a new payee
  • `update-payee` - Update an existing payee's details
  • `delete-payee` - Delete a payee
  • `merge-payees` - Merge duplicate payees into a single target payee
Rules
  • `get-rules` - Retrieve a list of all transaction rules
  • `create-rule` - Create a new transaction rule with conditions and actions
  • `update-rule` - Update an existing transaction rule
  • `delete-rule` - Delete a transaction rule
Prompts
  • `financial-insights` - Generate insights and recommendations based on your financial data
  • `budget-review` - Analyze your budget compliance and suggest adjustments

Installation

Prerequisites
Remote access

Pull the latest docker image:

docker pull sstefanov/actual-mcp:latest
Local setup
  1. Clone the repository:
git clone https://github.com/s-stefanov/actual-mcp.git

cd actual-mcp

  1. Install dependencies:
npm install
  1. Build the server:
npm run build
  1. Build the local docker image (optional):
docker build -t <local-image-name> .
  1. Configure environment variables (optional):
# Path to your Actual Budget data directory (default: ~/.actual)

export ACTUAL_DATA_DIR="/path/to/your/actual/data"

If using a remote Actual server

export ACTUAL_SERVER_URL="https://your-actual-server.com" export ACTUAL_PASSWORD="your-password"

Specific budget to use (optional)

export ACTUAL_BUDGET_SYNC_ID="your-budget-id"

How long downloaded data stays fresh before the server re-syncs, in ms

(default: 60000). Use 0 to sync before every call, or -1 to never sync.

export ACTUAL_SYNC_TTL_MS="60000"

Optional: separate encryption budget password

If your Actual setup requires a different password to unlock the local/encrypted budget data than the server authentication password, you can set ACTUAL_BUDGET_ENCRYPTION_PASSWORD in addition to ACTUAL_PASSWORD.

# If server auth and encryption/unlock use different passwords

export ACTUAL_BUDGET_ENCRYPTION_PASSWORD="your-encryption-password"

Optional: OpenID servers (session token auth)

If your Actual server uses OpenID login (for example Google) with ACTUAL_OPENID_ENFORCE=true, password login is disabled, so ACTUAL_PASSWORD can't be used. Instead, sign in to Actual in a browser and pass the resulting session token. It takes precedence over ACTUAL_PASSWORD.

export ACTUAL_SERVER_URL="https://your-actual-server.com"

export ACTUAL_SESSION_TOKEN="your-session-token"

To find the token, sign in to Actual in your browser, open DevTools, and go to Application → IndexedDB → actual → asyncStorage. The value of the user-token key is your session token. It's a UUID (e.g. 3f2b8c1e-9a4d-4e7b-8c2a-1d5e6f7a8b9c), not a long JWT-style bearer token. You can check it with curl -H "X-ACTUAL-TOKEN: " https://your-actual-server.com/account/validate, which should return "validated": true. Treat it like a password: it grants full access to your budgets. How long it stays valid depends on the server's ACTUAL_TOKEN_EXPIRATION setting. If it is invalid or expired, the MCP server still starts, but tool calls fail with Authentication failed: invalid or expired session token, because the server connects to Actual on the first request (--test-resources reports the error immediately). Sign in again, replace the token, and restart the MCP server.

Connection lifecycle

The server keeps one shared Actual connection for its entire lifetime and serializes budget operations through it. Downloaded data is re-synced when it exceeds the ACTUAL_SYNC_TTL_MS freshness window. In both stdio and HTTP modes, SIGINT and SIGTERM drain in-flight work before the server shuts down. Actual is no longer initialized and shut down for each tool call.

Report semantics
  • Balances and balance histories are capped as of today; future-dated transactions are excluded, and the current-month balance-history row is partial.
  • Closed on-budget accounts remain included in historical reports; closed off-budget accounts stay excluded by default.
  • Monthly income follows Actual's income-group metadata. Refunds net against expenses, zero-activity months count in averages, and uncategorized transfer pairs are skipped.
  • The former Investments bucket is removed from monthly summaries.

Usage with Claude Desktop

To use this server with Claude Desktop, add it to your Claude configuration:

On MacOS:

code ~/Library/Application\ Support/Claude/claude_desktop_config.json

On Windows:

code %APPDATA%\Claude\claude_desktop_config.json

Add the following to your configuration...

a. Using Node.js (npx version):
{

"mcpServers": { "actualBudget": { "command": "npx", "args": ["-y", "actual-mcp", "--enable-write"], "env": { "ACTUAL_DATA_DIR": "path/to/your/data", "ACTUAL_PASSWORD": "your-password", "ACTUAL_SERVER_URL": "http://your-actual-server.com", "ACTUAL_BUDGET_SYNC_ID": "your-budget-id" } } } }

a. Using Node.js (local only):
{

"mcpServers": { "actualBudget": { "command": "node", "args": ["/path/to/your/clone/build/index.js", "--enable-write"], "env": { "ACTUAL_DATA_DIR": "path/to/your/data", "ACTUAL_PASSWORD": "your-password", "ACTUAL_SERVER_URL": "http://your-actual-server.com", "ACTUAL_BUDGET_SYNC_ID": "your-budget-id" } } } }

b. Using Docker (local or remote images):
{

"mcpServers": { "actualBudget": { "command": "docker", "args": [ "run", "-i", "--rm", "-v", "/path/to/your/data:/data", "-e", "ACTUAL_PASSWORD=your-password", "-e", "ACTUAL_SERVER_URL=https://your-actual-server.com", "-e", "ACTUAL_BUDGET_SYNC_ID=your-budget-id", "sstefanov/actual-mcp:latest", "--enable-write" ] } } }

After saving the configuration, restart Claude Desktop.

💡 ACTUAL_DATA_DIR is optional if you're using ACTUAL_SERVER_URL.

💡 Use --enable-write to enable write-access tools.

Running an SSE Server

To expose the server over a port using Docker:

docker run -i --rm \

-p 3000:3000 \ -v "/path/to/your/data:/data" \ -e ACTUAL_PASSWORD="your-password" \ -e ACTUAL_SERVER_URL="http://your-actual-server.com" \ -e ACTUAL_BUDGET_SYNC_ID="your-budget-id" \ -e BEARER_TOKEN="your-bearer-token" \ sstefanov/actual-mcp:latest \ --sse --enable-write --enable-bearer

⚠️ Important: When using --enable-bearer, the BEARER_TOKEN environment variable must be set.

🔒 This is highly recommended if you're exposing your server via a public URL.

Example Queries

Once connected, you can ask Claude questions like:

  • "What's my current account balance?"
  • "Show me my spending by category last month"
  • "How much did I spend on groceries in January?"
  • "What's my savings rate over the past 3 months?"
  • "Which categories am I overspending on this month?"
  • "How has my net worth changed over the past year?"
  • "Which payees do I spend the most with?"
  • "Is my grocery spending trending up or down?"
  • "Analyze my budget and suggest areas to improve"
  • "What custom reports do I have?"
  • "Add a net worth widget to my Spending Plan dashboard"
  • "Rearrange my dashboard so the cash flow card is full width at the top"

Usage with Codex CLI

Example Codex configuration:

In ~/.codex/config.toml:

[mcp_servers.actual-budget]

url = "http://localhost:3000"

Point Codex at the same port you pass to npm start -- --sse --port .

Development

For development with auto-rebuild:

npm run watch
Testing the connection to Actual

To verify the server can connect to your Actual Budget data:

node build/index.js --test-resources
Debugging

Since MCP servers communicate over stdio, debugging can be challenging. You can use the MCP Inspector:

npx @modelcontextprotocol/inspector node build/index.js
E2E validation gate

The end-to-end test suite (vitest.e2e.config.ts) spins up a real Actual B

Nur der Anfang wird gezeigt; den Rest findest du im Repo