Skip to content
MCPSTAMP

AnswerLive data

Can Claude categorize bank transactions?

Partly. With code execution on (the default on Free, Pro and Max) Claude can read an uploaded bank CSV and label the rows. The rules live in that chat or in a Project's instructions, and they are not applied to a stored ledger, so next month you run it again. Connect the Bank Statement server (free token) and Claude imports the CSV into a ledger, applies your saved category rules and totals spending by category or month.

What Claude does alone, and what needs the server

Claude on its own

  • Labels transactions you paste.
  • Suggests a set of budget categories.

With the Bank Statement server

  • Saved rules that apply to every new statement.
  • Totals by category or month from the real rows.
  • Recurring charges found across months.

A real call to the live server

We sent this to the hosted server on 2026-11-05. The answer below is the server's own text, not a mock-up. Live values will differ when you ask.

You ask

Uber and Shell are Transport, Whole Foods is Groceries, Netflix and Adobe are Subscriptions.

Tool call

category_rules {"rules":[{"match":"UBER","category":"Transport"},{"match":"SHELL","category":"Transport"},{"match":"WHOLE FOODS","category":"Groceries"},{"match":"NETFLIX","category":"Subscriptions"},{"match":"ADOBE","category":"Subscriptions"}],"reapply_all":true}

Server answer

{ "rules": 5, "categorised": 12, "free_limit": 5, "rules_remaining": 0 }

A test CSV with 14 rows from August to October was uploaded and imported first.

You ask

Show October spending by category.

Tool call

statement_summary {"from":"2026-10-01","to":"2026-10-31","group_by":"category"}

Server answer

{ "from": "2026-10-01", "to": "2026-10-31", "group_by": "category", "count": 6, "by_currency": { "USD": { "count": 6, "money_in": "USD 950.00", "money_out": "USD 259.85", "net": "USD 690.15", "groups": [ { "group": "(uncategorised)", "count": 1, "money_in": "USD 950.00", "money_out": "USD 0.00", "net": "USD 950.00", "net_minor": 95000 }, { "group": "Groceries", "count": 1, "money_in": "USD 0.00", "money_out": "USD 104.67", "net": "USD -104.67", "net_minor": -10467 }, { "group": "Transport", "count": 2, "money_in": "USD 0.00", "money_out": "USD 79.70", "net": "USD -79.70", "net_minor": -7970 }, { "group": "Subscriptions", "count": 2, "money_in": "USD 0.00", "money_out": "USD 75.48", "net": "USD -75.48", "net_minor": -7548 } ] } } }

The client payment has no rule, so it stays uncategorised.

Connect it in 1 minute

Get a free token first. No account, 30 days, 600 calls an hour. Put it in the URL in place of <token>. In Claude.ai or Claude Desktop open Settings, then Connectors, then Add custom connector, and paste the URL.

1. Free token

curl -s -X POST https://mcp.zovo.one/mcp/token

Connector URL (replace <token>)

https://mcp.zovo.one/mcp/bank-statement/t/<token>

Claude Code

claude mcp add --transport http bank-statement https://mcp.zovo.one/mcp/bank-statement/t/<token>

Cursor (~/.cursor/mcp.json)

{
  "mcpServers": {
    "bank-statement": {
      "url": "https://mcp.zovo.one/mcp/bank-statement/t/<token>"
    }
  }
}

VS Code (.vscode/mcp.json)

{
  "servers": {
    "bank-statement": {
      "type": "http",
      "url": "https://mcp.zovo.one/mcp/bank-statement/t/<token>"
    }
  }
}

All 10 tools, free and Pro limits and more prompts are on the Bank Statement MCP server page.

Questions

Can Claude categorize bank transactions?
Partly. With code execution on (the default on Free, Pro and Max) Claude can read an uploaded bank CSV and label the rows. The rules live in that chat or in a Project's instructions, and they are not applied to a stored ledger, so next month you run it again. Connect the Bank Statement server (free token) and Claude imports the CSV into a ledger, applies your saved category rules and totals spending by category or month.
Which banks work?
Most bank CSV exports. The import reads the headers to find the date, description and amount columns, and a PDF statement is refused.
What is free?
Five category rules and the last 12 months of transactions. On the hosted server your files and records are kept for your token for 30 days, refreshed on every write. Install the server locally if you want nothing to leave your machine.
Is the server free?
The hosted Bank Statement server has a free tier. A free token lasts 30 days and allows 600 calls an hour, with no account. Some features are Pro, and the server page lists what is free and what is not.

More questions people ask Claude

All answers ยท All free servers

Get an email when a new free server ships

About once a month, one short email lists the free MCP servers and Can Claude answers we added since the last one. Your address is used for nothing else. We first send a link to confirm, and you are not on the list until you click it. Every email has an unsubscribe link. Details are on the privacy page.