Labsco
MCP SERVER

Expense Tracker

by keyurgit45

Log and categorise expenses in natural language, backed by Supabase and embedding-based category prediction.

Personal Finance & Budgeting
Summary
Bring your own Supabase — the setup is four scripts before anything works.

Nothing here runs against a service someone else operates: you create the Supabase project, run the schema scripts, seed the categories and tags, and supply a Gemini key. That is more work than most servers on this list, and in exchange the data stays in a database you control. The categorisation design is the interesting part — similarity against your own past transactions, weighted vote, and learning from corrections, rather than a fixed keyword list.

What it is

The MCP half of a two-server expense system. This server holds the expense tools — creating transactions, categorising them, summarising spending — and stores everything in Supabase; a separate FastAPI server provides a chat interface with JWT auth on top. Categorisation is not rule-based: it embeds each transaction, finds similar past ones with pgvector, and predicts by weighted vote, falling back to rules and learning from your confirmations.

What you get
  • Create expenses from a plain-language description rather than a form
  • Automatic categorisation of transactions, improving as you confirm or correct it
  • Spending summaries across a period
  • Subscription analysis, to surface recurring charges
  • Recent transaction listings
  • Hierarchical categories and a predefined tag system, both seeded by setup scripts
Requirements

A Supabase project and a Google API key for Gemini: `SUPABASE_URL`, `SUPABASE_KEY` and `GOOGLE_API_KEY`. Before first use, run the two SQL scripts in the Supabase editor to create the core tables and the embeddings schema, then run the two population scripts to seed categories and tags. Set up a virtualenv and `pip install -r requirements.txt`, then start the MCP server with `python run_mcp.py`. Project `expense-tracker`, version 0.1.0. This is your own deployment — there is no hosted instance to sign up for.

Setup effort

One command plus a key — uvx expense-tracker, then supply credentials