Fix our Books. Make no Mistakes.

5 minute read.

I let AI loose on my com­pa­ny’s books last week.

Here’s what hap­pened.

The prompt

“Fix our books. Make no mis­takes.”

(I’m kid­ding. Most­ly.)

Some context

My COO and I are both Ger­man. A $10 plug in our cash­flow state­ment is what wakes us up at night, sweat­ing pro­fuse­ly. Ac­count­ing ex­cel­lence isn’t op­tion­al for us. It’s cul­tur­al.

We’d re­cent­ly switched away from an ac­count­ing agen­cy. When you switch ven­dors, you in­her­it their work, and it’s rarely at the lev­el you’d do it your­self. Ty­pos in ac­count names. In­con­sis­tent cat­e­go­riza­tion. Mul­ti-cur­ren­cy wasn’t even en­abled be­cause the pre­vi­ous ac­coun­tants con­sid­ered it “too com­pli­cat­ed.” Two com­pa­nies had merged, and the books re­flect­ed that in all the wrong ways.

Post-tran­si­tion cleanup is nor­mal. But do­ing it prop­er­ly re­quires re­al dili­gence and dis­ci­pline, and it’s cost­ly when you’re pay­ing some­one by the hour to comb through ev­ery en­try.

What I ac­tu­al­ly did

In­tu­it pub­lished an open-source MCP serv­er for Quick­Books. MCP is a pro­to­col that lets an AI agent talk di­rect­ly to ex­ter­nal ser­vices. Not just read about them, but ac­tu­al­ly call the API, make changes, pull da­ta.

I con­nect­ed it to Claude via a cod­ing agent. The ini­tial set­up had a few rough edges. The cod­ing agent fixed them with­out me touch­ing any­thing.

Then I just let it work.

This is the part that genuinely surprised me

The AI read the MCP re­po’s source code on its own. It un­der­stood the Quick­Books API from that, not from doc­u­men­ta­tion I pro­vid­ed.

Then it start­ed build­ing its own CLI tools. In Type­Script. It wrote ex­port scripts to pull full ledgers, com­pare them line by line against bank state­ments, find miss­ing trans­ac­tions, and re­solve brute-force ad­just­ment jour­nal en­tries that pre­vi­ous ac­coun­tants had left be­hind.

It cross-checked P&L, bal­ance sheet, and cash flow against each oth­er. Flagged ev­ery GAAP di­ver­gence it found. When it need­ed more in­for­ma­tion or doc­u­ments, it asked. And it doc­u­ment­ed ev­ery­thing it learned in the repos­i­to­ry so it could pick up ex­act­ly where it left off in the next ses­sion.

This is not a spe­cial­ized ac­count­ing AI. This is stock Claude in a Cod­ing Agent har­ness with a Quick­Books API con­nec­tion. No fine-tun­ing. No ac­count­ing-spe­cif­ic train­ing. Just a gen­er­al-pur­pose mod­el that read the code and fig­ured it out.

It hit real walls too

Bank-matched trans­ac­tions can’t be mod­i­fied via the Quick­Books API. Cur­ren­cy reval­u­a­tions still have to be done in the web UI. These are Quick­Books API lim­i­ta­tions, not AI lim­i­ta­tions.

We have a pro­to­col for that now: it sends me its rea­son­ing on why some­thing needs chang­ing and ex­act­ly what to do, with di­rect mark­down links in­to Quick­Books. I click, ver­i­fy, ex­e­cute. Takes sec­onds.

Where we are now

We es­sen­tial­ly have an ac­coun­tant for less than $1/hour.

But the re­al val­ue isn’t the cost sav­ings. It’s that I now have more in­sight in­to our books than I’ve ev­er had. I un­der­stand what’s go­ing on at ev­ery lev­el of de­tail. I’m the one de­cid­ing where to be pre­cise and where a small vari­ance is ac­cept­able. I can ex­plain ev­ery re­main­ing dis­crep­an­cy.

That’s the op­po­site of what peo­ple ex­pect when they hear “AI does the books.” They pic­ture a black box. What I got was the clear­est win­dow in­to my own com­pa­ny’s fi­nances I’ve ev­er had.

The Ger­man in me is sat­is­fied. That’s not a low bar.

The thing I keep coming back to

This AI didn’t fol­low a recipe. It read source code, fig­ured out an API, built its own ver­i­fi­ca­tion tools, and pro­duced work that was more thor­ough than what we’d in­her­it­ed from a pro­fes­sion­al agen­cy.

That’s not au­to­ma­tion. That’s clos­er to hir­ing some­one who shows up on day one, reads the man­u­al, and in­vents a bet­ter process be­fore you’ve even fin­ished ex­plain­ing the prob­lem.

When do you think you’ll start do­ing your ac­count­ing with AI?