actual-budget-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| ACTUAL_FILE | Yes | Budget file name or sync id | |
| ACTUAL_BASE_URL | Yes | URL of your Actual Budget server | |
| ACTUAL_CURRENCY | No | Currency code e.g. INR, EUR | USD |
| ACTUAL_MCP_HOST | No | Host to bind to in HTTP mode | 0.0.0.0 |
| ACTUAL_MCP_PORT | No | Port to bind to in HTTP mode | 8000 |
| ACTUAL_PASSWORD | Yes | Actual Budget server password | |
| ACTUAL_TIMEZONE | No | Timezone e.g. Asia/Kolkata, America/New_York | UTC |
| ACTUAL_MCP_TRANSPORT | No | Transport mode — stdio for Cline/Cursor, http for Docker | stdio |
| ACTUAL_CURRENCY_SYMBOL | No | Currency symbol e.g. ₹, € | $ |
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 | {
"listChanged": true
} |
| logging | {} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| extensions | {
"io.modelcontextprotocol/ui": {}
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_accountsA | List all accounts from Actual Budget. Returns each account's id, name, whether it is off-budget, and whether it is closed. Use this to get account ids needed for filtering transactions. |
| list_payeesA | List all payees from Actual Budget. Returns each payee's id and name. Use payee names when filtering transactions by payee. |
| list_transactionsA | List transactions from Actual Budget with optional filters. Dates must be in YYYY-MM-DD format. account, category and payee accept names or ids. notes accepts a partial string to search within transaction notes. Returns date, account, payee, category, notes, and amount (in USD). Use list_accounts to get account names, list_categories for category names, list_payees for payee names. |
| list_categoriesA | List all budget categories from Actual Budget. Optionally filter by is_income=True for income categories or is_income=False for expense categories. Returns category id, name, group name, and whether it is an income category. Use category names when filtering transactions by category. |
| list_category_groupsA | List all category groups from Actual Budget. Returns group id, name, and whether it is an income group. Use this to understand how categories are organised. |
| list_budgetsA | List budget allocations from Actual Budget. month must be in YYYY-MM-DD format (e.g. 2024-01-01 for January 2024). If month is not provided, returns budgets for all months. Returns category name, budgeted amount, and month. Use list_categories to get category names. |
| add_transactionA | Create a new transaction in Actual Budget. date must be in YYYY-MM-DD format. amount is in dollars — use negative for expenses, positive for income. Use list_accounts for account names, list_payees for payee names, list_categories for category names. Returns the created transaction id and details. |
| update_transactionA | Update an existing transaction in Actual Budget. Only provided fields will be updated, others remain unchanged. Use list_transactions to get transaction ids. Returns the updated transaction details. |
| delete_transactionA | Delete a transaction from Actual Budget by id. This is destructive and cannot be undone. Use list_transactions to get transaction ids. Returns the id of the deleted transaction. |
| create_transferA | Transfer money between two accounts in Actual Budget. amount must be positive — direction is determined by from_account and to_account. Use list_accounts to get account names. Returns both the debit and credit transaction details. |
| set_budgetA | Set the budget amount for a category in a given month in Actual Budget. month must be in YYYY-MM-DD format e.g. 2024-01-01 for January 2024. Use list_categories to get category names. Returns the updated budget details. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| monthly_review | Analyze spending vs budget for a given month |
| spending_by_category | Analyze spending for a specific category over a date range |
| add_expense | Guide to add a new expense transaction |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| accounts_resource | List of all accounts in Actual Budget |
| categories_resource | List of all categories in Actual Budget |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Saikumarmohan/actual-budget-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server