Give your agent an ERPthat refuses bad writes.
47 MCP tools for purchasing, sales, stock and the ledger. The rules live in the server, so your prompt doesn't have to carry them.
Why rules in a prompt aren't enough.
01
Prompts can be missed
A rule in a system prompt is an instruction the model can skip. A rule in the write path runs every time.
02
Plain tables accept anything
A database your agent writes to will store a bill for goods that never arrived.
03
Errors without a fix
An error that only says it failed leaves the agent guessing. A refusal with the numbers lets it correct itself.
Scenarios
What your agent sees.
How OpenERP answers
JSON with the reason, in the server's words. A failed match adds every discrepancy.
How OpenERP answers
No. Partners, items, warehouses and accounts resolve by id, code or name.
How OpenERP answers
Postings are never edited. reverse_entry posts a contra entry and keeps the original, so the correction is visible in the journal.
What changes.
- Rules you don't have to promptThe match, the stock floor and balanced postings run on every write.
- Errors the agent can act onEvery refusal names the rule and the numbers.
- One file to inspectThe whole business in one SQLite file you can query.
- No per-seat billApache 2.0, on a machine you run.
Controls.
Three-way match
A bill posts only if price and quantity agree with the order and the receipts.
Stock floor
A delivery or write-off larger than what's on hand is refused.
Balanced postings
Every document posts a journal entry whose debits equal its credits.
Reversals, not edits
A posted entry never changes. reverse_entry adds a contra entry.
Audit log
Every change writes an audit row in the same transaction.
Self-hosted
One SQLite file on infrastructure you control.
Questions.
Which clients work with it?
Any MCP client that can start a stdio server or connect over HTTP, including Claude Desktop and Claude Code.
Can I call it without MCP?
Not yet. A REST version of every tool is planned for v0.2.
Does it have sign-in?
Not yet. The open-source server has no sign-in or access control, and Docker binds it to localhost. Keep it off shared networks. API keys are planned for v0.2, and Attri adds access control in managed deployments.
Let your agents run purchasing and stock.Keep the rules on the server.
Run OpenERP on a sample business in minutes, or have Attri deploy it inside your environment with access control and approval rules.