Enables management of personal budgets through natural language, including adding transactions, checking account balances, tracking budget categories, searching transaction history, analyzing spending patterns, and syncing budget data with an Actual Budget server.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Actual Budget MCP Serveradd a $45 transaction for lunch at Chipotle yesterday"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Actual Budget MCP Server
Let Claude manage your budget! This is a Model Context Protocol (MCP) server that allows AI assistants to interact with your Actual Budget.
Features
Manage your budget through natural language conversations with Claude:
π Add Transactions - "Add a transaction: $350 at Whole Foods for groceries"
π° Check Balances - "What's my checking account balance?"
π Transfer Money - "Transfer $500 from checking to savings"
π Budget Tracking - "How much have I spent on dining this month?"
π Search Transactions - "Show me all Costco purchases last month"
π Spending Analysis - "Analyze my spending breakdown for this month"
π₯ Batch Import - Import multiple transactions from CSV or structured data
Supported Tools
Tool | Description |
| Get all accounts with balances |
| Query specific account balance |
| Add transaction (income/expense/transfer) |
| Batch import multiple transactions |
| Query account transaction history |
| Search transactions by payee, notes, or amount |
| Update existing transaction |
| Delete a transaction |
| Get all budget categories |
| View monthly budget overview |
| Set category budget amount |
| Get all payees/merchants |
| Get spending summary analysis |
| View recurring transactions/bills |
| Create recurring transaction |
| Delete recurring transaction |
| Sync budget data |
Quick Start
Prerequisites
Running Actual Budget server
Password authentication (OpenID users need to enable password login)
Docker (for deployment)
1. Get Budget Sync ID
In Actual Budget:
Go to Settings
Click Show advanced settings
Copy the Sync ID
2. Configure Environment Variables
Edit .env:
3. Deploy with Docker
Or use Docker Compose:
4. Connect to Claude
Configure the Connector in claude.ai:
Go to Settings β Connectors
Click Add Connector
Select MCP
Enter URL:
http://your-server:3000/mcp
TrueNAS Scale Deployment
Using Custom App
In TrueNAS Scale, go to Apps β Discover Apps β Custom App
Configure as follows:
Application Name:
actual-budget-mcpImage Repository: Your Docker registry or local build
Container Images:
Image:
actual-budget-mcp:latest
Container Environment Variables:
ACTUAL_SERVER_URL=http://actual-budget:5006 ACTUAL_PASSWORD=your-password ACTUAL_BUDGET_ID=your-sync-idNetworking:
Port: 3000 β 3000 (TCP)
Storage:
Host Path:
/mnt/your-pool/actual-mcp-cacheMount Path:
/data/actual-cache
If Actual Budget is also on TrueNAS, ensure they're on the same network.
Integration with Existing Actual Budget
If your Actual Budget is already deployed on TrueNAS:
Local Development
API Endpoints
Endpoint | Method | Description |
| POST | MCP request endpoint |
| GET | Health check |
Usage Examples
After configuring the Connector, you can interact with Claude like this:
Adding a Regular Transaction
Transferring Between Accounts
Batch Importing Transactions
Viewing Budget Status
New Features in v1.2.0
Transfer Transactions
The add_transaction tool now supports the transfer_to parameter for creating transfers between accounts:
This automatically creates matching transactions in both accounts using Actual Budget's transfer mechanism.
Batch Import Transactions
The new import_transactions tool allows bulk importing of transactions with improved performance:
Benefits:
Single API call instead of multiple individual calls
Better duplicate detection using
imported_idProper rule application across entire batch
Returns detailed counts of added/updated transactions
Troubleshooting
Connection Failed
Verify Actual Budget server is running
Check that
ACTUAL_SERVER_URLis correctIf using Docker networking, verify container names are correct
Authentication Failed
Verify password is correct
If using OpenID, ensure password login is also enabled:
// config.json { "allowedLoginMethods": ["password", "openid"] }
Budget Not Found
Verify
ACTUAL_BUDGET_IDis the correct Sync IDFind Sync ID in Actual Budget's Settings β Show advanced settings
Encryption Error
If your budget has end-to-end encryption enabled, you need to set ACTUAL_ENCRYPTION_PASSWORD
License
MIT License