MINTRO · THE BUDGET
Your agent does the clerk work.▮
Mintro holds the budget. Your transactions come in, you decide the envelopes, and the agent you already have files them and gives every dollar a job. Then you open the app and it is already done.
A budgeting app your agent keeps current. Claude, ChatGPT, or Grok — free to start.
You are not the clerk.
Every budgeting subscription sells you the same bundle: a method, some categories, and a job. The method is fine — Mintro uses it too. It is the job that is the problem: their software watches your bank and guesses, and you spend Sunday confirming its guesses. Mintro keeps the method and the screen, and gives away the job. Your agent files, assigns and reconciles through the same API the screen uses, so the budget is current before you look at it.
competitor prices approximate · all prices USD
> Mintro holds the budget.
> Every dollar gets a job. You decide what the jobs are.
> Your agent does the filing. You just look.
What Mintro actually is.
Honestly? A database for your budget, an API and an MCP server on top of it, a screen built on that same API, and just enough business logic to keep everyone on course — entries that always balance, envelope totals that are never wrong, an inbox that never drops a transaction. That's the whole product. That's the point.
The method is zero-based envelope budgeting, the one YNAB made famous: income arrives unassigned, every dollar gets a job, and what is left rolls into next month. Ready to assign, months and rollover, moving money when you overspend, credit-card payment envelopes, reconciling against a statement, reports. Mintro has opinions about your method and stronger ones about your data.
And it's memory. Agent sessions start fresh; your budget shouldn't. The method you settled on, the targets, the notes your agent writes to its future self — they live here, so any agent, any day, picks up exactly where the last one left off.
> read my papers and pick up where we left off
How it works
1
Get your transactions in
Connect your bank through Plaid’s hosted link — credentials never touch your agent, or us. Not linked yet? Hand your agent a bank export and it imports the lot.
2
Your agent files and assigns
Every transaction lands in the inbox; your agent files it into your envelopes and gives the new money a job.
filed_by: your-agent · 09:14
3
You open the app
The month is already drawn. Nothing to sort. Nothing to confirm. Just the budget, current.
groceries ██░░░░░░ $515.88 left
See the month before it happens.
Thirty days behind you, thirty ahead. Today in the middle. Last month is what posted. Projected is upcoming bills and income — the same rows as on the register. If a bill takes remaining below warn, the line says so while you can still move money.
Projected from upcoming bills and income. Rent on 20 Sep takes remaining below warn.
A bill can take cashflow negative. That is the point of looking.
What it looks like when the clerk works for you.
A HOUSEHOLD
One shared budget. Two people, two agents, two banks. Targets, a shared plan on paper, and nobody spent Sunday categorizing.
A COMPANY
The bookkeeper's agent can file and nothing else. Every entry says who filed it. Cut one key without touching the rest.
Ours, or yours.
Mintro ships an app. It has no endpoint yours could not call. Every screen we built runs on the same public API your agent uses — no private endpoints, not one, and the OpenAPI document is right there to check. Use ours. Or ask your agent to build you something better and keep both.
Your key stays on your machine, never in shipped browser code. Public apps come later with "Sign in with Mintro."
Anything you can do here, your agent can do.
Not a philosophy. A build rule with a test attached: every screen in the app is a documented endpoint and an agent tool. If we ship a button we cannot give you as an API call, the build fails.
| on the screen | over http | over mcp |
|---|---|---|
| file a transaction | POST /v1/budgets/{id}/entries | file_transaction |
| split one four ways | POST /v1/budgets/{id}/entries | file_transaction |
| undo a filing | DELETE /v1/budgets/{id}/entries/{id} | unfile_transaction |
| rename an envelope | PATCH /v1/budgets/{id}/envelopes/{id} | rename_envelope |
| group your envelopes | PUT /v1/budgets/{id}/envelopes/order | reorder_budget |
| fix a typo'd amount | PATCH /v1/transactions/{id} | edit_transaction |
| search the register | GET /v1/transactions | list_transactions |
| give a dollar a job | POST /v1/budgets/{id}/assignments | assign_money |
| move money between envelopes | POST /v1/budgets/{id}/assignments | move_money |
| read the month | GET /v1/budgets/{id}/month | get_month |
| import a bank export | POST /v1/transactions/import | import_transactions |
| tick off a statement | PATCH /v1/accounts/{id}/cleared | set_cleared |
| agree with the bank | POST /v1/accounts/{id}/reconcile | reconcile_account |
| point a card at its payment envelope | PATCH /v1/accounts/{id} | set_card_payment_envelope |
| see when this account runs low | GET /v1/accounts/{id}/forecast | get_account_forecast |
| set when this account is low | PATCH /v1/accounts/{id} | set_account_low |
| see cashflow | GET /v1/cashflow | get_cashflow |
| add a bill | POST /v1/budgets/{id}/recurring | add_recurring |
| record a transfer | POST /v1/transfers | record_transfer |
| set when this account has enough | PATCH /v1/accounts/{id} | set_account_ok |
| start another budget | POST /v1/budgets | create_budget |
| write a plan | PUT /v1/budgets/{id}/papers/{slug} | write_paper |
| see where it went | GET /v1/budgets/{id}/report | read_report |
| take the whole budget | GET /v1/budgets/{id}/export | export_budget |
| say what you want | PUT /v1/budgets/{id}/aim | put_aim |
The app is a client. You could write a better one, and we would not be able to stop you.
Your budget survives
Plaid is what happened at the bank. Mintro is what you meant. When a bank connection dies, your budget does not.
In your budget
- your envelopes and their totals
- every filed transaction, forever
- every entry, and who filed it
- your targets and what they mean
- your plans, playbooks, rules
Never stored
- your bank login
- full bank history
- raw bank payloads
- anything an ad could be sold on
Export your whole budget in one call, any time. YOURS
We NEVER move your money.
We NEVER see your bank login.
We NEVER sell your data.
Mintro is a budget, not a bank. Your agent can file every transaction; it cannot touch your credentials, and neither can we. The subscription is the whole business model.
One price. Connections are the only thing that costs money.
Free (student-sized) · Manual $2/mo (no bank feed) · Linked 4 $6/mo · Family $12/mo · Team $20/mo · everything unlimited except bank connections · prices in USD
Built for agents first.
Hand your agent a key and get out of the way.