microbooks.ai

Start here · MicroBooks AI

A clear path from first connection to trusted books.

MicroBooks is an agent-first bookkeeping system. Connect an agent, let it orient itself, prepare work for review, and make every final decision observable.

Get started Browse capabilities

Designed for careful automation: inspect first, write deliberately, and keep an audit trail.

88
Accounting capabilities
50
Write operations, each idempotent
15
Require explicit approval
0.2.0
API version

Connect your client

Point your MCP client at MicroBooks.

There is nothing to install. Your client connects to our hosted server, where the company ledger and its audit trail live.

Hosted · MicroBooks production

Add MicroBooks to your client

Use the server URL below and the bearer token provided by your MicroBooks administrator. The initial remote connection requires an administrator-scoped token.

Server URL · https://microbooks.claudiosanchez.net/mcp
Auth · Bearer token from your MicroBooks administrator

Your first useful session

Move from orientation to an accountable decision.

01

Connect

Establish the MCP session and confirm which company and scopes are available.

02

Orient

Call get_agent_experience_guide to learn the supported workflow and guardrails.

03

Prepare

Inspect balances and source records, then create a draft or simulation before changing the books.

04

Decide

Approve and commit intentionally, then verify the resulting event and audit record.

MicroBooks keeps reads separate from writes, requires idempotency for mutations, and records approvals and audit events. Treat the hosted bearer token like a production credential; never paste it into shared prompts or configuration.

Recording a batch of activity

More than a couple of transactions? Use the canonical workbook.

One spreadsheet, one upload, one clean batch of journal-entry drafts — instead of ad-hoc entries invented one at a time. Use this flow first, before create_transaction_draft or create_journal_entry_draft, whenever more than one entry needs to be recorded.

MCP · four tools, in order

get_canonical_workbook_guide → validate → plan → apply

Call get_canonical_workbook_guide for the tab schemas and rules, fill in the workbook, then validate_canonical_workbook and plan_canonical_workbook_ingestion to see exactly what will happen before anything writes. apply_canonical_workbook_ingestion creates the journal-entry drafts and uploads the workbook plus its evidence — it never posts directly; a human still approves and commits each draft.

Template · GET /v1/canonical-workbook-template
MCP tools · get_canonical_workbook_guide, validate_canonical_workbook, plan_canonical_workbook_ingestion, apply_canonical_workbook_ingestion

Capability reference

Everything MicroBooks can do today.

This list is generated from the same catalog the API serves at /v1/capabilities. Anything absent from this list is not built yet.

READ does not change the books WRITE changes the books, idempotency key required APPROVAL needs a recorded human decision first

Company setup

Stand up a company ledger, its chart of accounts, fiscal year, and opening balances.

setupCompany Atomically create a company ledger with initial setup metadata and chart-of-accounts accounts. WRITE
getCompanyProfile Fetch first-class company legal/profile metadata for a ledger. READ
updateCompanyProfile Create or update company legal/profile metadata for setup. WRITE
getFiscalYearSettings Fetch fiscal year and accounting method settings. READ
updateFiscalYearSettings Create or update fiscal year and accounting method settings. WRITE
getCompanySetupStatus Inspect company setup readiness across profile, fiscal year, chart of accounts, and opening balances. READ
registerAccount Register an account under a ledger with account typing and posting permissions. WRITE
createOpeningBalanceSetup Create an approval-required journal-entry draft for opening balances using an equity offset account. WRITE APPROVAL
getOpeningBalanceSetup Fetch an opening-balance setup projection and the backing journal-entry draft. READ

Ledger and posting

Strict double-entry posting, explicit reversals, and balances computed from posted entries.

