Command Palette

Search for a command to run...

UnylyUnyly
Browse all

Honest Mbank Parser

FreeNot checked

Local MCP server that parses mBank CSV operation exports — fully offline

GitHubEmbed

About

Local MCP server that parses mBank CSV operation exports — fully offline

README

Local MCP server that parses mBank CSV operation exports — the exact file you can download from the mBank web app under "Historia" → "Eksportuj do CSV". Runs entirely offline. Nothing leaves your machine.

Part of the honest-mcp family of small, auditable, local-first MCP servers.

Why

Anyone using mBank in Poland — private, JDG, sp. z o.o. — does the same monthly ritual:

  1. Log into mBank, download the CSV.
  2. Open in Excel, squint at Polish-locale amounts (space-thousands, comma-decimals, PLN suffix).
  3. Filter by date, sum by category for VAT / income tax reconciliation.

This server automates step 2 and 3 through your AI. You keep your bank data on disk; the AI just calls a tool that reads and filters it locally.

Zero network calls. The requirements.txt is one line — the MCP SDK. No dependency footprint to audit.

Features

Three tools:

  • read_statement_header — quick preview of a file: client name, date range, listed accounts, inflow/outflow totals, operation count. No operation rows loaded.
  • list_operations — parse + filter operations. Combine any of: date_from, date_to, category, account, contains (description substring), min_amount, max_amount, limit.
  • summarize_operations — aggregate by category, account, or month. Returns count, inflow, outflow, net per bucket plus grand totals.

Amounts come back as signed floats (negative = expense), currency separate. Polish-locale numbers (-3 283,33 PLN) and non-breaking-space thousand separators are handled.

Supported files

  • ✅ CSV export from mBank web banking ("Historia operacji" → "Eksportuj do CSV")
  • ❌ PDF statements — mBank's layout varies too much per statement type for reliable parsing. Skipped intentionally.

Requirements

  • Python 3.10+

Setup

git clone https://github.com/bartosz-kuc/honest-mbank-parser-mcp.git
cd honest-mbank-parser-mcp
python3 -m venv venv
./venv/bin/pip install -r requirements.txt

On Windows use python instead of python3, and venv\Scripts\pip and venv\Scripts\python instead of venv/bin/pip and venv/bin/python (here and in the configs below).

Register with Claude Code:

claude mcp add mbank /absolute/path/to/venv/bin/python /absolute/path/to/server.py

Claude Desktop claude_desktop_config.json:

{
  "mcpServers": {
    "mbank": {
      "command": "/absolute/path/to/venv/bin/python",
      "args": ["/absolute/path/to/server.py"]
    }
  }
}

Example usage

"How much did I spend on 'Ubezpieczenia' in Q2?"

summarize_operations(file_path=".../lista_operacji.csv", group_by="category", date_from="2026-04-01", date_to="2026-06-30") → totals per category, including "Ubezpieczenia".

"List all incoming transfers over 10 000 PLN this year."

list_operations(file_path=".../lista_operacji.csv", min_amount=10000, date_from="2026-01-01")

"Show me every card purchase mentioning Anthropic."

list_operations(file_path=".../lista_operacji.csv", contains="ANTHROPIC")

Data flow

Your AI client
     ↕  MCP stdio
This server (Python, on your machine)
     ↕  local filesystem
Your mBank CSV

No HTTP, no external service — the server has no requests or httpx dependency at all.

Author

Bartosz Kuć — Warsaw-based developer, JDG owner running skanfirmy.pl.

Consulting

Available for consulting on Polish tax and business integrations (KSeF, GUS/NFZ/GIOŚ APIs, mBank data), MCP server design, and AI-assisted tooling for JDGs and small teams. See skanfirmy.pl/uslugi for productized packages (audit 3k PLN, setup 8-15k PLN, retainer 2-4k PLN/mo), or reach out via email.

License

MIT — see LICENSE.

Related

from github.com/bartosz-kuc/honest-mbank-parser-mcp

Install Honest Mbank Parser in Claude Desktop, Claude Code & Cursor

Recommended · one command, every IDE
unyly install honest-mbank-parser

Installs into Claude Desktop, Claude Code, Cursor & VS Code — handles npx, uvx and build-from-source repos for you.

First time? Get the CLI: curl -fsSL https://unyly.org/install | sh

Or configure manually

Run in your terminal:

claude mcp add honest-mbank-parser -- uvx --from git+https://github.com/bartosz-kuc/honest-mbank-parser-mcp mbank-parser-mcp

Step-by-step: how to install Honest Mbank Parser

FAQ

Is Honest Mbank Parser MCP free?

Yes, Honest Mbank Parser MCP is free — one-click install via Unyly at no cost.

Does Honest Mbank Parser need an API key?

No, Honest Mbank Parser runs without API keys or environment variables.

Is Honest Mbank Parser hosted or self-hosted?

Self-hosted: the server runs locally on your machine via the install command above.

How do I install Honest Mbank Parser in Claude Desktop, Claude Code or Cursor?

Open Honest Mbank Parser on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.

Related MCPs

Compare Honest Mbank Parser with

Not sure what to pick?

Find your stack in 60 seconds

Author?

Embed badge for your README

Browse similar

All development MCPs