actual-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| ACTUAL_DATA_DIR | No | Path to your Actual Budget data directory (default: ~/.actual) | |
| ACTUAL_PASSWORD | Yes | Password for your remote Actual server (if using a remote server) | |
| ACTUAL_SERVER_URL | Yes | URL of your remote Actual server (if using a remote server) | |
| ACTUAL_BUDGET_SYNC_ID | Yes | Specific budget to use (optional) |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {} |
| logging | {} |
| prompts | {} |
| resources | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| get-transactionsC | Get transactions for an account with optional filtering |
| spending-by-categoryC | Get spending breakdown by category for a specified date range |
| monthly-summaryC | Get monthly income, expenses, and savings |
| balance-historyC | Get account balance history over time |
| budget-vs-actualB | Compare budgeted amounts against actual spending per category, for recent months. Returns JSON; amounts are integer cents. |
| net-worthB | Track assets, liabilities, and net worth across all accounts over time. Returns JSON; amounts are integer cents. |
| category-trendsB | Show how spending in each category changes month over month, with trend direction. Returns JSON; amounts are integer cents. |
| spending-by-payeeB | Rank payees by how much money was spent with (or received from) each one. Returns JSON; amounts are integer cents. |
| cash-flowB | Report income, expenses, and net cash flow per month or week. Returns JSON; amounts are integer cents. |
| get-accountsA | Retrieve a list of all accounts with their current balance and ID. |
| get-grouped-categoriesA | Retrieve a list of all category groups with their id, name, type and category list. |
| get-payeesA | Retrieve a list of all payees with their id, name, categoryId and transferAccountId. |
| get-rulesA | Retrieve a list of all rules. PS amount comes in cents: positive for deposit, negative for payment |
| get-custom-reportsA | Retrieve every saved custom report from the budget's Reports section |
| get-dashboardsA | Retrieve every dashboard page and the widgets laid out on it. These are the dashboards under the Reports section of the sidebar. |
| get-budget-monthsA | Retrieve a list of all available budget months in YYYY-MM format. |
| get-budget-monthA | Retrieve budget data for a specific month, including budgeted amounts, spending, and balances per category. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| financial-insights | Generate financial insights and advice |
| budget-review | Review my budget and spending |
| actual-cleanup | Analyze budget for cleanup opportunities |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 17 tools
Several reporting tools overlap in purpose: spending-by-category, category-trends, budget-vs-actual, monthly-summary, and cash-flow all present spending or income data over time, which could cause an agent to select the wrong one. The get-* list tools are clearly distinct, but the analytics tools have fuzzy boundaries.
The tool names mix two conventions: get-prefixed verbs (get-accounts, get-transactions) and descriptive hyphenated noun phrases (balance-history, net-worth, cash-flow). While all names are lowercase with hyphens and still readable, the lack of a single consistent verb_noun or noun-only pattern lowers the score.
With 17 tools, the server is on the heavier side but still reasonable for a budgeting application covering accounts, transactions, categories, payees, reports, and analytics. The count feels slightly over the ideal, but most tools have a legitimate purpose.
The tool surface covers the main read-only aspects of a budgeting app: accounts, transactions, categories, payees, rules, reports, dashboards, and monthly budgets. Missing write operations (e.g., create transaction, update budget) and some detail views are notable gaps, but for a reporting/analytics focus the scope is largely complete.