listActivityEvents List the privacy-safe organization session and work activity log for an administrator. READ
getCanonicalWorkbookTemplate Download the blank canonical-workbook .xlsx template: every tab, exact headers, and one worked EXAMPLE row per tab. READ
listLedgers List ledgers visible to the calling principal. READ
createLedger Create a new ledger aggregate. WRITE
getLedger Fetch a ledger projection including accounts and posted entries. READ
archiveLedger Archive a company: read-only forever after, no data destroyed. Admin-only, requires a reason and confirmArchive: true, refused while unresolved drafts exist. WRITE
unarchiveLedger Unarchive a company, restoring writes. Admin-only, requires a reason; the safeguard of last resort for a mistaken archive. WRITE
getOwners Fetch the current ownership snapshot for a ledger: a compatibility projection of the effective-dated ownership registry. READ
replaceOwners Fully replace or clear the current ownership snapshot for a ledger: a compatibility write over the legacy flat projection, not the effective-dated ownership registry. WRITE
getOwnershipStructure Fetch the effective-dated ownership structure for a ledger, current or as of a date. READ
listOwnershipRevisions List the append-only ownership revision history for a ledger. READ
recordOwnershipRevision Append an effective-dated, evidence-backed ownership revision; history is never rewritten. WRITE
getOwnerCapitalConfiguration Fetch the owner capital subledger account designations and readiness for a ledger. READ
saveOwnerCapitalConfiguration Create or update owner capital subledger account designations and opening baselines for a ledger. WRITE
getOwnerCapitalStatement Fetch an individual owner capital statement for a date range. READ
getOwnerCapitalReconciliation Reconcile total owner capital to designated equity accounts plus the current-year net income bridge. READ
prepareOwnerCapitalAdoption Prepare adopting an existing ledger into owner capital tracking without selecting a split. READ
executeOwnerCapitalAdoption Create owner capital accounts and post an approved baseline using an explicit caller-supplied split. WRITE APPROVAL
createOwnershipSetupDraft Create (or resume) a tenant-scoped guided ownership setup draft; no ledger exists until it is finalized. WRITE
getOwnershipSetupDraft Fetch an ownership setup draft, including its staged evidence file metadata. READ
listOwnershipSetupDrafts List ownership setup drafts for the calling tenant. READ
updateOwnershipSetupDraft Merge step data (company, owners, evidence note, books) into an ownership setup draft, or mark it complex. WRITE
stageOwnershipSetupEvidence Stage one supporting file (hashed, no analysis) against a setup draft before any ledger exists. WRITE
removeStagedOwnershipSetupEvidence Remove a staged evidence file from a setup draft before finalization. WRITE
finalizeOwnershipSetup Idempotently create the company ledger, ownership revision, evidence references, and owner capital configuration from a complete, attested setup draft. WRITE
renameAccount Rename an account's display name without changing its ID, account number, or type. WRITE
postJournalEntry Post a balanced journal entry into a ledger with required idempotency and replay-safe retries. WRITE
reverseJournalEntry Post a reversal entry that reverses a previously posted journal entry with required idempotency and replay-safe retries. WRITE
annotateJournalEntry Attach or update an append-only plain-language narrative on a posted journal entry without changing its accounting. WRITE
classifyJournalEntry Record what a posted journal entry is (currently fiscal_year_close) so reporting excludes it; a classification is permanent and can never be changed. WRITE
uploadEvidenceFile Upload one verified source file to private evidence storage and create a linked evidence reference. WRITE
listEvidenceReferences List ledger evidence references, optionally filtered by initial linked entity. READ
updateEvidenceReference Edit the optional description on supporting evidence. WRITE
invalidateEvidenceReference Retire active non-draft evidence as wrong while retaining its history. WRITE
assertEvidenceReference Record a user assertion about an ownership evidence document. WRITE
deleteDraftEvidenceFile Delete a supporting file while its journal entry is still a draft. WRITE APPROVAL
downloadEvidenceFile Retrieve a private evidence file as an authenticated attachment. READ
getAccountActivity List committed journal-line activity by account/date range. READ
getFinancialIntelligenceContext Return a compact, versioned, read-only financial snapshot for the authenticated human principal selected ledger. READ
importBankCsvTransactions Parse bank CSV rows, classify them with approved categorization-rule knowledge, and return a per-line import proposal for human review. WRITE APPROVAL
createBankStatementImport Retain one CSV, OFX, QFX, or QBO bank statement and create a resumable import batch without creating accounting entries. WRITE
getBankStatementImport Resume a retained bank statement import from its server-authoritative batch state. READ
saveBankStatementImportMapping Save confirmed Date, Description, and Amount mappings for a retained bank statement import. WRITE
reviewBankStatementImport Show deterministic category and duplicate-review evidence for a mapped bank statement import. READ
saveBankStatementDuplicateDecisions Record explicit human Keep both or Remove one decisions for visible duplicate evidence. WRITE APPROVAL
createBankStatementImportDrafts Create approval-required drafts from selected, resolved bank statement rows. Nothing is posted. WRITE APPROVAL
createBankCsvImportDrafts Create approval-required journal drafts from human-reviewed imported bank transactions; nothing posts without explicit approval. WRITE APPROVAL
getTrialBalance Compute the current trial balance for a ledger. READ
mintAgentToken Create a delegated agent access token for the calling organization and return its secret exactly once. WRITE
listAgentTokens List the organization agent access tokens without ever returning their secrets. READ
revokeAgentToken Revoke an agent access token immediately so the connected agent loses access. WRITE
mintUserApiToken Create a user-level API token that acts as its user across every organization the user belongs to, returning its secret exactly once. WRITE
listUserApiTokens List a user's API tokens without ever returning their secrets. READ
revokeUserApiToken Revoke a user API token immediately so it loses access to every organization. WRITE
listOrganizationMemberships List the Clerk organization memberships for the calling administrator organization as a safe normalized projection. READ
inviteOrganizationMember Invite a member by email into the calling administrator Clerk organization with a supported MicroBooks role. WRITE
updateOrganizationMemberRole Change a member role inside the calling administrator Clerk organization; administrators cannot demote themselves. WRITE
removeOrganizationMember Remove a member from the calling administrator Clerk organization; administrators cannot remove themselves. WRITE

