★ GitHub Connect
Free Open source · MIT OAuth 2.0 150+ currencies

Track your money by talking to your AI.

An AI expense tracker that lives in Claude, ChatGPT or Cursor: just say what you spent. Expenses, income, budgets and net worth, logged and computed for you, in 150+ currencies. Got a statement from any bank? Drop it in the chat.

No app. No forms. No spreadsheet. Every number computed in SQL.

Claude · MyFinance connected live demo
Demo

A full session in 55 seconds.

Demo data, real product: the dashboards in the video are the same ones your AI renders in chat.

How it works

Three steps. No app to learn.

It works the moment you connect. Your AI sets your base currency and timezone in the first conversation.

Step 1 / 3

Connect once.

Works with any AI client that supports remote MCP servers: Claude, ChatGPT, Codex, Cursor and more. No install, no API keys.

Step 2 / 3

Just say what you spent.

Plain language, a receipt photo, or a whole statement from any bank. Categories, currencies and duplicates handled automatically.

Step 3 / 3

Ask anything.

Monthly summaries, trends, budgets, net worth. Every number is computed in SQL on the server. The AI reads the math, it never guesses it.

Any bank · statement import

Works with any bank. Just drop the statement.

Export a CSV or PDF from your bank, or take a screenshot in your banking app, and drop it into the chat. Your AI reads it, the server imports every row, skips what you already have and checks the result against the statement total.

any bank

CSV, PDF or a screenshot

Every bank can export a statement, in any country and any currency. Hundreds of rows go in with one message, each kept in the currency it was paid in.

no doubles

Duplicates skipped, your edits kept

Rows you already logged by hand are merged, not doubled, and keep your category. Dropping the same statement twice is safe: already-imported rows are skipped and reported.

reconciled

Checked against the statement

Every import ends with a total computed in SQL and compared with the one printed on the statement, so a misread row shows up now, not months later.

On ZenMoney (popular in Ukraine, Russia, Kazakhstan and Belarus)? Paste your free ZenMoney API token in the chat once and your accounts and transactions sync in, read-only, with your edits kept.

Examples

Try saying

Just talk to it. Each line below is a real conversation, and every result on the right was computed on the server, not guessed by the AI.

01 "Spent 20 eur on lunch" 20.00 EUR · restaurants · 180 / 300 budget
02 [receipt photo] "Log this" Lidl · 47.20 EUR · 12 line items saved
03 "Here's my June bank statement" [CSV] 152 imported · 3 merged · totals reconciled
04 "How much did I spend on restaurants in June?" 412 EUR · 18 visits · +6% vs May
05 "Set a 400 eur monthly budget for groceries" 310 / 400 EUR · 78% with 9 days left
06 "That dinner on the business card was personal" entity → personal · business report stays clean
07 "What's my net worth?" 24,300 EUR · 5 accounts · 3 currencies
Quick install

Connect in under a minute

Works with any MCP client that supports OAuth 2.0 with PKCE. You sign in once during the connect step, with Google or with a one-time code sent to your email. There is no separate web login: your AI is the app. Want more detail? See the step-by-step install guides.

  1. Open Claude and go to Customize, then Connectors
  2. Click + Add, then Add custom connector
  3. Name it "MyFinance", paste https://myfinance-mcp.com/mcp as the remote MCP server URL and click Continue
  4. Choose Sign in now; if the form asks for an OAuth client, keep Use Claude's published identity (Recommended) (Register automatically works too)
  5. Click Add, then sign in with Google or an email code
Never pick "Use your own OAuth client" and never fill a Client ID or Secret: that breaks sign-in. MyFinance recognises Claude by itself, and your credentials go on the MyFinance sign-in page.

Works on every Claude plan; the Free plan allows one custom connector. Full Claude guide with first prompts and fixes.

  1. Turn on Developer mode: Settings, then Apps, then Advanced settings
  2. Open Plugins, click +, then Add custom MCP server (on the older menu: Settings, Apps, Create)
  3. Name it "MyFinance" and paste https://myfinance-mcp.com/mcp as the server URL
  4. Choose OAuth as authentication, leave the client ID and secret empty
  5. Accept the risk warning, create it and sign in
  6. In a new chat, type @ and pick MyFinance
ChatGPT needs Developer mode on the web. Logging works on Business, Enterprise and Edu; Pro gets read-only access. OpenAI does not list Developer mode for Free, Go or Plus: if you do not see it, use Codex (in every ChatGPT plan) or Claude.

Web only, not in the ChatGPT mobile apps. Full ChatGPT guide with plan details and fixes.

Add to Cursor

  1. Click Add to Cursor and confirm the install prompt in Cursor
  2. Open Customize in the sidebar, find MyFinance under MCP servers and click Connect
  3. Sign in with Google or an email code, then ask in the Agent chat

Manual setup: add this to ~/.cursor/mcp.json

{
  "mcpServers": {
    "myfinance": {
      "url": "https://myfinance-mcp.com/mcp"
    }
  }
}

Full Cursor guide with first prompts and fixes.

codex mcp add myfinance \
  --url https://myfinance-mcp.com/mcp
codex mcp login myfinance

The second command opens the MyFinance sign-in page in your browser. Then start codex and type /mcp to check the connection. In the Codex IDE extension or the ChatGPT desktop app: MCP servers, then Add server, Streamable HTTP, the same URL, then Authenticate. Codex is included in every ChatGPT plan, Free and Go too. Full Codex guide.

{
  "mcpServers": {
    "myfinance": {
      "url": "https://myfinance-mcp.com/mcp"
    }
  }
}

In Claude Code: claude mcp add --transport http myfinance https://myfinance-mcp.com/mcp
Windsurf uses serverUrl instead of url. Your client handles the OAuth login automatically.

