MCP serverio.github.theluckystrike/bank-statement-csv-categorize-reconcile-ledger
Import a bank CSV, categorise it, summarise it per currency and reconcile it against your expenses.
Overview
Score?
UNRATED 0.638
of what a free look can see, on 24 looks
Looks
31
last 11 hr ago
Tools
15
changed 23 days ago
More info
URL
mcp.zovo.one/mcp/bank-statement
streamable-http
Says it is
mcp-bank-statement 0.22.0
protocol 2025-06-18
In the record since
29 days ago
Among servers18,413 with a card
0median 0.606 · this server 0.638 · highest on record 0.8561
Toolsfrom sha256:b335d6f72b…db8b3e · +0 −0 23 days ago
| Tool | Schema |
|---|---|
| accounts_list List the imported accounts: bank, currencies, transaction count, first and last date, and the closing balance when the file carried one. Start here for the account names transactio |
input · no output |
| bank_delete_upload Delete one statement file stored for your token. The transactions already imported from it are kept; transactions_list and the summary still see them. |
input · no output |
| bank_files List the statement files stored for your token, with their sizes. |
input · no output |
| bank_upload Send a bank export to this hosted endpoint. There is no filesystem here, so instead of a path you upload the file once with bank_upload and then pass its name as `path` to statemen |
input · no output |
| category_rules Read the category rules, or pass rules to REPLACE the whole list. A plain match is a substring; a regex compiles only if it cannot backtrack exponentially. An empty match is refuse |
input · no output |
| license_activate Turn Pro on for this connection with key, an MCPL1.<payload>.<signature> issued at checkout for this server or the bundle. Data under your token stays; a wrong or expired key chang |
input · no output |
| license_status Report this endpoint's licence state for your token as JSON: the product, the tier free or pro, why it is not Pro, and the checkout URL. Call it to explain a free-tier refusal. No |
input · no output |
| reconcile_expenses Match bank debits against mcp-expense-tracker entries: same currency and amount, date within a few days. Reports matches, unmatched bank lines, expenses never hitting the bank. Rea |
input · no output |
| recurring_detect Find charges that come back: debits grouped by counterparty and currency with a steady amount and interval, with cadence, typical amount, next due date and annual cost. Free: 3 mon |
input · no output |
| statement_export Export the BANK transactions of a date range (a month, a quarter, a year) as .csv or .json and return a download link valid for one hour. This is the tool for "export September" on |
input · no output |
| statement_import Call this tool to read a bank CSV into the local ledger. Columns detected from headers (date, description, amount, currency, balance); amounts use the file's locale; stored lines s |
input · no output |
| statement_summary What was spent/received in a date range per the BANK ACCOUNT, grouped by category, month, account or counterparty. For "what did I spend in August" once imported. Totals are per cu |
input · no output |
| transaction_categorize Set or clear the category on transactions by id, for a one-off no rule is worth writing for. Every id is checked first, so one unknown id refuses the whole call. category_rules mat |
input · no output |
| transactions_list List stored transactions in a date range, optionally for one account or category, or only the ones no rule has categorised yet. Totals are reported per currency and never added acr |
input · no output |
| transactions_search Find transactions whose description, counterparty, category or account contains the query. Case-insensitive substring search, never a regex, so a query with brackets in it cannot h |
input · no output |
Verify it yourself
npx teppi-check https://mcp.zovo.one/mcp/bank-statementcurl -s https://api.teppi.xyz/v1/trust/mcp/mcs_01M1RE55S43V82XYA8FPXN8WA2