Drafts and approvals

Simulate, draft, approve or reject, then commit exactly once.

listJournalEntryDrafts List draft journal mutations and their lifecycle status for a ledger. READ
simulateJournalEntryDraft Run a non-mutating preflight check for a draftable journal mutation and return machine-readable policy output. READ
getJournalEntryDraft Fetch a single journal draft mutation with policy facts and lifecycle status. READ
createJournalEntryDraft Save a draft journal mutation, validate it, optionally queue it for approval, and require idempotent retries. WRITE APPROVAL
approveJournalEntryDraft Approve a pending journal draft with traceable decision metadata and idempotent replay guarantees. WRITE APPROVAL
rejectJournalEntryDraft Reject a pending journal draft with machine-readable reason metadata and idempotent replay guarantees. WRITE APPROVAL
commitJournalEntryDraft Commit an approved journal draft exactly once, return the posted journal entry linkage, and require idempotent retries. WRITE APPROVAL
createTransactionDraft Create an approval-required operating transaction draft. WRITE APPROVAL
getTransactionDraft Fetch an operating transaction draft projection. READ

Close and reporting

Month close, fiscal-year close, and the reports that come out of them.

getPeriodCloseStatus Inspect month close readiness/status. READ
closePeriod Close a monthly accounting period. WRITE APPROVAL
reopenPeriod Reopen a monthly accounting period. WRITE APPROVAL
getFiscalYearCloseStatus Inspect fiscal-year close readiness/status. READ
closeFiscalYear Create/complete fiscal-year close actions. WRITE APPROVAL
getReports Produce P&L, balance sheet, and year-end package reports with evidence index support. READ

Audit and events

Append-only audit records, a replayable event feed, and signed webhook deliveries.

listAuditRecords List append-only audit records for high-risk journal draft and journal entry mutations. READ
listDomainEvents List correlation-friendly domain events using a replay cursor for downstream automations. READ
registerWebhookSubscription Register an outbound webhook subscription and create signed delivery-attempt records for matching event feed entries. WRITE
listWebhookSubscriptions List active webhook subscriptions registered for a ledger. READ
listWebhookDeliveryAttempts List signed webhook delivery-attempt records with event cursor correlation and response summaries. READ
recordWebhookDeliveryAttemptOutcome Record webhook delivery success or failure response summaries and optionally schedule a replay-safe retry attempt. WRITE

Interfaces

The same ledger workflows are available through REST or MCP.

/v1/* A versioned REST surface behind bearer tokens and per-principal scopes. Ask it what it can do and it answers with the live catalog, including which capabilities your token may actually use.
/mcp The same workflows exposed as Model Context Protocol tools over MicroBooks’ hosted Streamable HTTP endpoint.

Not built yet

Stated plainly so nobody plans around something that does not exist.

bank connectionsNo bank sign-in, no statement feeds, no automatic import. Source records arrive as files you provide.
tax filingNo returns, no filings, and no tax advice of any kind.
accounting UIThere is no bookkeeping interface. The books are driven by API or MCP.