Are the books balanced?
Always. The server refuses any entry whose debits and credits differ, so the totals can't drift apart.
Open sourceApache 2.0Self-hosted
OpenLedger is an open-source double-entry ledger with an MCP server. Every entry must balance, corrections are reversals instead of edits, and each write is audited in the same database transaction.
Explore the demoSample books, no sign-up
The explorer is part of a deployment Attri runs for you. The MCP server and the SQLite ledger are the open-source repo.
Nobody reviews every entry an agent posts. With OpenLedger, the books themselves answer these three questions.
Always. The server refuses any entry whose debits and credits differ, so the totals can't drift apart.
The server refuses the entry and returns the reason. Nothing is written until the entry balances.
Mistakes are reversed, not edited. The original stays on the record beside a reversal that gives the reason.
How it works
Agent requests
OpenLedger
Checks every write
Debits − credits = $0.00
post_transaction · Cash sale · $250.00
Read back as
Claude reads them through the same 15 MCP tools it writes with. Read-only SQL covers anything else.
Your agent sends a journal entry: a date, a description and at least two lines, with amounts in whole cents.
The server checks that the entry balances and every account exists and is open. If a rule fails, it returns the reason and writes nothing.
The entry and its audit row commit in one database transaction. A mistake is fixed later with a reversal, never an edit.
Compared with a spreadsheet
Bookkeeping tools were built for people clicking through forms. When an agent writes the books, the rules have to hold at the moment of the write.
A spreadsheet or plain table
Rows your agent can edit
Use cases
Sample: a brand studio's books
Bills, invoices and payroll posted by agents, each one balanced on write and audited, with mistakes corrected as reversals your controller can trace.
Sample: agents with their own wallets
Give each agent a wallet account. Every model call or tool it pays for is a balanced entry against that wallet, and top-ups are transfers.
Sample: a two-location café
Weekly sales, supplier bills and utilities posted by agents, and the owner reads the same profit and loss they do.
Sample: a Claude Code session
15 MCP tools for reading and writing a double-entry ledger. The rules live in the server, not in your prompt.
Enterprise
Self-hosted
Run OpenLedger on your own machine and connect your agents to it today.
Hosted by you
Managed by Attri
The ledger rules are open source. Attri runs OpenLedger inside your infrastructure and builds what your finance team needs around it.
In your environment, run by Attri
An entry is saved only if it has two or more lines and its debits equal its credits.
Every amount is an integer number of cents. There is no floating-point money.
Posted entries never change. A reversal flips every line and points back to the original.
Each change and its audit row commit together, so the log can't fall behind.
Open source
Seeds sample books with one command. Access control, approval rules and bank reconciliation come with an Attri deployment.
Read the README on GitHubOpen source by Attri
Books your agents can write to, and can't break. Every posting balances; corrections are reversals.
Traces every AI session, tool call and dollar to the person behind it.
CRM memory for AI agents where every fact links to the email or transcript behind it.
HR records your agents can update, and can't bend. Leave can't be overdrawn, and every asset has one holder.
Purchasing, stock and sales on a double-entry ledger. A bill that doesn't match its order and receipt is blocked.
Run OpenLedger on sample books in minutes, or have Attri deploy it inside your environment with access control and approval rules.