
Spendlog
io.github.makz81Published by GitHub account makz81v1.0.4Updated Oct 24, 2026
MCP server for expense tracking, invoices, budgets, and financial insights directly in Claude
Overview
Local MCP server that lets an assistant track business expenses, income, budgets and invoices in a local SQLite file through natural language.
- What you can do
- Record and edit expenses and income, list transactions, and delete entries
- Summarize spending, break it down by category, compare periods and produce tax summaries
- Create, list, duplicate, mark sent or paid, and delete invoices
- Set and update budgets, and check budget status
- Manage recurring expenses, projects and categories
- Export transactions and invoices, including a tax-advisor export, and read or set the profile
- When to use it
- Useful for solo entrepreneurs and freelancers who want to log costs, watch budgets and draft invoices while working in Claude Code or Claude Desktop, without a separate accounting app or spreadsheet.
- Requirements
- Runs locally via npx spendlog, so Node.js 20 or newer is needed. No account or API key. Optional environment variables set the language, data directory, SQLite database path and default project.
Installation
In SourceWeft
- Open Spendlog in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Other MCP clients
Follow the launch instructions in the repository.
README
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.
[npm version] [npm downloads] [CI] [38 MCP tools] [382 tests] [MIT License]
[Spendlog monthly summary in Claude]
Works with
Claude Code | Claude Desktop | VS Code | Cursor
Quick Start
Or one-click install:
[Install in VS Code] [Install in Cursor]
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 cloud - Natural 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:
Invoices:
Analysis:
Tools
38 tools across 9 categories:
Configuration
Manual setup (if the installer didn't work)
Claude Desktop — edit your config file:
Claude Code:
Environment variables
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.
See CONTRIBUTING.md for architecture details and how to add new tools.
License
Source: README.md at commit 0e51678
Tools
0Version history
1- v1.0.4LatestSep 16, 2026
Score
50% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 days25 pts
Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.
- Auth declared10 pts
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts