
Actual Budget MCP Server
by s-stefanovio.github.s-stefanov/actual-mcpv1.14.0
MCP server exposing Actual Budget accounts, transactions, budgets and reporting to LLM assistants.
context tax
queued
security
queued
cold start
queued
freshness
Active12d ago
Install Actual Budget MCP server
Install in Claude Code
claude mcp add actual -e ACTUAL_SERVER_URL='<actual-server-url>' -e ACTUAL_PASSWORD='<actual-password>' -e ACTUAL_BUDGET_SYNC_ID='<actual-budget-sync-id>' -e ACTUAL_BUDGET_ENCRYPTION_PASSWORD='<actual-budget-encryption-password>' -- npx -y actual-mcpInstall in Cursor
{
"mcpServers": {
"actual": {
"command": "npx",
"args": [
"-y",
"actual-mcp"
],
"env": {
"ACTUAL_SERVER_URL": "<actual-server-url>",
"ACTUAL_PASSWORD": "<actual-password>",
"ACTUAL_BUDGET_SYNC_ID": "<actual-budget-sync-id>",
"ACTUAL_BUDGET_ENCRYPTION_PASSWORD": "<actual-budget-encryption-password>"
}
}
}
}Add to ~/.cursor/mcp.json (global) or .cursor/mcp.json (project).
Install in Claude Desktop
{
"mcpServers": {
"actual": {
"command": "npx",
"args": [
"-y",
"actual-mcp"
],
"env": {
"ACTUAL_SERVER_URL": "<actual-server-url>",
"ACTUAL_PASSWORD": "<actual-password>",
"ACTUAL_BUDGET_SYNC_ID": "<actual-budget-sync-id>",
"ACTUAL_BUDGET_ENCRYPTION_PASSWORD": "<actual-budget-encryption-password>"
}
}
}
}Settings → Developer → Edit Config (claude_desktop_config.json), then restart.
Install in VS Code
{
"servers": {
"actual": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"actual-mcp"
],
"env": {
"ACTUAL_SERVER_URL": "<actual-server-url>",
"ACTUAL_PASSWORD": "<actual-password>",
"ACTUAL_BUDGET_SYNC_ID": "<actual-budget-sync-id>",
"ACTUAL_BUDGET_ENCRYPTION_PASSWORD": "<actual-budget-encryption-password>"
}
}
}
}Add to .vscode/mcp.json in your workspace.
Install in Windsurf
{
"mcpServers": {
"actual": {
"command": "npx",
"args": [
"-y",
"actual-mcp"
],
"env": {
"ACTUAL_SERVER_URL": "<actual-server-url>",
"ACTUAL_PASSWORD": "<actual-password>",
"ACTUAL_BUDGET_SYNC_ID": "<actual-budget-sync-id>",
"ACTUAL_BUDGET_ENCRYPTION_PASSWORD": "<actual-budget-encryption-password>"
}
}
}
}Add to ~/.codeium/windsurf/mcp_config.json.
Configuration
| Variable | Required | Secret | Description |
|---|---|---|---|
| ACTUAL_SERVER_URL | yes | — | URL of your Actual Budget server |
| ACTUAL_PASSWORD | yes | yes | Actual Budget server password |
| ACTUAL_BUDGET_SYNC_ID | yes | — | Budget sync ID |
| ACTUAL_DATA_DIR | — | — | Local dir for cached budget data |
| ACTUAL_BUDGET_ENCRYPTION_PASSWORD | — | yes | E2E encryption password, if enabled |
| ACTUAL_SYNC_TTL_MS | — | — | Sync cache TTL in ms |
Freshness
Active — last maintenance signal 12d ago. The newest of the signals below sets the band.
Last commit (default branch)
2026-09-27 · 12d ago · GitHub
Latest release
2026-09-14 · 26d ago · GitHub · v1.14.0
Package published
no data · npm/PyPI
Registry entry updated
2026-09-14 · 26d ago · official registry · v1.14.0
FAQ
›How do I install the Actual Budget MCP server in Claude Code?
Run: claude mcp add actual -e ACTUAL_SERVER_URL='<actual-server-url>' -e ACTUAL_PASSWORD='<actual-password>' -e ACTUAL_BUDGET_SYNC_ID='<actual-budget-sync-id>' -e ACTUAL_BUDGET_ENCRYPTION_PASSWORD='<actual-budget-encryption-password>' -- npx -y actual-mcp. For Cursor, VS Code, Claude Desktop and Windsurf, use the install tabs above.
›Does Actual Budget require an API key?
Yes. It expects ACTUAL_SERVER_URL, ACTUAL_PASSWORD, ACTUAL_BUDGET_SYNC_ID, ACTUAL_BUDGET_ENCRYPTION_PASSWORD, of which 2 are secrets.
›Can I use Actual Budget as a remote (hosted) MCP server?
Yes — it offers both a hosted endpoint and a local stdio package.
›Is Actual Budget in the official MCP registry?
Yes, as io.github.s-stefanov/actual-mcp.
Alternatives to Actual Budget
Other ai & llm tools MCP servers.