01 Import · import_transactions
A bank feed, a CSV, or a PDF statement handed to your AI. Rows land in a review queue. Nothing posts to the ledger by itself.
Here’s my June statement.
84 transactions imported. Nothing posted yet.
Most tools put a label on a row. LedgerMCP posts a two-sided entry for each one and remembers where every merchant belongs. The few rows it is unsure about wait for you.
No card. Works with Claude, ChatGPT, Grok, Cursor, and any MCP client.
Coffee Company · Business Checking, June
| Date | Merchant | Description | Category | Amount | Reviewed |
|---|---|---|---|---|---|
| 06/28 | Owner draw | Owner’s Draw | −$8,766.00 | ||
| 06/28 | Gusto payroll run | Payroll | −$6,797.00 | ||
| 06/27 | Square processing fees | Bank Fees | −$1,204.00 | ||
| 06/25 | Square daily sales | Sales Revenue | +$8,494.00 | ||
| 06/18 | Pacific Cup Co needs review | −$2,984.00 |
81 categorized, 3 flagged for review
01 · The month
You answer what your AI flagged.
01 Import · import_transactions
A bank feed, a CSV, or a PDF statement handed to your AI. Rows land in a review queue. Nothing posts to the ledger by itself.
Here’s my June statement.
84 transactions imported. Nothing posted yet.
02 Categorize · bulk_categorize
Your AI assigns each row to a category from your chart of accounts, splits mixed charges, and books transfers as transfers. It remembers each merchant’s last category, so next time is one step.
Categorize June.
| Date | Merchant | Description | Category | Amount | Reviewed |
|---|---|---|---|---|---|
| 06/25 | Stripe online and app orders | Sales Revenue | +$4,971.00 | ||
| 06/20 | Transfer to savings monthly reserve | Transfermatched | −$12,500.00 | ||
| 06/19 | Meta and Yelp local ads | Advertising | −$446.00 |
One pass, 3 rows left for you.
03 Answer the flagged few · add_convention
Anything ambiguous stays flagged. Your AI asks, you answer in plain words, and it books the row and writes a rule from what you said. Corrections work the same way.
The question
| Date | Merchant | Description | Category | Amount | Reviewed |
|---|---|---|---|---|---|
| 06/18 | Pacific Cup Co needs review | −$2,984.00 |
One question: Pacific Cup Co, $2,984.00 on 06/18. Cups and lids, or equipment?
Your answer
Cups and lids. They’re our supplier.
The rule
Pacific Cup Co is our cup supplier. Book it as Cost of Goods Sold.
Written by your AI · Jun 30
Next month
| Date | Merchant | Description | Category | Amount | Reviewed |
|---|---|---|---|---|---|
| 07/18 | Pacific Cup Co monthly order | Cost of Goods Soldrule | −$2,984.00 |
Booked by the rule. Nothing to answer.
02 · The entry
Behind every row, the bank account against the category.
Categorizing posts both sides at once, so a wrong category is never an unbalanced book.
That is why a P&L from these books holds up with your CPA.
Financial reports →Gusto, 06/28 · payroll run
03 · The hard rows
Each has its own tool, and each still balances.
Tools
One row, a split, a whole month, a rule, or a transfer between your own accounts.
All 74 tools →Questions
Yes. Connect Claude or ChatGPT and it categorizes each transaction against your own chart of accounts, one row or a whole month at a time. Under the hood every category posts a balanced double-entry journal entry, so the books stay correct, not just labeled.
Yes. LedgerMCP remembers the category each merchant was last posted to and suggests it next time, and that memory updates every time you correct something. You can also write durable rules, like a specific Zelle payment is always rent, that every future session follows.
One charge can post across several categories in a single balanced entry, as long as the lines sum to the total. That covers a Costco run that was part groceries and part supplies, or a loan payment split into principal against the loan and interest as an expense.
Tell it, or fix it yourself in the app with one click. Nothing already in the books can be edited, so a correction reverses the old entry and posts a fresh one linked to it, never a silent edit. Your history stays complete, and the merchant is learned so it does not repeat the mistake.
Yes. Bulk categorize was built for catch-up and migration: many transactions in one call, each with its own entry, so one bad row never blocks the rest. Most backlogs clear in an afternoon.
They are booked as transfers, never as income or expense, so moving money from checking to savings does not distort your P&L. LedgerMCP detects the likely matching leg and you confirm it; it never auto-matches on its own.
Categorize it to Owner’s Draw and the books still tie to the bank. The reverse case, a business expense you paid with a personal card, posts as an expense against Owner’s Contribution. Both keep the books honest without a second bank account.
Import one statement. Your AI clears the queue and leaves you the questions.
Free to start. Unlimited books.
Demo book: Coffee Company, June 2026, 84 transactions.