Features

Everything, just by chatting

Few tools, forgiving inputs, sane defaults. A feature that needs a manual gets cut.

log

Plain-language logging

Say what you spent or earned; category, currency and date are extracted for you.

scan

Receipt photos

Snap a receipt; your AI parses it in the chat. Images never reach our server.

import

Any bank, by statement

Drop a CSV, PDF or a screenshot from your banking app; hundreds of rows in one call, duplicates detected, totals reconciled.

fx

150+ currencies

Log in the currency you paid in, from EUR and USD to RUB, KZT, GEL or TRY (ECB and National Bank of Ukraine rates, plus a daily snapshot for every other ISO currency since March 2024); summaries answer in your base currency, rate frozen at transaction date.

cap

Budgets and bills

Monthly caps per category or overall, with live progress and alerts only when you exceed one. Subscriptions, rent and bills are found in your records, with what they cost a month and what is due next.

trend

Summaries and trends

By category, merchant or month; month-over-month deltas computed server-side.

split

Personal vs business

Tag accounts and transactions; a founder's combined view with a clean business cut for your accountant.

own

Export and own your data

Every transaction as CSV and the rest of your profile (accounts with balance history, budgets, recurring payments, category rules) as one file, anytime; delete your account and everything with it, instantly.

Why MyFinance MCP

Talking beats spreadsheets.

You already tried the other way. It's why you're here.

The old way

  • The spreadsheet you stopped updating in March
  • Budget app #4, another account, another subscription
  • Typing every coffee into a form
  • One currency, wrong totals

MyFinance MCP

  • Say it, snap it, or import the statement
  • Works inside Claude, ChatGPT or Cursor, free
  • Math in SQL, never AI guessing
  • 150+ currencies, honest totals

Switching from YNAB, Mint, Monarch Money, Lunch Money, Copilot Money, Actual Budget, Firefly III or PocketGuard? See how each compares, or browse all alternatives.

Security

Built like your money depends on it

Finance-grade by construction, not by badge.

no image storage

Receipts never leave the chat

Your AI parses photos client-side; the server receives structured numbers only. There is no image storage to breach.

eu residency

EU data residency

Postgres in Frankfurt, reached over TLS. Every query is scoped to your account by the server, and the database API is closed to everyone.

blind logs

Blind logs

Amounts, merchants and notes are never written to server logs. Usage events keep tool names, timings and error codes, never amounts or merchants.

oauth 2.0 + pkce

Standard authorization

OAuth 2.0 with PKCE and rate-limited sign-in. Tokens are stored only as a one-way hash; refresh tokens rotate on every use, and a used one replayed later revokes the whole sign-in.

mit license

Open source

Read the code, audit it, or self-host with your own database.

gdpr

GDPR by construction

Transaction CSV plus a full profile export (portability) and instant full deletion (erasure) are tools, not support tickets.

FAQ

Questions, answered

The short version. The privacy page has the long one.

What is MyFinance MCP?

A free AI expense tracker that runs as a Model Context Protocol server. You track expenses, income, budgets and net worth by talking to Claude, ChatGPT, Codex or Cursor: you tell your AI what you spent, it logs everything and the server does the math.

What is the Model Context Protocol (MCP)?

An open standard that lets AI assistants connect to external tools. An MCP server provides specific capabilities, here personal finance tracking, that the AI can use during a conversation. Think of it as a plugin system for AI assistants.

Does it work with ChatGPT?

Yes, in ChatGPT on the web with Developer mode turned on. Full support, logging included, is on ChatGPT Business, Enterprise and Edu. On Pro, OpenAI gives custom MCP servers read-only access; its help center does not list Developer mode for Free, Go or Plus, so if you do not see it there, use Codex (in every ChatGPT plan). On any ChatGPT plan, Free included, you can use MyFinance through Codex instead. Both setups are in the ChatGPT guide.

Which clients are supported?

Any MCP client with OAuth 2.0 + PKCE: Claude (web, desktop and mobile), Claude Code, ChatGPT (Business, Enterprise and Edu, on the web), Codex, Cursor, Windsurf and VS Code. Each has a step-by-step guide on the install page.

Do I need a Google account?

No. When you connect, sign in with Google or with a one-time code sent to any email address; the first sign-in creates your account.

Is it free?

Yes, free while in beta. No ads, no card.

Is my data private?

Your data is linked to your account and only you can access it. EU hosting, no third-party sharing, no amounts in logs, sign-in tokens stored only as a one-way hash, and you can export (transactions as CSV, the rest of your profile as one file) or delete everything at any time.

Can it read my bank account?

It does not need to: it works with any bank through statement import. Export a CSV or PDF, or take a screenshot in your banking app, and drop it in the chat. Your AI reads it, the server imports every row, skips duplicates and checks the total against the statement. ZenMoney users can link ZenMoney for a read-only sync. Direct EU and UK bank sync through licensed open banking is a closed beta, by invitation only.

What about duplicates when I import a statement?

The importer detects rows you already logged by hand and merges them instead of duplicating, and re-importing the same statement is safe: already-imported rows are skipped and reported.

Can I split personal and business?

Yes. Accounts and individual transactions carry a personal/business tag; every report can be filtered by it, and the CSV export includes it for your accountant.

Can I self-host it?

Yes. MIT-licensed, runs from a Dockerfile with your own Postgres (Supabase works). The GitHub repository includes a self-hosting guide.

Contact

Questions or feedback?

Found a bug, want a feature, or just have a question? Email me directly. I read every message.

Show email

Start tracking in under a minute.

Free and open source. It works with the AI you already use.

MyFinance MCP is free while in beta, no ads, no card required. Built and run by Rteam.