Actual Budget for VS Code
io.github.henfrydls/actual-budget-mcp
Spending analysis and safe writes for Actual Budget: every delete previews and asks first.
client:VS Code
transport:stdio
runtime:npm
Install Actual Budget in VS Code
.vscode/mcp.json
{
"inputs": [
{
"type": "promptString",
"id": "actual-server-url",
"description": "ACTUAL_SERVER_URL",
"password": true
},
{
"type": "promptString",
"id": "actual-password",
"description": "ACTUAL_PASSWORD",
"password": true
},
{
"type": "promptString",
"id": "actual-session-token",
"description": "ACTUAL_SESSION_TOKEN",
"password": true
},
{
"type": "promptString",
"id": "actual-budget-id",
"description": "ACTUAL_BUDGET_ID",
"password": true
},
{
"type": "promptString",
"id": "actual-encryption-password",
"description": "ACTUAL_ENCRYPTION_PASSWORD",
"password": true
},
{
"type": "promptString",
"id": "actual-read-only",
"description": "ACTUAL_READ_ONLY",
"password": true
},
{
"type": "promptString",
"id": "actual-data-dir",
"description": "ACTUAL_DATA_DIR",
"password": true
}
],
"servers": {
"actual-budget-mcp": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"actual-budget-mcp"
],
"env": {
"ACTUAL_SERVER_URL": "${input:actual-server-url}",
"ACTUAL_PASSWORD": "${input:actual-password}",
"ACTUAL_SESSION_TOKEN": "${input:actual-session-token}",
"ACTUAL_BUDGET_ID": "${input:actual-budget-id}",
"ACTUAL_ENCRYPTION_PASSWORD": "${input:actual-encryption-password}",
"ACTUAL_READ_ONLY": "${input:actual-read-only}",
"ACTUAL_DATA_DIR": "${input:actual-data-dir}"
}
}
}
}
VS Code prompts for each input the first time the server starts, so no secret is written to the file. VS Code docs