spendlog
Spendlog
Cost & expense tracking for solo entrepreneurs, right inside Claude Code. No apps. No spreadsheets. No account.
Track what your business spends, manage budgets, write invoices — all in natural language. Your data stays 100% local in SQLite. Nothing leaves your machine.
Works with
Claude Code | Claude Desktop | VS Code | Cursor
Quick Start
npx spendlogOr one-click install:
The installer auto-configures Claude Desktop and Claude Code. Restart Claude, then try:
"Track 50€ for hosting"
That's it. Requires Node.js 20+.
Why Spendlog?
Zero context-switching — log costs while you build, right where you already work
Local-first — all data in
~/.spendlog/spendlog.db, no account, no cloudNatural language — no forms, no menus, just tell Claude what you spent
38 tools — invoicing, budgets, recurring expenses, CSV export, multi-project tracking
Multilingual — English and German (EN/DE), with i18n ready for more
Examples
Tracking:
You: "29€ for ChatGPT subscription"
Claude: Expense saved: 29.00 € — Category: IT & Software
You: "Export 2025 for my accountant"
Claude: 247 transactions written to ~/spendlog-export-2025.csvInvoices:
You: "Create invoice for TechCorp, web development, 8h at 95€/h"
Claude: Invoice #2026-004 created — 760.00 €
You: "Mark it as paid"
Claude: Invoice #2026-004 marked as paid, income recorded.Analysis:
You: "How much did I spend on software this quarter?"
Claude: IT & Software: 287.00 € (12 transactions) — 23% of total expenses
You: "Compare January vs February"
Claude: Expenses up 15%. Biggest increase: Marketing (+120€)Tools
38 tools across 9 categories:
Category | Tools |
Transactions |
|
Analysis |
|
Invoices |
|
Budgets |
|
Recurring |
|
Projects |
|
Categories |
|
Export |
|
Settings |
|
Configuration
Claude Desktop — edit your config file:
{
"mcpServers": {
"spendlog": {
"command": "npx",
"args": ["-y", "--package=spendlog", "spendlog-mcp"]
}
}
}Claude Code:
claude mcp add spendlog -- npx -y --package=spendlog spendlog-mcpEnvironment variables
Variable | Description | Default |
|
|
|
| Data directory path |
|
| Full path to SQLite database |
|
| Default project for all transactions | none |
Privacy
All data stays on your machine, in a local SQLite file. No account, no cloud, no telemetry — nothing is ever sent anywhere.
Note: Spendlog is a cost tracker, not accounting software. Use it for your own insights, not official bookkeeping or tax filing.
Development
TypeScript (strict), Vitest for tests, TypeORM + SQLite for storage.
git clone https://github.com/makz81/spendlog.git
cd spendlog
npm install
npm run dev # MCP server with watch mode
npm run test # 382 tests
npm run typecheck # type check (no emit)See CONTRIBUTING.md for architecture details and how to add new tools.